Kiểm tra số chính phương trong pascal

Viết chương trình kiểm tra một số có phải là số chính phương hay không. (số chính phương là số viết được dưới dạng bình phương của một số nguyên)

Dữ liệu vào file: chinhphuong.inp Dữ liệu ra file: chinhphuong.out
Chứa số n (n <2 tỉ) Yes (No)
program kiem_tra_chinh_phuong;
var m,k,s:longint; f:text;
{--- Chuong trinh con kiem tra so cp ----------}
function chinh_phuong(n:longint):boolean;
begin
  if n<0 then chinh_phuong:=false
  else if sqr(trunc(sqrt(n)))=n then chinh_phuong:=true
    else chinh_phuong:=false;
end;
{----Than chuong trinh chinh ------}
begin
{----Doc file ----}
    assign(f,'chinhphuong.inp'); reset(f);
    read(f,m);close(f);
{----Mo file de ghi----}
    assign(f,'chinhphuong.out'); rewrite(f);
        if chinh_phuong(k) then write(f,"Yes") else write(f,"No");
    close(f);
end.


 

Read:   Đề thi HSG Tin học THPT Tỉnh Ninh Bình – Năm học 2020– 2021 - Có code tham khảo
Hình đại diện của người dùng

admin

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *