Пожалуйста, помогите. Нужно решить в Pascal ABC, тремя способами: с помощью операторов for, while и repeat.

Пожалуйста, помогите. Нужно решить в Pascal ABC, тремя способами: с помощью операторов for, while и repeat.
Гость
Ответ(ы) на вопрос:
Гость
// PascalABC.NET 3.0, сборка 1160 от 05.02.2016 function y(x:integer):integer; begin   if x>5 then Result:=18*x   else     if x<2 then Result:=-12*x     else Result:=9*x+10 end; begin   Writeln('for');   for var i:=-3 to 8 do Writeln(i:2,y(i):5);   Writeln('while');   var i:=-3;   while i<=8 do begin Writeln(i:2,y(i):5); Inc(i) end;   Writeln('repeat');   i:=-3;   repeat Writeln(i:2,y(i):5); Inc(i) until i>8; end. Результат выполнения программы: for -3   36 -2   24 -1   12  0    0  1  -12  2   28  3   37  4   46  5   55  6  108  7  126  8  144 while -3   36 -2   24 -1   12  0    0  1  -12  2   28  3   37  4   46  5   55  6  108  7  126  8  144 repeat -3   36 -2   24 -1   12  0    0  1  -12  2   28  3   37  4   46  5   55  6  108  7  126  8  144
Гость
//Pascal ABC.NET v3.0 сборка 1111 //for Var   x:integer; begin  for x:=-3 to 8 do   begin;    if x>5 then writeln('y=(',x,')',18*x);    if (2<=x) and (x<=5) then writeln('y=(',x,')',9*x+10);    if x<2 then writeln('y=(',x,')',-12*x);   end; end. //while Var   x:integer; begin x:=-3;  while x<>9 do   begin;    if x>5 then writeln('y=(',x,')',18*x);    if (2<=x) and (x<=5) then writeln('y=(',x,')',9*x+10);    if x<2 then writeln('y=(',x,')',-12*x);    inc(x);   end; end. //repeat Var   x:integer; begin x:=-3;  repeat    if x>5 then writeln('y=(',x,')',18*x);    if (2<=x) and (x<=5) then writeln('y=(',x,')',9*x+10);    if x<2 then writeln('y=(',x,')',-12*x);    inc(x);  until x=9; end.
Не нашли ответ?
Ответить на вопрос
Похожие вопросы