Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/6: Рейтинг темы: голосов - 6, средняя оценка - 5.00
3 / 3 / 0
Регистрация: 20.12.2009
Сообщений: 60

Целочисленная квадратная матрица

16.01.2010, 23:51. Показов 1370. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Дана целочисленная квадратная матрица, упорядочить (переставить) столбцы матрицы по невозрастанию значений наибольших элементов столбца.

Добавлено через 1 час 22 минуты
Помогите ПЛИЗ!!!

Добавлено через 6 часов 28 минут
Помогите пожалуйста курсовую надо славать!!! Плиз!!!
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
16.01.2010, 23:51
Ответы с готовыми решениями:

Целочисленная квадратная матрица
Даны: натуральное число m, челые числа а1, ... , аm и челочисленная квадратная матрица порядка m. Строку с номером i матрицы назовём...

квадратная целочисленная матрица
Добрый день, товарищи! Очень нуждаюсь в вашей помощи... Задание таково: Квадратная целочисленная матрица. Обязательны функции-члены...

целочисленная квадратная матрица
задача-дана целочисленная квадратная матрица.определить: 1)сумму чётных элементов каждого столбца; 2)поменять местами элементы строки К...

7
 Аватар для vet
183 / 184 / 55
Регистрация: 08.04.2009
Сообщений: 1,309
17.01.2010, 04:53
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
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#define m 6 //Êîëè÷åñòâî ñòðîê
#define n 6 //Êîëè÷åñòâî ñòîëáöîâ
 
int main() {
        int M[m][n];
        int tmp[n];
        int t,i,j,k, max;
 
        rand();            //Ñîçäàåì ïðîèçâîëüíûé ìàññèâ ðàçìåðíîñòè m*n
        for(i=0;i<m;i++) {
                for (j=0;j<n;j++) {
                        M[i][j]=rand()/100;
                }
        }
 
        printf("Initial matrix:\n\n");  //Âûâîäèì èñõîäíûé ìàññèâ íà ýêðàí
        for (i=0;i<m;i++) {
                for (j=0;j<n;j++)
                        printf("%d\t", M[i][j]);
                printf("\n");
        }
 
                                /*Ñîçäàåì äîïîëíèòåëüíûé ìàññèâ tmp,
                                â êîòîðûé çàíîñèì ìàêñèìàëüíûå çíà÷åíèÿ
                                êàæäîãî ñòîëáöà*/
        for(j=0;j<n;j++) {
                for(i=1, max=M[0][j];i<m;i++) {
                        if (max<M[i][j]) {
                                max=M[i][j];
                        }
                }
                tmp[j]=max;
        }
 
 
                                /* êà÷åñòâå íàãëÿäíîñòè, âûâîäèì
                                èñõîäíûé ìàññèâ ìàêñèìàëüíûõ çíà÷åíèé*/
        printf("Max numbers:\n");
        for (j=0;j<n;j++) {
                printf("%d\t", tmp[j]);
        }
 
                                /*Ñðàâíèâàåì ìàêñèìàëüíûå çíà÷åíèÿ ñòîëáöîâ
                                è ñîðòèðóåì èõ â ïîðÿäêå íåâîçðàñòàíèÿ ñîîò-íî
                                ïåðåìåùàÿ ñòîëáöû*/
        for (int i=0;i<n-1;i++) {
                for (int j=i+1;j<n;j++) {
                        if (tmp[i]<tmp[j]) {
                                t=tmp[i];       //Ñîðòèðîâêà ìàêñèìàëüíûõ çíà÷åíèé
                                tmp[i]=tmp[j];
                                tmp[j]=t;
                                for (k=0;k<m;k++) {     //Ñîîò-íàÿ ñîðòèðîâêà
                                        t=M[k][i];      //ñòîëáöîâ
                                        M[k][i]=M[k][j];
                                        M[k][j]=t;
                                }
                        }
                }
        }
 
 
        printf("\n\nResult matrix:\n\n");//Âûâîäèì ïîëó÷èâøèéñÿ ìàññèâ íà ýêðàí
        for (i=0;i<m;i++) {
                for (j=0;j<n;j++)
                        printf("%d\t", M[i][j]);
                printf("\n");
        }
        printf("Max numbers:\n");       //À òàê æå ìàññèâ ìàêñèìàëüíûõ çíà÷åíèé,
        for (j=0;j<n;j++) {             //ïîëó÷åííûé ïîñëå ñîðòèðîâêè
                printf("%d\t", tmp[j]);
        }
 
 
        getch();                       
 
        }
