Thonin
4 год назад
Проверьте программу, пожалуйста. Номер 3Вообще ничего не выводит, и ошибки не пишетprogram three;var c,a,y,t,n:real;beginwriteln('Введите с');readln(c);y:=1;while (y<14) do beginn:=sqr(y+2);t:=(c-3)/n+t;t:=-t;end;writeln(t);end.
ОТВЕТЫ
Василка
Oct 24, 2020
У тебя цикл работает, пока Y меньше 14, но внутри цикла ты Y не увеличиваешь, поэтому программа работает бесконечно и не выдаёт .
Я добавил переменную i:integer (integer - чтобы работал mod(остаток от деления на число)), потому-что у нас чередуются знаки + и -. Также убрал зацикливание
program three;
var c,a,y,t,n:real;
i:integer;
begin
writeln('Введите с');
readln(c);
y:=3;
t:=0;
i:=0;
while (y<14) do begin
i:=i+1;
n:=sqr(y);
if i mod 2 = 1 then t:=t-((c-3)/n)
else t:=t+((c-3)/n);
y:=y+2;
end;
writeln(t);
end.
Я добавил переменную i:integer (integer - чтобы работал mod(остаток от деления на число)), потому-что у нас чередуются знаки + и -. Также убрал зацикливание
program three;
var c,a,y,t,n:real;
i:integer;
begin
writeln('Введите с');
readln(c);
y:=3;
t:=0;
i:=0;
while (y<14) do begin
i:=i+1;
n:=sqr(y);
if i mod 2 = 1 then t:=t-((c-3)/n)
else t:=t+((c-3)/n);
y:=y+2;
end;
writeln(t);
end.
870
Смежные вопросы: