Var n:array [1..999] of integer;
a,i,c:integer;
begin
write ('Введите кол-во элементов: ');
readln (a);
c:=0;
for i:=1 to a do
begin
write ('Введите ',i,' элемент: ');
readln (n[i]);
if n[i]<0 then c:=i;
end;
WRITELN;
write ('Введённый массив: ');
for i:=1 to a do
begin
write (n[i],' ');
end;
WRITELN;
if c>0 then writeln ('Индекс последнего введённого отрицательного элемента ',c) else writeln ('Отрицательных элементов не было введено!');
end.
Честно, не поняла ваш код вообще. Почему нет цикла? Предлагаю свое решение:
1)Cначала заполняем массив случайными числами от 2 до 5 (включительно)
2)Потом выводим его (Для проверки)
3) Потом считаем оценки. Но сначала нужно обнулить переменные( В самом начале это делали), а то получится кака (:
program N_0547847;
var
b, c, d, f, i:integer;
a: array [1..20] of integer;
begin;
randomize;
b:=0; c:=0; d:=0; f:=0;
for i:=1 to 20 do begin
a[i]:=random(4)+2;
write(a[i],' '); end;
writeln;
for i:=1 to 20 do begin
if a[i]=2 then b:=b+1;
if a[i]=3 then c:=c+1;
if a[i]=4 then d:=d+1;
if a[i]=5 then f:=f+1;
end;
writeln('Двоек: ', b);
writeln('Троек: ', c);
writeln('Четверок: ',d);
writeln('Пятерок: ',f);
end.
Трансляция - это когда по теливизору идет в настоящее время какое-то видео или что-то другое.