|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
27.12.2007, 17:19 | #1 |
Life:[### ]22%
Пользователь
Регистрация: 15.12.2007
Сообщений: 48
|
Задача на двумерные массивы
Буду благодарен за помощь в решенни такой задачи:
Дан массив A[1..N,1..M]. Найти номер столбца, для которого среднеарифметическое значение его элементов: a) максимально; b)минимально. program Project3; {$APPTYPE CONSOLE} uses SysUtils; const n=3; m=3; var a:array [1..n,1..m] of integer; b:array [1..m] of real; i,j:integer; c:real; begin writeln('vvedite elementy massiva'); for i:=1 to n do for j:=1 to m do readln(a[i,j]); for j:=1 to m do for i:=1 to n do begin b[j]:=(b[j]+a[i,j]); end; for j:=1 to m do begin b[j]:=b[j]/m; end; for j:=2 to m do if b[j]>b[1] then c:=j; writeln('maksimalno ',c:0:0); for j:=2 to m do if b[j]<b[1] then c:=j; writeln('minimalno ',c:0:0); for j:=1 to m do writeln ('summa ',b[j]); readln; end. Программа не выводит номер столбца среднее арифметическое которого максимально и минимально. Заранее спасибо.
My Life v1.0b ERROR: health.dll not found
|
27.12.2007, 19:39 | #2 |
Форумчанин
Регистрация: 31.05.2007
Сообщений: 486
|
1. Желательно массив b обнулять перед первым использованием.
2. Вместо b[j]:=b[j]/m; нужно написать b[j]:=b[j]/n; Делить нужно на количество строк, а не столбцов. Пока у тебя n = m это не важно, но если n <> m, то разница сразу же появится. 3. Перед каждым циклом for j:=2 to m do нужно записать c:=1; |
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Двумерные массивы | Lioness | Помощь студентам | 2 | 06.01.2008 12:39 |
C++ Двумерные массивы | АНЮТКА555 | Помощь студентам | 1 | 10.12.2007 12:42 |
Двумерные массивы | omi | Паскаль, Turbo Pascal, PascalABC.NET | 3 | 23.04.2007 22:45 |