1
17.01.2010, 05:43

Не по теме:

XPP, вопрос не по теме: в каком таком ВУЗ'е вот ЭТО называют курсовой работой?

0
17.01.2010, 05:45

Не по теме:

CyBOSSeR, меня если честно тоже заинтересовал этот вопрос,когда прогу делал =))
Обычно эт просто текущие лабы и не из особо сложных

1
3 / 3 / 0
Регистрация: 20.12.2009
Сообщений: 60
17.01.2010, 13:01  [ТС]
В первую очередь задание делаем, потом описание приминение, описание проги
что дали то и делаем)

Добавлено через 9 минут
дана целочисленная квадратная матрица. Определить:
1) количество отрицательных элементов массива
2) найти максимальный из элементов, расположенных выше главной диагонали
3) упорядочить (переставить) столбцы матрицы по невозростанию значений наибольших элементов столбцов

В задании содержатся 3 задачи, необходимо создать меню для выбора решения одной из задач. Каждая задача - отдельная функция.

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
85
86
87
88
89
90
91
92
93
94
95
96
97
#include<stdio.h>
#include<conio.h>
#include<math.h>
#define nrow 5
#define ncol 5
main()
{ int a[nrow][ncol],b,p,z,max,max1,max2,M,tmp[n],t,m,temp,col,i,j,i1;
int zam,t,zadanie;
printf("\nVvedite kol-vo stolbcov i strok \n");
scanf("%d", &col);
printf("\nVvedite sami elementi:\n" )   ;
for(i=0;i<col;i++)
for(j=0; j<col; j++)
scanf("%d", &a[i][j]);
{
  printf("\nVvedite nomer zadachi(0 dlya exit): ");
  scanf("%d", &zadanie);
  switch(zadanie)
  {
    case 1:
    {
    for(i=0;i<col;i++)
      for(j=0;j<col;j++)
      {
        b=(a[i][j])>0;
          if (b==0)
         n=n+1;
          }
         printf("\nkol-vo elementov menshe 0: %d\n",n);
        n=col;
       break;
        }
 case 2:
  for(i=0;i<col;i++)
  {
          for(j=0;j<col;j++)
         printf("%d\t",a[i][j]);
    }
  max=a[0][1];
  for(i=0;i<col-1;i++)
     for(j=1+i;j<col;j++)
                 if(max<a[i][j])
                         max=a[i][j];
printf("max element vyshe glavnoi diagonali:\n" );
printf("%d\n", max);
break;
 
 
 case 3:
     printf("Initial matrix:\n\n");
        for (i=0;i<m;i++) {
                for (j=0;j<n;j++)
                        printf("%d\t", a[i][j]);
                printf("\n");
        }
 
 
        for(j=0;j<n;j++) {
                for(i=1, max=a[0][j];i<m;i++) {
                        if (max<a[i][j]) {
                                max=a[i][j];
                        }
                }
                tmp[j]=max;
        }
 
 
 
        for (i=0;i<n-1;i++)
         {
                for (j=i+1;j<n;j++) {
                        if (tmp[i]<tmp[j]) {
                                t=tmp[i];
                                tmp[i]=tmp[j];
                                tmp[j]=t;
                                for (k=0;k<m;k++) {
                                        t=a[k][i];
                                        a[k][i]=a[k][j];
                                        a[k][j]=t;
                                }
                        }                   }}
                }
        }
 
 
        printf("\n\nResult matrix:\n\n");
        for (i=0;i<m;i++) {
                for (j=0;j<n;j++)
                        printf("%d\t", a[i][j]);
                printf("\n");
        }
 
 
while(zadanie!=0) ;
getch();
return 0;
}
исправте ошибки пожалуйста

Добавлено через 2 минуты
задание полностью:
дана целочисленная квадратная матрица. Определить:
1) количество отрицательных элементов массива
2) найти максимальный из элементов, расположенных выше главной диагонали
3) упорядочить (переставить) столбцы матрицы по невозростанию значений наибольших элементов столбцов

В задании содержатся 3 задачи, необходимо создать меню для выбора решения одной из задач. Каждая задача - отдельная функция.
0
 Аватар для vet
