Гарантируется правильная работа программы при вводе натуральных чисел, не превышающих 9 223 372 030 926 249 001
var i,n,m:int64; begin Write('Вводите: '); Read(m); n:=0; for i:=1 to m div 2 do begin n:=n+2*i-1; if (n>=m) then break end; if n=m then Writeln('Кв.корень(',m,')=',i) else Writeln('Кв.корень(',m,') не является целочисленным') end.
begin
write('a = ');
readln(a);
b:=round(sqrt(a));
if b*b=a
then writeln('Yes, ',b,' * ',b,' = ',a)
else writeln('No');
end.
Пример 1:
a = 289
Yes, 17 * 17 = 289
Пример 2:
a = 250
No
var
i,n,m:int64;
begin
Write('Вводите: ');
Read(m);
n:=0;
for i:=1 to m div 2 do
begin
n:=n+2*i-1;
if (n>=m) then break
end;
if n=m then Writeln('Кв.корень(',m,')=',i)
else Writeln('Кв.корень(',m,') не является целочисленным')
end.
Примеры работы программы
Вводите: 255240500157504
Кв.корень(255240500157504)=15976248
Вводите: 225
Кв.корень(225)=15
Вводите: 56846356333463
Кв.корень(56846356333463) не является целочисленным
Вводите: 9223372030926249001
Кв.корень(9223372030926249001)=3037000499