Tìm tất cả:
program bai_giai;
uses crt;
var i:integer;
begin
clrscr;
for i:=1000 to 9999 do
if sqr((i div 100)+(i mod 100))=i then write(i,' ');
readln;
end.
Lưu ý:
+ i div 100 là lấy 2 số đầu
+ i mod 100 là lấy 2 số sau
+ sqr là bình phương cũng giống như là ((i div 100)+(i mod 100))*((i div 100)+(i mod 100))
Dường như không phải là nhân với 2 vì mình đã nhân với 2 không có số nào thỏa mãn
Kiểm tra một số có phải hay không:
program bai_giai;
uses crt;
var abcd,ab,cd:integer;
begin
clrscr;
write('Nhap so: '); readln(abcd);
ab:=abcd div 100;
cd:=abcd mod 100;
if (ab+cd)*(ab+cd)=abcd then write('Phai')
else write('Khong');
readln;
end.