Другие языки программирования и технологии
Помогите решить задачу по информатике 9 класс. Pascal ABC
Дан массив, содержащий N элементов (N<=10000). Найти количество элементов массива, больших, чем среднее значение элементов массива.
program q184656290;
var
a: array [-3..10000] of Integer;
begin
Randomize;
a[-1] := 0;
a[-2] := 0;
Write('N = ');
ReadLn(a[-3]);
a[0] := 1;
while a[0] <= a[-3] do
begin
a[a[0]] := Random(101) - 50;
Write(a[a[0]]:4);
Inc(a[-1], a[a[0]]);
Inc(a[0]);
end;
WriteLn;
a[0] := 1;
while a[0] <= a[-3] do
begin
if a[a[0]] > a[-1] / a[-3] then
Inc(a[-2]);
Inc(a[0]);
end;
WriteLn('> ', a[-1] / a[-3] :0:2, ': ', a[-2]);
ReadLn;
end.
var
a: array [-3..10000] of Integer;
begin
Randomize;
a[-1] := 0;
a[-2] := 0;
Write('N = ');
ReadLn(a[-3]);
a[0] := 1;
while a[0] <= a[-3] do
begin
a[a[0]] := Random(101) - 50;
Write(a[a[0]]:4);
Inc(a[-1], a[a[0]]);
Inc(a[0]);
end;
WriteLn;
a[0] := 1;
while a[0] <= a[-3] do
begin
if a[a[0]] > a[-1] / a[-3] then
Inc(a[-2]);
Inc(a[0]);
end;
WriteLn('> ', a[-1] / a[-3] :0:2, ': ', a[-2]);
ReadLn;
end.
Сначала вычисляешь среднее, а потом снова пробегаешься и подсчитываешь, сколько элементов больше этого среднего
Александр Брынских
Программу составить надо. Решение и первоклассник знает.
uses CRT;
var
A: array [1..7] of integer;
B: array [1..7] of real;
s,i:integer;
sr:real;
begin
for i:=1 to 7 do begin
A:=random(225);
end;
s:=0;
for i:=1 to 7 do begin
s:=s+a;
end;
sr:=s/7;
sr:=round(sr);
for i:=1 to 7 do begin
B:=A*sr;
end;
writeln('Исходный массив: ');
for i:=1 to 7 do begin
writeln(a);
end;
Writeln('Среднее значение=',sr);
writeln('Результат: ');
for i:=1 to 7 do begin
writeln(b);
end;
end.
Вот прога алгоритм самом или по программе составить не сложно. Я отдельно высчитывал сумму и ср значение. Тут есть строчка sr:=round(sr); она округляет среднее значение что бы результат не был дробный и тд. Если этого не нужно то удали строку и в конце вывода результата укажи сколько знаков после запятой нужно. Вроде бы
var
A: array [1..7] of integer;
B: array [1..7] of real;
s,i:integer;
sr:real;
begin
for i:=1 to 7 do begin
A:=random(225);
end;
s:=0;
for i:=1 to 7 do begin
s:=s+a;
end;
sr:=s/7;
sr:=round(sr);
for i:=1 to 7 do begin
B:=A*sr;
end;
writeln('Исходный массив: ');
for i:=1 to 7 do begin
writeln(a);
end;
Writeln('Среднее значение=',sr);
writeln('Результат: ');
for i:=1 to 7 do begin
writeln(b);
end;
end.
Вот прога алгоритм самом или по программе составить не сложно. Я отдельно высчитывал сумму и ср значение. Тут есть строчка sr:=round(sr); она округляет среднее значение что бы результат не был дробный и тд. Если этого не нужно то удали строку и в конце вывода результата укажи сколько знаков после запятой нужно. Вроде бы
Александр Брынских
Спасибо!
Похожие вопросы
- Информатика 9 класс Pascal ABC
- Помогите решить задачу по информатике 10 класс
- Народ, слезно прошу помочь решить задачу по информатике (програмирование), я просто ноль в этом(((
- Помогите решить задачи по информатике!!! ОЧЕНЬ НУЖНО!!!
- Ребята помогите решить задачу по информатике ПЛАЧУ 50 БАЛОВ ЗА ЛУТШИЙ ОТВЕТ
- помогите решить задачи по информатике
- Помогите решить задачи по информатике.
- Помогите решить задачи по информатике.
- помогите решить задачу по информатике, срочно нужно ( программирование с++)
- Помогите решить задачу по информатике ...паскаль