|
|
Регистрация | << Правила форума >> | 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. |