Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
0 / 0 / 1
Регистрация: 20.12.2012
Сообщений: 6

Процедуры: определить столбец с наибольшей суммой и заменить на строку с наименьшей суммой элементов

12.01.2013, 09:39. Показов 1158. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет, срочно помогите пожалуйста с программой. Я ее написал (вернее не я), но нужно оформить с процедурами. Срочно

Pascal
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
program lab4_23;
 var a:array[1..100,1..100] of integer;
 m,i,j,jmx,imn,jmn:byte;
 mx,mn,sm,p1,p2,x:integer;
 begin
 write(' Введите размер матрицы m=');
 readln(m);
 writeln;
 begin
 for i:=1 to m do
 for j:=1 to m do
 begin
 write('a[',i,',',j,']=');
 readln(a[i,j]);
 end;
 writeln('Исходная матрица: ');
 for i:=1 to m do
 begin
 for j:=1 to m do
 write(a[i,j]:4);
 writeln;
 end;;
 writeln;
 end;
 writeln;
 mx:=0;
 for i:=1 to m do
 mx:=mx+a[i,1];
 jmx:=1;
 for j:=2 to m do
 begin
 sm:=0;
 for i:=1 to m do
 sm:=sm+a[i,j];
 if sm>mx then
 begin
 mx:=sm;
 jmx:=j;
 end;
 end;
 writeln(' Максимальная сумма в столбце ',jmx,' =',mx);
 mn:=0;
 for i:=1 to m do
 mn:=mn+a[1,i];
 imn:=1;
 for i:=2 to m do
 begin
 sm:=0;
 for j:=1 to m do
 sm:=sm+a[i,j];
 if sm<mn then
 begin
 mn:=sm;
 imn:=i;
 end;
 end;
 writeln(' Минимальная сумма в строке ',imn,' =',mn);
 p1:=a[imn,jmx];
 p2:=a[jmx,jmx];
 for i:=1 to m do
 begin
 x:=a[imn,i];
 a[imn,i]:=a[i,jmx];
 a[i,jmx]:=x;
 end;
 a[imn,jmx]:=p1;
 a[imn,imn]:=p2;
 writeln(' Обмен столбца ',jmx,' и строки ',imn);
 for i:=1 to m do
 begin
 for j:=1 to m do
 write(a[i,j]:4);
 writeln;
 end;
 readln
 end.
Суть программы. В квадратной матрице, нужно определить столбец в котором сумма элементов наибольшая и заменить со строкой в которой сумма элементов наименьшая. Программа почему то работает через раз.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
12.01.2013, 09:39
Ответы с готовыми решениями:

Найти строку матрицы с наибольшей и наименьшей суммой элементов
Дана прямоугольная матрица. Найти строку с наибольшей и наименьшей суммой элементов. Вывести на печать найденные строки и суммы их...

Найти строку матрицы с наибольшей и наименьшей суммой элементов
Дана матрица т(3,5).необходимо найти строку с наибольшей и наименьшей суммой элементов.вывести найденные строки и их суммы на экран!

Создать матрицу , вывести на экран , найти строку с наименьшей и наибольшей суммой элементов
ребята , помогите решить такую задачку: Создать матрицу , вывести на экран , найти строку с наименьшей и наибольшей суммой элементов ,...

4
 Аватар для Paster Fob
296 / 274 / 194
Регистрация: 03.05.2012
Сообщений: 570
13.01.2013, 14:20
Нужно обменять строку со столбцом?
0
0 / 0 / 1
Регистрация: 20.12.2012
Сообщений: 6
13.01.2013, 14:28  [ТС]
Цитата Сообщение от Paster Fob Посмотреть сообщение
Нужно обменять строку со столбцом?
Да. А потом снова вывести получившийся массив
0
 Аватар для Paster Fob
296 / 274 / 194
Регистрация: 03.05.2012
Сообщений: 570
13.01.2013, 14:39
программа будет корректно работать только с последней строкой и последним столбцом.Иначе либо,столбец либо строка будут изменяться не правильно.
вот мой код

Pascal
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
type
  tmatrix=array [1..100,1..100] of integer;
 
procedure creatematrix(var arg:tmatrix;size:byte);
var
  i,j:byte;
begin
  for i:=1 to size do begin
    for j:=1 to size do begin
      arg[i,j]:=random(31);
      write(arg[i,j]:3);
    end;
    writeln;
  end;
end;
 
function rowmin(var arg:tmatrix;var ind,size:byte):integer;
var
  sm,sum:integer;
  i,j:byte;
begin
  sum:=0;
  for j:=1 to size do begin
    sum:=sum+arg[1,j];
    ind:=1;
  end;
  for i:=2 to size do begin
    sm:=0;
    for j:=1 to size do
      sm:=sm+arg[i,j];
    if sm<sum then begin
      sum:=sm;
      ind:=i;
    end;
  end;
  rowmin:=sum;
end;
 
function columnmax(var arg:tmatrix;var ind,size:byte):integer;
var
  i,j:byte;
  sm,sum:integer;
begin
  sum:=0;
  for i:=1 to size do begin
    sum:=sum+arg[i,1];
    ind:=1;
  end;
  for j:=2 to size do begin
    sm:=0;
    for i:=1 to size do
      sm:=sm+arg[i,j];
    if sm>sum then begin
      sum:=sm;
      ind:=j;
    end;
  end;
  columnmax:=sum;
end;
 
procedure swap(var arg:tmatrix;size,i,j:byte);
var
  k,t:byte;
begin
  for k:=1 to size do begin
    t:=arg[i,k];
    arg[i,k]:=arg[k,j];
    arg[k,j]:=t;
  end;
end;
 
var
  a:tmatrix;
  m,i,j:byte;
  min,max:integer;
 
begin
  randomize;
  write(' Введите размер матрицы m=');
  readln(m);
  writeln;
  writeln('Исходная матрица: ');
  creatematrix(a,m);
  writeln;
  min:=rowmin(a,i,m);
  writeln(' Минимальная сумма в строке ',i,' = ',min);
  max:=columnmax(a,j,m);
  writeln(' Максимальная сумма в столбце ',j,' = ',max);
  swap(a,m,i,j);
  writeln;
  for i:=1 to m do begin
    for j:=1 to m do
      write(a[i,j]:3);
    writeln;
  end;
  readln
end.
0
0 / 0 / 1
Регистрация: 20.12.2012
Сообщений: 6
13.01.2013, 15:50  [ТС]
Спасибо большое. Думаю получится сдать завтра))
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
13.01.2013, 15:50
Помогаю со студенческими работами здесь

Найти строку с наибольшей и наименьшей суммой элементов. Вывести на печать найденные строки и суммы их элементов
Найти строку с наибольшей и наименьшей сум- мой элементов. Вывести на печать найденные строки и суммы их элементов. Массив...

Матрица. Вывод строк с наибольшей и наименьшей суммой элементов
Здравствуйте Прошу натыкать меня носом в код, не могу понять - что не так. Вот задача: Найти строку с наибольшей и наименьшей суммой...

столбец с наименьшей суммой увеличить на среднее значение недиагональных элементов
для произвольной матрицы, столбец с наименьшей суммой увеличить на среднее значение недиагональных элементов. Добавлено через 19 часов...

Найти строку с наибольшей суммой элементов матрицы
Дан целочисленный массив x(n и m вводится пользователем)Найти строку с наибольшей суммой элементов. помогите сделать, плиз!

В матрице строку с наибольшей суммой элементов записать в обратном порядке
для произвольной матрицы строку с наибольшей суммой элементов записать в обратном порядке. Матрица должна быть со строчками и столбцами.


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка SDL3 и Box2D из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
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
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru