![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Нужно создать матрицу и заполнить случайными числами и найти среди них min и max значение. Матрицу сохранить в файл. Не могу найти min и max значение.
Подскажите, кто знает! Спасибо! Вот код: Код:
procedure TForm1.Button1Click(Sender: TObject);
var
A: array [1..100,1..100] of real; // массив
M: integer;
N: integer;
diapazon:real;
max: real;
min: real;
ErrHndl: real;
MaxM: integer; // Предел значения начального элемента
i: integer; // индекс I
j: integer; // индекс J
f: TextFile;
s, FName: string;
begin
M:=StrToInt(Edit1.Text);
N:=StrToInt(Edit2.Text);
MaxM:=StrToInt(Edit3.Text);
//Application.MessageBox('This should be on top.', 'Look',0);
for i:= 1 to N do
For j:=1 to M do
begin
A[i,j]:= random(MaxM)
end;
FName:='Massiv1.txt'; //Запись матрицы в файл
AssignFile(F, FName);
{$I-}
Append(F);
{$I+}
if IOResult <> 0 then Rewrite(F);
for i:= 1 to N do
For j:=1 to M do
begin
Str(A[i,j]:6:2, S);
writeln(f,s);
end;
CloseFile(F);
//end;
//Поиск минимального и максимального значений матрицы
for i:= 1 to N do
For j:=1 to M do
max:=A[i,J];
min:=max;
begin
if A[i,j]<min then
min:=A[i,j]
else
if A[i,j]>max then
max:=A[i,j];
end;
diapazon:=(Max - Min)/100;
end;
end. |
|
#2
|
||||
|
||||
|
Так попробуй:
Код:
Max := A[1,1];
Min := A[1,1];
for i:= 1 to N
do for j:=1 to M
do begin
if Max < A[i,J] then Max := A[i,J];
if Min > A[i,J] then Min := A[i,J];
end;Код:
A[i,j]:= random(MaxM+1) Код:
Randomize; Последний раз редактировалось Страдалецъ, 27.06.2009 в 10:05. |