|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Преобразование массива
Добрый день друзья!
Нужно произвести преобразование матрицы по следующему принципу: 1. Первое число матрицы А[1.1] взаимодействует со всеми числами матрицы поочередно по следующему сценарию: Берем второе число А[1.2] и находим любое случайное число меньше числа А[1.2]. Найденное случайное число вычитается от А[1.2] и прибавляется к А[1.1]. И так дальше со всеми числами матрицы. Написал следующий код: Код:
procedure TForm1.Button1Click(Sender: TObject); var A: array [1..100,1..100] of real; // Первичный массив M: integer; N: integer; K: integer; diapazon:real; max: real; min: real; Prom: real; Peremen: real; ErrHndl: real; MaxM: integer; // Предел значения начального элемента i: integer; // индекс I j: integer; // индекс J f: TextFile; s, FName: string; QN:array [1..2,1..50] of integer; // массив итоговый begin M:=StrToInt(Edit1.Text); N:=StrToInt(Edit2.Text); MaxM:=StrToInt(Edit3.Text); Randomize; for i:= 1 to N do For j:=1 to M do begin A[i,j]:= random(MaxM+1) end; //Взаимодействие элементов матрицы между собой Prom:=A[1,1]; for i:= 1 to N do For j:=1 to M do begin K:= Trunc(A[i,j+1]); //Урезаем числа после запятой Peremen:=random(K); //Находим случайное число меньше, чем второй элемент A[i,j+1]:= A[i,j+1]-Peremen; Prom:=Prom+Peremen; end; A[1,1]:= Prom; Но не работает! Подскажите, кто знает, как решить такую задачку. Последний раз редактировалось Admin, 29.06.2009 в 20:45. |