1) writeln("Введите размерность массива); - здесь опечатка (пропущены кавычки), должно быть writeln('Введите размерность массива');
2) writeln('Введите массив'); - пользователь не вводит массив, здесь надо написать writeln('Создаём массив...');
3) Перед циклом нужно определить начальные значения переменных с и s c:=0; s:=0;
4) У первого цикла есть begin, но нет end
5) s:=s+a[i]; эта команда повторяется дважды - второй раз (после if) не нужен
6) Лишний end; (предпоследняя строка программы)
И ещё не ошибки, а два совета: 1) пользуйся отступами, тогда лучше видно структуру программы. Когда все команды идут подряд в одной строке, легко запутаться. 2) При выводе среднего арифметического используй формат вывода s1:0:2 тогда результат будет округлён до двух знаков после запятой, и не будет таких монстров вроде 16.65432468734246873435
Исправленная программа: Program Zadacha; Uses crt; var a:array[1..1000] of integer; c,i,n,s :integer; s1: real; begin; clrscr; writeln('Введите размерность массива'); readln(n); writeln('Создаём массив...'); c:=0; s:=0; for i:=1 to n do begin a[i]:=random(100); if a[i]<50 then begin inc(c); s:=s+a[i]; end; end; s1:=s/n; writeln('Массив A:'); for i:=1 to n do write(a[i]:4); writeln; writeln('Среднее арифметическое равно=',s1:0:2); end.
Первый ряд 4, 6, 8, 10
Второй ряд 4² 6² 8² 10²
Третий ряд 7 9 11 13
Последовательность:
4,16,7,6,36,9,8,64,11,10,100,13 … .