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

двумерный массив.С++ - C++

Восстановить пароль Регистрация
 
m@l@a
0 / 0 / 0
Регистрация: 14.12.2009
Сообщений: 63
04.04.2010, 11:45     двумерный массив.С++ #1
1)дана квадратная матрица И х И.Переставляя её строки и столбцы,добиться того,чтобы найбольший элемент(или один из них)оказался на гл.диагонали


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 <iostream>
 
#include "time.h"
 
int main() 
{
const int N=10;
int i, j, imax, jmax, max, temp, a[N][N];
srand(time(0));
 
for (i = 0 ; i < N; i++)
{
for(j = 0 ; j < N ; j++) 
{
a[i][j]=rand() % 100 ;
cout<<a[i][j];
}
cout << endl ;
}
 
max = a[0][0];
for (i = 0 ; i < N ; i++)
for(j = 0 ; j < N; j++) 
{
if(a[i][j] > max) 
{
max = a[i][j];
imax = i;
jmax = j;
}
}
 
cout << endl << "Max elemet is " << max << endl;
if(imax == jmax) {
cout << "Max element is on the main diagonal !" << endl; 
}
else 
{
for (int n = 0 ; n < N; n++){
temp = a[imax][n] ;
a[imax][n] = a[jmax][n];
a[jmax][n] = temp;
}
cout << "Matrix after edition: " << endl;
for (i = 0 ; i < N ; i++){
for(j = 0 ; j < N ; j++) {
cin>> a[i][j];
}
cout << endl ;
}
}
 
return 0;
}
 
 
ребята,посмотрите,что-то не работает(
 
[size="1"][color="grey"][I]Добавлено через 1 минуту[/I][/color][/size]
2) дана квадратная матрица А ,порядка И.Составить программу,которая находит тип минимального элемента каждого столбца
 
#include <iostream.h>
#include <stdlib.h>
#include <time.h>
void main ()
{
        const int n=10;
        int A[n][n],i,j,min;
        for(i=0;i<n;i++)
                for(j=0;j<n;j++)
                        cin>>A[i][j];
                {
                        for(i=1;i<n;i++)
                                for(j=1;j<n;j++)
                                        min=A[1][j];
                                        if(A[i][j]<min)
                                                min=A[i][j];
                                        cout<<endl;
                }
                                        for(j=0;j<n;j++)
                                                for(i=0;i<n;i++)
                                                        cout<<A[j];
                                                cout<<"\n min="<<min<<endl;
}
тут что-то не так работает(
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
grrrrr
 Аватар для grrrrr
45 / 45 / 7
Регистрация: 21.04.2009
Сообщений: 265
04.04.2010, 11:58     двумерный массив.С++ #2
m@l@a, Привет! Скажи пожалуйста, что такое "порядка И"? Это размер nxn?
m@l@a
0 / 0 / 0
Регистрация: 14.12.2009
Сообщений: 63
04.04.2010, 12:16  [ТС]     двумерный массив.С++ #3
да,это размер
EvilSlipp3r
32 / 32 / 3
Регистрация: 25.03.2010
Сообщений: 45
04.04.2010, 13:42     двумерный массив.С++ #4
1)
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
#include <iostream>
using namespace std; // добавлено
#include "time.h"
#include <stdlib.h>  // добавлено
 
int main() 
{
const int N=5;
int i, j, imax, jmax, max, temp, a[N][N];
srand(time(0));
 
for (i = 0 ; i < N; i++)
{
for(j = 0 ; j < N ; j++) 
{
a[i][j]=rand() % 100 ;
cout<<a[i][j] << "   ";
}
cout << endl ;
}
 
max = a[0][0];
for (i = 0 ; i < N ; i++)
for(j = 0 ; j < N; j++) 
{
if(a[i][j] > max) 
{
max = a[i][j];
imax = i;
jmax = j;
}
}
 
cout << endl << "Max elemet is " << max << endl;
if(imax == jmax) {
cout << "Max element is on the main diagonal !" << endl; 
}
else 
{
for (int n = 0 ; n < N; n++){
temp = a[imax][n] ;
a[imax][n] = a[jmax][n];
a[jmax][n] = temp;
}
cout << "Matrix after edition: " << endl;
for (i = 0 ; i < N ; i++){
for(j = 0 ; j < N ; j++) {
cout<<a[i][j] << "   ";  // ИСПРАВЛЕНО (47 строка оригинала: было cin >> .... )
}
cout << endl ;
}
}
 
return 0;
}
Добавлено через 43 минуты
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
#include <iostream>
using namespace std;
 
int main ()
{
        const int n=3;
        int A[n][n],i,j,min;
        cout << "Enter elements:\n" ;
        
        // вводим матрицу
        for(i=0;i<n;i++)
        for(j=0;j<n;j++)
                        cin>>A[i][j];
        
        // печатаем матрицу
        cout << "Array : \n";
        for(i=0;i<n;i++){
        for(j=0;j<n;j++){
            cout << A[i][j] << "  ";
        }
        cout << endl ;
    }
                
        // ищем минимум в каждом столбце
        for(i=0;i<n;i++){
        min=A[1][i];
                for(j=0;j<n;j++)    {
            if(A[j][i]<min) min=A[j][i];
                }
                cout << "Stolbec - " << i << " , min = " << min << endl;
         }
 
         return 0;       
}
m@l@a
0 / 0 / 0
Регистрация: 14.12.2009
Сообщений: 63
04.04.2010, 17:13  [ТС]     двумерный массив.С++ #5
спасибо огромное
Yandex
Объявления
04.04.2010, 17:13     двумерный массив.С++
Ответ Создать тему
Опции темы

Текущее время: 01:35. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru