Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Дмитрий1228
0 / 0 / 0
Регистрация: 23.02.2018
Сообщений: 26
1

Что означает каждая строчка в коде

05.06.2018, 16:06. Просмотров 480. Ответов 1
Метки нет (Все метки)

Создать тип данных для хранения квадратной матрицы размерности 10. Перегрузить операторы «+» и «-» для выполнения соответстующих операций с квадратными матрицами размерности 10 поэлементно.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
#include "stdafx.h"
#include <iostream>
 
struct sqMatrix {
    int size;       //Размерность
    float **data;   //Указатель
};
 
 
void createMatrix (sqMatrix &target, const int &newsize) {
    target.size = newsize;
    target.data = new float*[newsize];
    for (int i=0; i<newsize; i++) {
        target.data[i] = new float[newsize];
        
        for (int j=0; j<newsize; j++) {
            target.data[i][j] = rand()%10;
        }
    }
    return;
}
 
sqMatrix operator+(const sqMatrix &m1, const sqMatrix &m2) {
    
    sqMatrix result;
    createMatrix (result, m1.size);
    for (int i=0; i<result.size; i++) {
        for (int j=0; j<result.size; j++) {
            result.data[i][j] = m1.data[i][j] + m2.data[i][j];
        }
    }
    return result;
}
 
sqMatrix operator-(const sqMatrix &m1, const sqMatrix &m2) {
  
    sqMatrix result;
    createMatrix (result, m1.size);
    for (int i=0; i<result.size; i++) {
        for (int j=0; j<result.size; j++) {
            result.data[i][j] = m1.data[i][j] - m2.data[i][j];
        }
    }
    return result;
}
 
 
 
void print (const sqMatrix &target) {
    for (int i=0; i<target.size; i++) {
        for (int j=0; j<target.size; j++) {
            std::cout<<target.data[i][j]<<"\t";
        }
        std::cout<<"\n";
    }
    return;
}
 
void main()
{
    const int msize = 8;
    sqMatrix foo, bar, qux;
    createMatrix (foo, msize);
    createMatrix (bar, msize);
    qux = foo + bar;
    
    std::cout<<"Matrix foo:\n\n";
    print(foo);
    std::cout<<"\n\nMatrix bar:\n\n";
    print(bar);
    std::cout<<"\n\nMatrix qux:\n\n";
    print(qux);
    system ("pause");
    //Освободим память
    for (int i=0; i<msize; i++) {
        delete[] foo.data[i];
        delete[] bar.data[i];
        delete[] qux.data[i];
    }
    delete[] foo.data;
    delete[] bar.data;
    delete[] qux.data;
    return;
}
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.06.2018, 16:06
Ответы с готовыми решениями:

Объясните что означает каждая строчка в коде
Создать класс, для хранения стека чисел – списка, организованного по принципу LIFO (последним...

Что означает каждая строчка в коде объясните
Написать функции для вычисления площади и длины окружности на плоскости, заданной координатами...

Чайник C++, что означает каждая строчка
#pragma hdrstop #include &lt;iostream&gt; #include &lt;string&gt; #include &lt;conio.h&gt; #include &lt;stdio.h&gt;...

Пожалуйста объясните Что означает каждая строчка
Что означает каждая строчка, объясните кому не трудно, а то ничего не понятно: 1) char *s = new...

С++ напишите, что делает каждая строчка в этом коде?!
1. Постановка задачи. Написать перегруженные функции и основную программу, которая их...

1
Ivandur
479 / 1089 / 188
Регистрация: 11.08.2016
Сообщений: 1,470
05.06.2018, 19:34 2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
#include "stdafx.h"//подключение файла, который служит для генерации файла предкомпилированных заголовков; в него включено большинство стандартных и используемых в каждом приложении включаемых файлов.
#include <iostream>//подключение стандартного файла потоков ввода-вывода
 
struct sqMatrix {//Начало описания структуры sqMatrix
    int size;       //Размерность
    float **data;   //Указатель
};//Конец описания структуры
 
 
void createMatrix (sqMatrix &target, const int &newsize) {//Заголовок функции createMatrix с параметрами по ссылке target и newsize
    target.size = newsize;//Присвоение значения полю структуры 
    target.data = new float*[newsize];//Выделение памяти под массив массивов
    for (int i=0; i<newsize; i++) {//Цикл "для"
        target.data[i] = new float[newsize];//Выделение памяти под каждый массив
        
        for (int j=0; j<newsize; j++) {//Цикл "для" 
            target.data[i][j] = rand()%10;//Задание данных двумерного массива случайными целыми числами в пределах 0..9
        }//Закрывающая операторная скобка
    }//Закрывающая операторная скобка
    return;//Выходи из процедуры
}//Закрывающая операторная скобка
 
sqMatrix operator+(const sqMatrix &m1, const sqMatrix &m2) {//Перегрузка оператора + для структур sqMatrix
    
    sqMatrix result;//Результат будет
    createMatrix (result, m1.size);//Создание матрицы
    for (int i=0; i<result.size; i++) {//Цикл по строчечкам
        for (int j=0; j<result.size; j++) {//Цикл по столбцам
            result.data[i][j] = m1.data[i][j] + m2.data[i][j];//Элемент новой матрицы равен сумме элементов старых
        }//Закрывающая операторная скобка
    }//Закрывающая операторная скобка
    return result;//Возвращение результата
}//Закрывающая операторная скобка
 
sqMatrix operator-(const sqMatrix &m1, const sqMatrix &m2) {//Перегрузка оператора - для структур sqMatrix
  
    sqMatrix result;//Результат будет
    createMatrix (result, m1.size);//Создание матрицы
    for (int i=0; i<result.size; i++) {//Цикл по строчечкам
        for (int j=0; j<result.size; j++) {//Цикл по столбцам
            result.data[i][j] = m1.data[i][j] - m2.data[i][j];//Элемент новой матрицы равен разности элементов старых
        }//Закрывающая операторная скобка
    }//Закрывающая операторная скобка
    return result;//Возвращение результата
}//Закрывающая операторная скобка
 
 
 
void print (const sqMatrix &target) {//Вывод матрицы на экран
    for (int i=0; i<target.size; i++) {//Цикл по строчечкам
        for (int j=0; j<target.size; j++) {//Цикл по столбцам
            std::cout<<target.data[i][j]<<"\t";//Вывод элементов с табуляцией
        }//Закрывающая операторная скобка
        std::cout<<"\n";//Вывод перевода строки
    }//Закрывающая операторная скобка
    return;//Возвращение результата
}//Закрывающая операторная скобка
 
void main()//Основная программа
{//Открывающая операторная скобка
    const int msize = 8;//целая константа равная 8
    sqMatrix foo, bar, qux;//Переменные типа sqMatrix
    createMatrix (foo, msize);//инициализация матрицы
    createMatrix (bar, msize);//инициализация матрицы
    qux = foo + bar;//сложение матриц
    
    std::cout<<"Matrix foo:\n\n";//Вывод строки
    print(foo);//Вывод матрицы foo
    std::cout<<"\n\nMatrix bar:\n\n";//Вывод строки
    print(bar);//Вывод матрицы bar
    std::cout<<"\n\nMatrix qux:\n\n";//Вывод строки
    print(qux);//Вывод матрицы qux
    system ("pause");
    //Освободим память
    for (int i=0; i<msize; i++) {//Цикл для
        delete[] foo.data[i];//Удаление строчечки
        delete[] bar.data[i];//Удаление строчечки
        delete[] qux.data[i];//Удаление строчечки
    }//Закрывающая операторная скобка
    delete[] foo.data;//Удаление  указателей на строчечки
    delete[] bar.data;//Удаление  указателей на строчечки
    delete[] qux.data;//Удаление  указателей на строчечке
    return;//Выход из программы
}//Закрывающая операторная скобка
0
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.06.2018, 19:34

С++ напишите, что делает каждая строчка в этом коде?!
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; using namespace std; int sum (int a, int m) { ...

Что означает строчка ???
Что озночает строчка double *x = new double; Заранее спасибо

Что означает строчка ???
((i+j)%2==0?-1.0:1.0)); Скажите пожалуйста ,что означает эта строчка в С++?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru