Форум программистов, компьютерный форум, киберфорум
Наши страницы

Turbo Pascal

Войти
Регистрация
Восстановить пароль
 
kristabazh
0 / 0 / 0
Регистрация: 28.05.2016
Сообщений: 6
#1

В матрицах x и y поменять местами максимальные элементы - Turbo Pascal

14.06.2016, 22:13. Просмотров 213. Ответов 2
Метки нет (Все метки)

Помогите,пожалуйста составить программу:
В произвольных матрицах x и y размера 5х4 определить максимальные элементы и поменять их значения местами.Но так чтобы вывелись 2 матрицы,где мы их поменяли местами
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.06.2016, 22:13
Здравствуйте! Я подобрал для вас темы с ответами на вопрос В матрицах x и y поменять местами максимальные элементы (Turbo Pascal):

В двух матрицах поменять местами наибольшие элементы - Turbo Pascal
В двух матрицах: A (3 строки, 3 столбца) и B (3 строки, 4 столбца) поменять местами наибольшие элементы. Для поиска индексов наибольшего...

Поменять местами максимальные элементы массивов a и b - Turbo Pascal
Даны натуральные числа n,m вещественные массивы a(n), b(m). поменять местами максимальные элементы массивов a и b .(считать что в...

В квадратной матрице А(7,7) поменять местами минимальные элементы первой и третьей строк, максимальные элементы главной и побочной диагоналей - Turbo Pascal
Составил программу, но похоже неправильно. При вводе пишет ошибка проверки диапазона и курсор мигает на строчке if (i=j). Program...

Поменять местами строки матрицы, содержащие максимальные элементы - Turbo Pascal
В двух произвольно заданых двумерных массивах поменять местами строки, содержащие максимальные элементы. вывести на экран исходные и...

Поменять местами строки в матрице А(4,4) содержащие минимальный и максимальные элементы - Turbo Pascal
Поменять местами строки в матрице А(4,4) содержащие минимальный и максимальные элементы

Массивы. найти максимальные и минимальные элементы в массивах и поменять их местами - Turbo Pascal
1. сгенерировать два массива А и В случайных вещественных чисел в диапазоне {-25, 25}. генерацию осуществить с помощью процедуры. 2....

2
Yarik u102030
0 / 0 / 1
Регистрация: 24.05.2016
Сообщений: 6
Завершенные тесты: 1
15.06.2016, 00:31 #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
Program kristabazh;
Uses CRT;
Var x,y:array[1..4,1..5] of integer;
    i,j,max,TMP,Mi1,Mj1,Mi2,Mj2:integer;
Begin
  ClrScr;
  Randomize;
  For i:=1 to 4 do
    For j:=1 to 5 do begin
      x[i,j]:=Random(50);
      y[i,j]:=Random(50);
    end;
  Writeln('Before exchange: '); writeln;
  for i:=1 to 4 do begin
    For j:=1 to 5 do write(x[i,j]:3);
    Write('       ');
    For j:=1 to 5 do write(y[i,j]:3);
    writeln;
  end;
  writeln;
 
  max:=x[1,1]; Mi1:=1; Mj1:=1;
  for i:=1 to 4 do
    For j:=1 to 5 do
      If x[i,j]>max then begin
        Max:=x[i,j]; Mi1:=i; Mj1:=j;
      end;
 
  max:=y[1,1]; Mi2:=1; Mj2:=1;
  for i:=1 to 4 do
    For j:=1 to 5 do
      If y[i,j]>max then begin
        Max:=y[i,j]; Mi2:=i; Mj2:=j;
      end;
 
  TMP:=x[Mi1,Mj1];
  x[Mi1,Mj1]:=y[Mi2,Mj2];
  y[Mi2,Mj2]:=TMP;
 
  Writeln('After exchange'); writeln;
  for i:=1 to 4 do begin
    For j:=1 to 5 do write(x[i,j]:3);
    Write('       ');
    For j:=1 to 5 do write(y[i,j]:3);
    writeln;
  end;
  readln;
end.
0
bormant
Модератор
Эксперт Pascal/DelphiЭксперт NIX
3557 / 2252 / 1152
Регистрация: 22.11.2013
Сообщений: 5,928
15.06.2016, 10:19 #3
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Поскольку одинаковых матриц больше одной, напрашивается использование процедур для одинаковых действий:
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
type TMatrix=array [1..4,1..5] of Integer;
 
procedure mGen(var a: TMatrix);
var i, j: Integer;
begin
  for i:=Low(a) to High(a) do for j:=Low(a[Low(a)]) to High(a[Low(a)]) do
    a[i,j]:=Random(100);
end;
 
procedure mWrite(const a: TMatrix; const s: String);
var i, j: Integer;
begin
  WriteLn(s);
  for i:=Low(a) to High(a) do begin
    for j:=Low(a[Low(a)]) to High(a[Low(a)]) do Write(a[i,j]:3); WriteLn;
  end;
end;
 
procedure GetMax(const a: TMatrix; var mi, mj: Integer);
var i, j: Integer;
begin
  mi:=Low(a); mj:=Low(a[Low(a)]);
  for i:=Low(a) to High(a) do for j:=Low(a[Low(a)]) to High(a[Low(a)]) do
    if a[mi,mj]<a[i,j] then begin mi:=i; mj:=j; end;
end;
 
var
  x, y: TMatrix;
  xi, xj, yi, yj, t: Integer;
begin
  Randomize;
  mGen(x); mGen(y);
  GetMax(x,xi,xj); GetMax(y,yi,yj);
  mWrite(x,'X ='); mWrite(y,'Y ='); 
  WriteLn('Xmax at ',xi,',',xj,'; Ymax at ',yi,',',yj);
  t:=x[xi,xj]; x[xi,xj]:=y[yi,yj]; y[yi,yj]:=t;
  mWrite(x,'X''='); mWrite(y,'Y''=');
end.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.06.2016, 10:19
Привет! Вот еще темы с ответами:

В двух массивах поменять местами строки, содержащие максимальные элементы - Turbo Pascal
В двух произвольно заданных двумерных массивах поменять местами строки, со-держащие максимальные элементы. Вывести на экран исходные и...

В двух двумерных массивах поменять местами строки, содержащие максимальные элементы - Turbo Pascal
в двух произвольно заданных двумерных массивах поменять местами строк, содержащие максимальные элементы. вывести на экран исходные и...

Поменять местами максимальные элементы из первых 10 и последних десяти элементов вектора - Turbo Pascal
Program vec; Uses crt; const m = 25; var Vector: array of integer; i, max, min, min_index, max_index, temp, sred: integer;...

Поменять местами столбцы матрицы, содержащие минимальные и максимальные элементы матрицы - Turbo Pascal
Помогите, пожалуйста, решить задачу на двумерные массивы.. Дана матрица размера M на N. Поменять местами столбцы содержащие минимальные и...


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

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

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