Форум программистов, компьютерный форум, киберфорум
Turbo Pascal
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
5 / 5 / 0
Регистрация: 23.12.2012
Сообщений: 29
1

Поменять местами максимальный среди минимальных элементов строк и минимальных среди максимальных элементов столбцов

13.01.2013, 11:02. Просмотров 1203. Ответов 1
Метки нет (Все метки)

Помогите пожалуйста решить
Поменять местами максимальный среди минимальных элементов строк и минимальных среди максимальных элементов столбцов

Если минимальный элемент находится на побочной линии диагонали, то элементы столбцов расположить в обратном порядке, иначе транспонировать матрицу

Заранее большое спасибо
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.01.2013, 11:02
Ответы с готовыми решениями:

Максимальный элемент среди минимальных элементов строк матрицы
Дана действительная матрица размером n*m, все элементы которой различны.В каждой строке выбирается...

Найти максимальное среди минимальных элементов столбцов в матрице
Помогите пожалуйста переписать проги на паскаль. преподу именно на паскале нужно, а я на нем...

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

Матрица D(4,4) Определить максимальный среди положительных, минимальный среди отрицательных и поменять их местами.
Помогите пожалуйста решить программу Задана матрица D(4,4). Определить максимальный среди...

1
Модератор
61726 / 46204 / 31874
Регистрация: 18.05.2008
Сообщений: 111,475
13.01.2013, 12:19 2
Лучший ответ Сообщение было отмечено Valatava как решение

Решение

1.
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
uses crt;
const nmax=10;
var a:array[1..nmax,1..nmax] of integer;
    m,n,i,j,mx,imx,jmx,mn,imn,jmn,x:integer;
begin
clrscr;
randomize;
repeat
write('Количество строк до ',nmax,' m=');
readln(m);
until m in [1..nmax];
repeat
write('Количество столбцов до ',nmax,' n=');
readln(n);
until n in [1..nmax];
writeln('Исходная матрица:');
for i:=1 to m do
 begin
  for j:=1 to n do
   begin
    a[i,j]:=random(50);
    write(a[i,j]:4);
   end;
  writeln;
 end;
mx:=-maxint-1;
for i:=1 to m do
 begin
  mn:=a[i,1];
  jmn:=1;
  for j:=1 to n do
  if a[i,j]<mn then
   begin
    mn:=a[i,j];
    jmn:=j;
   end;
  if mn>mx then
   begin
    mx:=mn;
    imx:=i;
    jmx:=jmn;
   end;
  end;
writeln('Максимальный из минимльных элементов строк a[',imx,',',jmx,']=',a[imx,jmx]);
mn:=maxint;
for j:=1 to n do
 begin
  mx:=a[1,j];
  imx:=1;
  for i:=1 to m do
  if a[i,j]>mx then
   begin
    mx:=a[i,j];
    imx:=i;
   end;
  if mx<mn then
   begin
    mn:=mx;
    imn:=imx;
    jmn:=j;
   end;
  end;
writeln('Миниимальный из максимальных элементов столбцов a[',imn,',',jmn,']=',a[imn,jmn]);
x:=a[imx,jmx];
a[imx,jmx]:=a[imn,jmn];
a[imn,jmn]:=x;
writeln('Обмен указанных элементов:');
for i:=1 to m do
 begin
  for j:=1 to n do
  write(a[i,j]:4);
  writeln;
 end;
readln
end.
Добавлено через 17 минут
2.
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
uses crt;
const nmax=10;
var a:array[1..nmax,1..nmax] of integer;
    n,i,j,mn,imn,jmn,x:integer;
begin
clrscr;
randomize;
repeat
write('Размер матрицы до ',nmax,' n=');
readln(n);
until n in [1..nmax];
writeln('Исходная матрица:');
for i:=1 to n do
 begin
  for j:=1 to n do
   begin
    a[i,j]:=random(50);
    write(a[i,j]:4);
   end;
  writeln;
 end;
mn:=a[i,1];
imn:=1;
jmn:=1;
for i:=1 to n do
for j:=1 to n do
if a[i,j]<mn then
 begin
  mn:=a[i,j];
  imn:=i;
  jmn:=j;
 end;
writeln('Минимальный элемент a[',imn,',',jmn,']=',mn);
if jmn=n-imn+1 then
 begin
  writeln('Он на побочной диагонали');
  writeln('Элементы столбцов в обратном порядке:');
  for j:=1 to n do
  for i:=1 to n div 2 do
   begin
    x:=a[i,j];
    a[i,j]:=a[n-i+1,j];
    a[n-i+1,j]:=x;
   end;
  for i:=1 to n do
   begin
    for j:=1 to n do
    write(a[i,j]:4);
    writeln
   end
 end
else
 begin
  writeln('Он не на побочной диагонали');
  writeln('Транспонирование матрицы:');
  for i:=2 to n do
  for j:=1 to i-1 do
   begin
    x:=a[i,j];
    a[i,j]:=a[j,i];
    a[j,i]:=x;
   end;
  for i:=1 to n do
   begin
    for j:=1 to n do
    write(a[i,j]:4);
    writeln
   end
 end;
readln
end.
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.01.2013, 12:19

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Выведите на экран строку: содержащую максимальный из минимальных элементов строк
Подскажите как вставить в готовую процедуру: procedure maximum(m:integer;x:stroka;var...

Найти максимальное значение среди минимальных значений строк матрици
Оформить процедурами основное решение задачи, ввод-вывод оформить в главной программе. Дана...

Найти минимальный среди максимальных элементов строк матрицы
найти минимальный среди максимальных элементов строк матиц Mas. Помогите решить

Найти минимум среди максимальных элементов строк матрицы
4)Составить подпрограммы определения минимального и максимального элементов в одномерном...


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

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

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