Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.05.2010, 21:42   #1
Grifon_666
Новичок
Джуниор
 
Регистрация: 12.05.2010
Сообщений: 1
По умолчанию Очень нужно исправить программу в Delphi !!!

Задание: Дана матрица(5x5). В строках найти наибольший элемент. Сортировать строки в матрице по убыванию наибольших элементов в строке.
Ниже привожу похожую программу, только там в ней наибольший элемент ищется , не в строках, а в столбцах, и сортируются столбцы не по убыванию а по возрастанию. Помогите пожалуйста исправить.


program prog_2;

{$APPTYPE CONSOLE}
const n = 5;

var
a : array[1..n] of array[1..n] of Integer;

procedure FillMatrix();
var
i,j:Integer;
begin
Randomize;
for i := 1 to n do
for j := 1 to n do
a[i][j] := Random(100);
end;

procedure PrintMatrix();
var
i,j : Integer;
begin
for i := 1 to n do begin
Write(' ');
for j := 1 to n do begin
if a[i][j] <= 9 then
Write(a[i][j],' ')
else
Write(a[i][j],' ');
end;
Writeln;
end;
end;

procedure SaveMatrix(f:String);
var
fp : Text;
i,j : Integer;
begin
Assign(fp,f);
ReWrite(fp);
for i := 1 to n do begin
for j := 1 to n do begin
if a[i][j] <= 9 then
Write(fp,a[i][j],' ')
else
Write(fp,a[i][j],' ');
end;
Writeln(fp);
end;
Close(fp);
end;


procedure Swap(x:Integer; y:Integer);
var
i,t : Integer;
begin
for i := 1 to n do begin
t := a[i][y];
a[i][y] := a[i][x];
a[i][x] := t;
end;
end;

procedure SortMatrix();
var
m,i,j,x,t : Integer;
begin
for x := n downto 1 do begin
m := 0;
for i := 1 to x do begin
for j := 1 to n do begin
if a[j][i] > m then begin
m := a[j][i];
t := i;
end;
end;
end;
if x <> t then Swap(x, t);
end;
end;

begin
Writeln;
Writeln(' ---Unsorted---');
FillMatrix;
PrintMatrix;
Writeln;

Writeln(' ----Sorted----');
SortMatrix;
PrintMatrix;
SaveMatrix('matrix.txt');

Readln;
end.

Последний раз редактировалось Grifon_666; 12.05.2010 в 23:42.
Grifon_666 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужно написать/исправить функцию на Delphi, Base64 encode gvm Фриланс 2 13.04.2010 18:19
программа в Delphi .нужно очень Mary1357 Помощь студентам 3 04.04.2010 16:13
Помогите исправить программу нужно очень срочно! Алена Помощь студентам 3 04.11.2007 18:28