Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
agent008
1 / 1 / 0
Регистрация: 15.03.2014
Сообщений: 118
#1

Надо переписать код через оператор new - C++

09.04.2014, 13:50. Просмотров 223. Ответов 1
Метки нет (Все метки)

Задание:
Найти минимальный элемент матрицы и заменить им элементы которые находятся ниже главной диагонали.

Надо переписать код через оператор new

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
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
int main()
{
 
const int n=5;
int matrix[n][n];
int min;
cout << "Matrix: " << endl;
for(int i = 0; i < n; ++i)
{
for(int j = 0; j < n; ++j)
{
matrix[i][j] = 1 + rand() % 9;
cout << matrix[i][j] << " ";
min = (i == 0 && j == 0 ? matrix[i][j] : matrix[i][j] < min ? matrix[i][j] : min);
}
cout << endl;
}
cout<<"\n"<<"---------------------------"<<endl;
for(int i = 0; i < n; ++i)
for(int j = 0; j < i; ++j)
matrix[i][j] = min;
cout << "Posle: " << endl;
for(int i = 0; i < n; ++i)
{
for(int j = 0; j < n; ++j)
cout << matrix[i][j] << " ";
cout << endl;
}
cout<<"---------------------------"<<endl;
cout <<"Minimal element:"<< min <<"";
cout<<"\n"<<"---------------------------"<<endl;
}
Пример:

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
#include <stdio.h>
#include <stdlib.h>
#include <iostream>
 
#define M 3
#define N 3
 
template <class T> void outvec(int n, T* vec)
{
    for(int i = 0; i < n; i++)
        std::cout << vec[i] << ' ';
    printf("\n");
}
 
int main()
{
    int A[][3] =
    {
        {1, 2, 3},
        {4, 5, 6},
        {7, 8, 9}
    };
    
    int B[][3] =
    {
        {-1, 0, 4},
        {0, 3, 0},
        {2, 0, 1}
    };
    
    int C[M][N] = {0};
    float **r;
    int i, j;
    float **t = new float* [3];
    for (i = 0; i < 3; i++)
    {
        t[i] = new float [3];
    }
 
    for (i=0; i<3; i++)
        for (j=0; j<3; j++)
            *(*(t+i)+j)=A[i][j];
 
    r = new float *[3];
    for (i=0; i<3; i++)
    {
        r[i]=new float [3];
    }
 
    for (i=0; i<3; i++)
        for (j=0; j<3; j++)
            r[i][j]=B[i][j];
 
    printf("Matrix A:\n");
    for(i = 0; i < M; i++)
        outvec(N, *(t + i));
 
    printf("Matrix B:\n");
    for(i = 0; i < M; i++)
        outvec(N, *(r + i));
    //C = A + B
    for(i = 0; i < M; i++)
        for(j = 0; j < N; j++)
            C[i][j] = *(*(t+i)+j) + *(*(r+i)+j);
    
    printf("Matrix C = A + B:\n");
    for(i = 0; i < M; i++)
        outvec(N, C[i]);
}
Добавлено через 19 часов 23 минуты
вверх
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.04.2014, 13:50
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Надо переписать код через оператор new (C++):

Надо это программу переписать через do while - C++
Надо это программу переписать через do while: #include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;math.h&gt; using namespace std; ...

Почему обращение к методам осуществляется через оператор прямого доступа, а не через оператор указателей->? - C++
#include &lt;iostream&gt; using namespace std; class random { public: void Set(int b){a=b;} int Get(){return a;} private: ...

Написать программу, содержащую оператор оператор for для счета от 2 до 5 через 1 - C++
В С++ я ноль, помогите пожалуйста написать прогу Написать программу, содержащую оператор оператор for для счета от 2 до 5 через 1 ...

Надо программу с бэйсика на С++ переписать - C++
В универе задали переписать программу с бэйсика на С++, а у меня с этим ну совсем плохо((( Если ктото может- сделайте пожалуйста, а то уже...

Переписать программу, используя другой оператор - C++
Здравствуйте. Помогите, пожалуйста, переписать программу, не используя &quot;do while&quot;, а используя &quot;for&quot;. Вот текст...

Решите програмку С++ на оператор процедуры/функции)))заранее благодарю)))оч надо - C++
Дано множество точек на плоскости соими координатами (не более 100).найти точку этого множества, ближайшую к заданной точки А(х,у).

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
kiborgdelto
71 / 73 / 27
Регистрация: 23.03.2011
Сообщений: 141
09.04.2014, 14:13 #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
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
int main()
{
 
int n=5;
int **matrix= new int *[n];
for(int i = 0; i < n; ++i)
    matrix[i]=new int[n];
 
int min;
cout << "Matrix: " << endl;
for(int i = 0; i < n; ++i)
{
for(int j = 0; j < n; ++j)
{
matrix[i][j] = 1 + rand() % 9;
cout << matrix[i][j] << " ";
min = (i == 0 && j == 0 ? matrix[i][j] : matrix[i][j] < min ? matrix[i][j] : min);
}
cout << endl;
}
cout<<"\n"<<"---------------------------"<<endl;
for(int i = 0; i < n; ++i)
for(int j = 0; j < i; ++j)
matrix[i][j] = min;
cout << "Posle: " << endl;
for(int i = 0; i < n; ++i)
{
for(int j = 0; j < n; ++j)
cout << matrix[i][j] << " ";
cout << endl;
}
cout<<"---------------------------"<<endl;
cout <<"Minimal element:"<< min <<"";
cout<<"\n"<<"---------------------------"<<endl;
system("pause");
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.04.2014, 14:13
Привет! Вот еще темы с ответами:

Переписать программу так, чтобы для вывода на экран каждого операнда использовался отдельный оператор - C++
Читаю учебник C++, не могу разобраться с задачей, прошу помощи. Код: #include &lt;iostream&gt; int main() { std::cout &lt;&lt; &quot;Programma...

Пытаюсь переписать код с циклом for, в код с циклом while, но не совсем получается - C++
Возникло пару вопросов: #include &lt;iostream&gt; using namespace std; int main () { for (int i = 0; i&lt;=10; i++) cout &lt;&lt;...

Переписать код с Си - C++
FILE *f; char s = {0}; f=fopen(&quot;filename.txt&quot;,&quot;rt&quot;); char buff; int count; do ...

Переписать код - C++
нужна помощь в изменении когда. данный код #include &lt;iostream&gt; using namespace std; double Max(double a, double b){ return a &gt; b...


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

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

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