В возрастающем порядке напечатать все целые числа из диапазона 1..10 000,представимые в виде n( в квадрате)+ m (в квадрате), где n, m больше или равно 0

code: #pascal
program gr;
 
var k,n,m:integer;
    i,j,s:integer;
    w:boolean;
begin
 
for k:=1 to 10000 do {проходим этим циклом от 1 до 10 000}
begin
w:= false; {присваиваем изначально этой переменной ЛОЖЬ}
for n:=1 to k do {цикл проверки чисед "N"}
for m:=n to k do {цикл проверки чисед "M"}
if sqr(n)+sqr(m)=k then w:= true; {проверяем условие "n( в квадрате)+ m (в квадрате)"}
if w then writeln(k);     end;  {если верно то выводим это число}
 
readln; readln;
end.      
Поделиться:

Похожие статьи: