Помогите ,пожалуйста !!!! В массив из 10 элементов записаны оценки группы учащихся. Составить программу, выводящую на экран количество оценок 2,3,4 и 5.(Паскаль абс) Желательно с объяснением)
Program task; var p:array[1..10] of integer; i, n2, n3, n4, n5:integer; begin n2:=0; n3:=0; n4:=0; n5:=0; {n2 - n5 - колич. 2-ек, 3-ек и т.д.} writeln('Введите 10 элементов массива, отметки от 1 до 5'); for i:=1 to 10 do {ввод исходных данных} begin write('p[',i,'] = '); readln(p[i]) end; for i:=1 to 10 do {решение, перебор таблицы и суммирование} begin if p[i] = 2 then n2:=n2+1; if p[i] = 3 then n3:=n3+1; if p[i] = 4 then n4:=n4+1; if p[i] = 5 then n5:=n5+1 end; writeln('n2 = ',n2); {вывод результатов} writeln('n3 = ',n3); writeln('n4 = ',n4); writeln('n5 = ',n5); writeln('всего оценок',n2+n3+n4+n5) end.
1 votes Thanks 1
нэнэ
Я проверила в паскале ,оно не выводит кол-во оценок
Answers & Comments
Verified answer
Program task;var p:array[1..10] of integer;
i, n2, n3, n4, n5:integer;
begin
n2:=0; n3:=0; n4:=0; n5:=0; {n2 - n5 - колич. 2-ек, 3-ек и т.д.}
writeln('Введите 10 элементов массива, отметки от 1 до 5');
for i:=1 to 10 do {ввод исходных данных}
begin
write('p[',i,'] = ');
readln(p[i])
end;
for i:=1 to 10 do {решение, перебор таблицы и суммирование}
begin
if p[i] = 2 then n2:=n2+1;
if p[i] = 3 then n3:=n3+1;
if p[i] = 4 then n4:=n4+1;
if p[i] = 5 then n5:=n5+1
end;
writeln('n2 = ',n2); {вывод результатов}
writeln('n3 = ',n3);
writeln('n4 = ',n4);
writeln('n5 = ',n5);
writeln('всего оценок',n2+n3+n4+n5)
end.