|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Срочно нужна помощь!!!
Помогите найти среднее арифметическое каждого столбца матрицы m*n.
Варианты типа a[1,1]+a[2,1]+... не устраивают Нужно что то типа S:=a[i,j]+S и т. д. дальше не знаю что с этим делать confused: Заранее благодарен |
#2
|
||||
|
||||
А самому подумать лень?
Код:
procedure TForm1.Button1Click(Sender: TObject); const m = 4; n = 4; var mat: array[1..m,1..n] of integer; i, j: integer; result: real; s: string; begin Memo1.Clear; // Заполнение Randomize; for i := 1 to m do for j := 1 to n do mat[i,j] := Random( 10 ); // Вывод for i := 1 to m do begin s := ''; for j := 1 to n do s := s + IntToStr( mat[i,j] ) + ' '; Memo1.Lines.Add( s ); end; Memo1.Lines.Add( '' ); // Подсчет for i := 1 to n do begin result := 0; for j := 1 to m do result := result + mat[j,i]; Memo1.Lines.Add( Format( 'Столбец %d = %f', [i,result/m] ) ); end; end; |
#3
|
|||
|
|||
Я подумал! так будет правильней
Program Matrix; {$APPTYPE CONSOLE} uses SysUtils; var a:array [1..100,1..100] of integer; i,j,n,m: integer; S,z: real; begin writeln('input n (stroki)'); readln(n); writeln('input m (stolbci)'); readln(m); writeln ('input massiv a'); for i:=1 to n do begin for j:=1 to m do begin read(a[i,j]); end; readln; end; for j:=1 to n do begin S:=0; for i:=1 to m do begin S:=a[i,j]+S; end; z:=s/m; Write('cp ap', j, ' ct =',z:2:2); Writeln; end; Readln; { TODO -oUser -cConsole Main : Insert code here } end. Последний раз редактировалось Kaifolom, 28.11.2006 в 08:26. |
#4
|
||||
|
||||
и что будет если на запрос stroki или stilbci я введу 101 или -1??
|
#5
|
|||
|
|||
Ну во-первых если на запрос stroki или stolbci ввести -1 то это получиться никакая уже не матрица!, -1 можно ввести на запрос 'input massiv a'. Если же на запрос ввести 101 то просто придётся долго вводить элементы матрицы - целых 101 строку и(или) 101 столбец)))
|
#6
|
||||
|
||||
to Kaifolom: иди учи теорию
1) Ну во-первых если на запрос stroki или stolbci ввести -1 то это получиться никакая уже не матрица! а что получится? да будет тебе известно, что (a: array[-1..3,-5..-1] of real) - это тоже матрица!!! 2) Если же на запрос ввести 101 то просто придётся долго вводить элементы матрицы - целых 101 строку и(или) 101 столбец))) А ты сначала попробуй, а потом утверждай. У тебя (a:array [1..100,1..100] of integer). Если i или j будут меньше 1 или больше 100, твоя прога вылетит с ошибкой!!! Последний раз редактировалось Decoding, 28.11.2006 в 20:18. |