Дано n-е количество оценок ученика по некоторому предмету, которые вводятся с клавиатуры....

0 голосов
100 просмотров

Дано n-е количество оценок ученика по некоторому предмету, которые вводятся с клавиатуры. Подсчитать количество «5», «4», «3», «2» и «1» (условный оператор, оператор выбора, символьные и строковые величины не использовать).
Pascal


Информатика (131 баллов) | 100 просмотров
Дано ответов: 2
0 голосов
Правильный ответ

Var a:array[1..100] of integer;
k:array[1..5] of integer;
n,i:integer;
begin
readln(n);
for i:=1 to n do read(a[i]);
readln;
for i:=1 to 5 do k[i]:=0;
for i:=1 to n do k[a[i]]:=k[a[i]]+1;
for i:=5 downto 1 do writeln(i,': ',k[i]);
end.

Пример:
20
4 1 3 5 3 3 5 3 5 4 4 1 2 4 4 3 1 1 2 4
5: 3
4: 6
3: 5
2: 2
1: 4

(194k баллов)
0

а если у ученика 101 оценка то программа не будет работать ))))

0

У учеников не бывает по одному предмету больше 100 оценок. )

0

Так диапозон массива это как условие что не больше 100

0

если за весь год то может быть)))

0

У меня просьба

0

Пожалуйста обясните значение этой строки for i:=1 to n do k[a[i]]:=k[a[i]]+1;

0

Элементы массива a (оценки ученика) используются в качестве индексов элементов массива k. Например:
i=1, (a[1]=4) k[4]=k[4]+1=1 - количество "4" увеличилось на 1
i=2, (a[2]=1) k[1]=k[1]+1=1 - количество "1" увеличилось на 1
i=3, (a[3]=3) k[3]=k[3]+1=1 - количество "3" увеличилось на 1
i=4, (a[4]=5) k[5]=k[5]+1=1 - количество "5" увеличилось на 1
i=5, (a[5]=3) k[3]=k[3]+1=2 - количество "3" увеличилось на 1
и т.д.

0 голосов

//PascalABC.NET 3.3,сборка 1611 от 06.01.2018//Внимание! Если программа не работает, обновите версию!

begin

 var n:=readinteger('n=');

   var mas:= new integer[n];

   Writeln('Введите числа в диапазоне 1..5->');

   for var i:=0 to n-1 do

   mas[i]:=readinteger;

Writeln('Количество 5=',mas.Where(t->t=5).Count);

Writeln('Количество 4=',mas.Where(t->t=4).Count);

Writeln('Количество 3=',mas.Where(t->t=3).Count);

Writeln('Количество 2=',mas.Where(t->t=2).Count);

Writeln('Количество 1=',mas.Where(t->t=1).Count);

end.


image
(2.3k баллов)
0

String нельзя же

0

нет то я дополнительно вивел масив

0

но я уже изменил свой ответ

0

ок спасибо возьму на заметку