Вообщем так. 1. sin это арифметическое действие. Синус можно найти из 90 градусов например. А тут X>10. Из чего синус искать, из большего или может из меньшего? Правильной будет запись if x>10 then ... какое-то действие... sin(x) else ... sin (x); вообщем нельзя ставить оператор сравнения в арифметическое действие т.к. им задаются условия.
2. Попытка использовать арифметические операции с "false". 3. Выражение теряет смысл. And это логическая операция. Лог выражение должно быть вида A and B. Соответственно исправить можно так '(x=0) and (round(sqrt(x)) mod 2=0)' 4. Не пишут 2 or подряд т. к. теряется логика операции.
У меня тоже комп далеко, поэтому пишу программы прямо на телефоне! ;-) И вот, что получилось (все результаты проверены):
program First; type arr = array of integer; var a : arr; i, p, l : integer; f : real;
begin writeln('Вводите числа (0 - окончание ввода)'); i:=1; l :=0; repeat readln(p); if p=0 then break; setLength(a, i); a[i-1]:=p; i:=i+1; l:=l+1; until p=0; p:=0;
for i:=0 to l-1 do p:=p+a[i]; f:=p/l;
writeln(f:5:2); end.
program Second; var p, i : integer;
begin write('Введите количество чисел: '); readln(p); for i:=1 to p do write(7*i, ' '); end.
program Third; var count, p : integer;
begin writeln('Вводите числа'); count :=0; repeat readln(p); if p=0 then break; if (p mod 2 = 0) then count:=count+1; until p=0; writeln ('Было введено ', count, ' чётных чисел.'); end.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota
Оформи подписку