Т.к. требуется использовать цикл until, то значит требуется код на языке Паскаль.
1) цикл for
program p_for
var
p: real;
i, n: integer;
begin
readln(n);
p := 1;//начальное значение
for i := 1 to n do
p := p * i;
writeln(p);
end.
2) цикл while
program p_while
var
p: real;
i, n: integer;
begin
readln(n);
i := 1;
p := 1;//начальное значение
while i <= n do
begin
p := p * i;
i := i + 1;
end;
writeln(p);
end.
3) цикл until
program p_until
var
p: real;
i, n: integer;
begin
readln(n);
i := 1;
p := 1;//начальное значение
repeat
p := p * i;
i := i + 1;
until i > n;
writeln(p);
end.
Объяснение:
program z1;
ar x,y:integer;
begin
readln(x);
readln(y);
if (x=0) and (y=0) then write(0)
else
begin
if (x>=0) and (y>=0) then write(1);
if (x<=0) and (y>=0) then write(2);
if (x<=0) and (y<=0) then write(3);
if (x>=0) and (y<=0) then write(4)
end
end.
Объяснение:
Если точка лежит в начале координат, т.е. х = 0 и у = 0, то выводим 0, иначе выводим какой четверти принадлежит точка, начиная с 1 четверти и по порядку.
Нестрогие условия (>= и <=) и оператор write (нет перехода на новую строку) позволяют выводить два номера четверти, если точка лежит на одной из осей, а расположение условий для четвертей по порядку позволяет соблюсти условие о том, что сначала необходимо выводить меньший номер.