183 / 184 / 55
Регистрация: 08.04.2009
Сообщений: 1,309
17.01.2010, 13:17
Цитата Сообщение от XPP Посмотреть сообщение
исправте ошибки пожалуйста
В самом начале переопредилил nrow за m
ncol за n, а в большенстве случаев дальше по тексту не исправил

Цитата Сообщение от XPP Посмотреть сообщение
int a[nrow][ncol],b,p,z,max,max1,max2,M,tmp[n],t,m,temp,col,i,j,i1;
int zam,t,zadanie;
m не надо доопределять дальше она не используется т.к. заменяется на nrow
и int zam,t,zadanie; надо t убрать она у тебя строчкой выше уже есть и tmp[ncol]

Добавлено через 1 минуту
Цитата Сообщение от vet Посмотреть сообщение
надо t убрать она
а t нада заменить на k кот у тебя вообще не объявлена, а используется в цикле
1
3 / 3 / 0
Регистрация: 20.12.2009
Сообщений: 60
17.01.2010, 23:44  [ТС]
вот заработал, но в ответ еще какие то числа ( типа 22000 там , такие огромные) откудо их берёт?

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
85
86
87
88
89
90
91
92
93
94
95
96
97
#include<stdio.h>
#include<conio.h>
#include<math.h>
#define nrow 5
#define ncol 5
main()
{ int a[nrow][ncol],b,p,z,max,M,tmp[ncol],t,n,m,temp,col,i,j,i1;
int zam,k,zadanie;
printf("\nVvedite kol-vo stolbcov i strok \n");
scanf("%d", &col);
printf("\nVvedite sami elementi:\n" )   ;
for(i=0;i<col;i++)
for(j=0; j<col; j++)
scanf("%d", &a[i][j]);
{
  printf("\nVvedite nomer zadachi(0 dlya exit): ");
  scanf("%d", &zadanie);
  switch(zadanie)
  {
    case 1:
    {
    for(i=0;i<col;i++)
      for(j=0;j<col;j++)
      {
        b=(a[i][j])>0;
          if (b==0)
         n=n+1;
          }
         printf("\nkol-vo elementov menshe 0: %d\n",n);
        n=col;
       break;
        }
 case 2:
  for(i=0;i<col;i++)
  {
          for(j=0;j<col;j++)
         printf("%d\t",a[i][j]);
    }
  max=a[0][1];
  for(i=0;i<col-1;i++)
     for(j=1+i;j<col;j++)
                 if(max<a[i][j])
                         max=a[i][j];
printf("max element vyshe glavnoi diagonali:\n" );
printf("%d\n", max);
break;
 
 
 case 3:
     printf("Initial matrix:\n\n");
        for (i=0;i<nrow;i++) {
                for (j=0;j<ncol;j++)
                        printf("%d\t", a[i][j]);
                printf("\n");
        }
 
 
        for(j=0;j<ncol;j++) {
                for(i=1, max=a[0][j];i<nrow;i++) {
                        if (max<a[i][j]) {
                                max=a[i][j];
                        }
                }
                tmp[j]=max;
        }
 
 
 
        for (i=0;i<ncol-1;i++)
         {
                for (j=i+1;j<ncol;j++) {
                        if (tmp[i]<tmp[j]) {
                                t=tmp[i];
                                tmp[i]=tmp[j];
                                tmp[j]=t;
                                for (k=0;k<nrow;k++) {
                                        t=a[k][i];
                                        a[k][i]=a[k][j];
                                        a[k][j]=t;
                                }
                        }                   }}
                }
        }
 
 
        printf("\n\nResult matrix:\n\n");
        for (i=0;i<nrow;i++) {
                for (j=0;j<ncol;j++)
                        printf("%d\t", a[i][j]);
                printf("\n");
        }
 
 
while(zadanie!=0) ;
getch();
return 0;
}
Добавлено через 5 часов 1 минуту
может где то в цикле че нибудь убрать, подскажите пожалуйста!

Добавлено через 3 часа 47 минут


Добавлено через 21 минуту
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
85
86
87
88
89
90
91
92
93
94
95
96
97
#include<stdio.h>
#include<conio.h>
#include<math.h>
#define nrow 5
#define ncol 5
main()
{ int a[nrow][ncol],b,p,z,max,M,tmp[ncol],t,n,m,temp,col,i,j,i1;
int zam,k,zadanie;
printf("\nVvedite kol-vo stolbcov i strok \n");
scanf("%d", &col);
printf("\nVvedite sami elementi:\n" )   ;
for(i=0;i<col;i++)
for(j=0; j<col; j++)
scanf("%d", &a[i][j]);
{
  printf("\nVvedite nomer zadachi(0 dlya exit): ");
  scanf("%d", &zadanie);
  switch(zadanie)
  {
    case 1:
    {
    for(i=0;i<col;i++)
      for(j=0;j<col;j++)
      {
        b=(a[i][j])>0;
          if (b==0)
         n=n+1;
          }
         printf("\nkol-vo elementov menshe 0: %d\n",n);
        n=col;
       break;
        }
 case 2:
  for(i=0;i<col;i++)
  {
          for(j=0;j<col;j++)
         printf("%d\t",a[i][j]);
    }
  max=a[0][1];
  for(i=0;i<col-1;i++)
     for(j=1+i;j<col;j++)
                 if(max<a[i][j])
                         max=a[i][j];
printf("max element vyshe glavnoi diagonali:\n" );
printf("%d\n", max);
break;
 
 
 case 3:
     printf("Initial matrix:\n\n");
        for (i=0;i<nrow;i++) {
                for (j=0;j<ncol;j++)
                        printf("%d\t", a[i][j]);
                printf("\n");
        }
 
 
        for(j=0;j<ncol;j++) {
                for(i=1, max=a[0][j];i<nrow;i++) {
                        if (max<a[i][j]) {
                                max=a[i][j];
                        }
                }
                tmp[j]=max;
        }
 
 
 
        for (i=0;i<ncol-1;i++)
         {
                for (j=i+1;j<ncol;j++) {
                        if (tmp[i]<tmp[j]) {
                                t=tmp[i];
                                tmp[i]=tmp[j];
                                tmp[j]=t;
                                for (k=0;k<nrow;k++) {
                                        t=a[k][i];
                                        a[k][i]=a[k][j];
                                        a[k][j]=t;
                                }
                        }                   }}
                }
        }
 
 
        printf("\n\nResult matrix:\n\n");
        for (i=0;i<nrow;i++) {
                for (j=0;j<ncol;j++)
                        printf("%d\t", a[i][j]);
                printf("\n");
        }
 
 
while(zadanie!=0) ;
getch();
return 0;
}
в 3 задание какие то огромные числа выводит, че исправить?
0
Эксперт С++
 Аватар для valeriikozlov
4728 / 2549 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
18.01.2010, 06:12
Цитата Сообщение от XPP Посмотреть сообщение
в 3 задание какие то огромные числа выводит, че исправить?
Только про огромные числа объясняю.
это у нас задано:
Цитата Сообщение от XPP Посмотреть сообщение
#define nrow 5
#define ncol 5
значение col мы сами вводим
Цитата Сообщение от XPP Посмотреть сообщение
printf("\nVvedite kol-vo stolbcov i strok \n");
scanf("%d", &col);
Заполняем матрицу значениями (учитывая что у нас размерность матрицы равна col):
Цитата Сообщение от XPP Посмотреть сообщение
for(i=0;i<col;i++)
for(j=0; j<col; j++)
scanf("%d", &a[i][j]);
Теперь если мы выбираем пункт 3, то получаем:
Цитата Сообщение от XPP Посмотреть сообщение
for (i=0;i<nrow;i++) {
for (j=0;j<ncol;j++)
printf("%d\t", a[i][j]);
А вывод элементов осуществляем выходя за границу заполненых значений массива (здесь почему то используем nrow и ncol).
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
18.01.2010, 06:12
Помогаю со студенческими работами здесь

Целочисленная квадратная матрица
Дана целочисленная квадратная матрица размерностью NxN. Определить: 1) первую строку, в которой имеется отрицательный элемент, и...

целочисленная квадратная матрица
Дана целочисленная квадратная матрица. Определить: - Произведение нечётных элементов каждого столбца; - Преобразовать исходную исходную...

целочисленная квадратная матрица
дана целочисленная квадратная матрица определить: максимум ср.сумм модулей элементов которые находятся: 1)на побочной диагонали ...

Целочисленная квадратная матрица
Дана целочисленная квадратная матрица. Определить колличество строк, содержащих хотя бы один нулевой элемент.

Целочисленная квадратная матрица
Дана целочисленная квадратная матрица {aij} (1≤ i≤n, 1≤ j≤n). Написать программу, вычисляющую сумму компонентов матрицы расположенных ниже...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru