Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/9: Рейтинг темы: голосов - 9, средняя оценка - 4.67
1 / 1 / 0
Регистрация: 28.02.2013
Сообщений: 28
1

Поменять местами столбцы с максимальным и минимальным элементами

06.03.2013, 21:29. Показов 1831. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Дана матрица А размера n*m, где n,m<=15. Элементы матрицы – целые случайные числа из диапазона [0, 10*N]. Оформить преобразование матриц в виде функции или процедуры и записать в файл исходную и преобразованную матрицы. Просмотреть файл.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.03.2013, 21:29
Ответы с готовыми решениями:

Поменять местами строки с максимальным и минимальным по модулю элементами
Дана матрица А размера n*m, где n,m&lt;=15. Элементы матрицы – целые случайные числа из диапазона ....

В матрице поменять местами строки с максимальным и минимальным элементами
задача: в матрице А(10,12) поменять местами строки с макс и мин элементами. Заданные и измененные...

В матрице поменять строки с максимальным и минимальным элементами
Дано действительную матрицу размером 5 * 4. Строку содержит максимальный элемент массива поменять...

Поменять местами столбцы с максимальным и минимальным элементами матрицы
Дана прямоугольная матрица A(mхn). Поменять местами столбцы с максимальным и минимальным элементами...

3
1 / 1 / 0
Регистрация: 28.02.2013
Сообщений: 28
12.03.2013, 14:27  [ТС] 2
вот похожая программа
Код
Program lora_z4;
Uses Crt;
Var A:array [1..15,1..15] of real;
i,j,n,k_max,k_min:integer;
max,min,B:real;
Begin
ClrScr;
Write('Vvedite n (<=15) ');
Readln(n);

for i:=1 to n do
for j:=1 to n do
A[i,j]:=i*j*sin(0.5*i*j);

for i:=1 to n do
Begin
for j:=1 to n do
Write(A[i,j]:6:1);
Writeln;
End;

min:=(A[1,1]);
k_min:=1;
for i:=1 to n do
for j:=1 to n do
if min>(A[i,j]) then
Begin
min:=(A[i,j]);
k_min:=j;
End;

max:=(A[1,1]);
k_max:=1;
for i:=1 to n do
for j:=1 to n do
if max<(A[i,j]) then
Begin
max:=(A[i,j]);
k_max:=j;
End;

Writeln;
Writeln;
Writeln('min = ',min:5:1,' k_min = ',k_min);
Writeln('max = ',max:5:1,' k_max = ',k_max);

for i:=1 to n do
Begin
B:=A[i,k_max];
A[i,k_max]:=A[i,k_min];
A[i,k_min]:=B;
End;

Writeln;
Writeln;
for i:=1 to n do
Begin
for j:=1 to n do
Write(A[i,j]:6:1);
Writeln;
End;

ReadKey;
End.
а вот процедура, помогите пожалуйста собрать все как надо, не получается(
Код
Program lora_z4;
Uses Crt;

procedure DoMatr;
  const MaxSize = 15;
  Var A:array [1..MaxSize,1..MaxSize] of integer;
       i,j,n,m,B, k_max,k_min:integer;
  begin
     Write('Vvedite n (<=15) ');
     Readln(n);
     Write('Vvedite m (<=15) ');
     Readln(m);

     for i:=1 to n do
        for j:=1 to m do
          A[i,j]:= random(10*N+1);
  
     .....
   WriteLn('Press any key to exit...');
   ReadKey;
   Readln;
end; {конец процедуры i*j*sin(0.5*i*j)}
  
{главная программа}
Begin
     ClrScr;
     Randomize;

     DoMatr;
end.
0
1 / 1 / 0
Регистрация: 28.02.2013
Сообщений: 28
13.03.2013, 14:30  [ТС] 3
ну помогите пожалуйста(
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
13.03.2013, 16:15 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
77
78
79
80
81
uses crt;
const nmax=15;
type mtr=array[1..nmax,1..nmax] of byte;
procedure obmen(var a:mtr;m,n,jmn,jmx:byte);
var i,x:byte;
begin
for i:=1 to m do
 begin
  x:=a[i,jmn];
  a[i,jmn]:=a[i,jmx];
  a[i,jmx]:=x;
 end;
end;
var a:mtr;
    m,n,i,j,mn,mx,jmn,jmx:byte;
    f:text;
    s:string;
begin
randomize;
repeat
write('Количество строк до ',nmax,' m=');
read(m);
until m in [1..nmax];
repeat
write('Количество столбцов от 2 до ',nmax,' n=');
read(n);
until n in [2..nmax];
assign(f,'result.txt');
rewrite(f);
writeln(f,'Исходная матрица:');
for i:=1 to m do
 begin
  for j:=1 to n do
   begin
    a[i,j]:=random(10*n+1);
    write(f,a[i,j]:4);
   end;
  writeln(f,'');
 end;
mn:=a[1,1];
mx:=mn;
jmn:=1;
jmx:=1;
for i:=1 to m do
for j:=1 to n do
 begin
  if a[i,j]<mn then
   begin
    mn:=a[i,j];
    jmn:=j
   end;
  if a[i,j]>mx then
   begin
    mx:=a[i,j];
    jmx:=j
   end;
 end;
writeln(f,'Минимальный элемент=',mn,' в столбце ',jmn);
writeln(f,'Максимальный элемент=',mx,' в столбце ',jmx);
if jmn=jmx then writeln(f,'Минимальный и максимальный в одном столбце, обмена нет')
else
 begin
  obmen(a,m,n,jmn,jmx);
  writeln(f,'Обмен столбцов ',jmn,' и ',jmx);
  for i:=1 to m do
   begin
    for j:=1 to n do
    write(f,a[i,j]:4);
    writeln(f,'');
   end;
 end;
close(f);
writeln('Просмотр файла');
reset(f);
while not eof(f) do
 begin
  readln(f,s);
  writeln(s)
 end;
close(f)
end.
1
13.03.2013, 16:15
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.03.2013, 16:15
Помогаю со студенческими работами здесь

В матрице поменять местами столбцы с максимальным и минимальным элементами
В двумерном массиве поменять местами столбцы с максимальным и минимальным элементами.

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

Поменять местами столбцы матрицы с максимальным и минимальным значением суммы
Дана матрица NxM. Вычислить сумму элементов для каждого столбца. Поменять местами столбцы с...

В массиве поменять местами строки с максимальным и минимальным элементами
Здравствуйте помогите! Решите, пожалуйста программу, но сделайте все по простому, якобы это сделал...

Поменять местами столбцы с максимальным и минимальным элементами в матрице
дана квадратная матрица натуральных чисел(получаемая через rand()). Поменять местами столбцы с...

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


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru