Cho số nguyên dương n. Hãy lập trình tìm số chính phương có giá trị gần n nhất Dữ liệu vào: Tệp văn bản SOCP.INP gồm một dòng chỉ ghi một số nguyên n (0<n≤10^9) Kết quả: Ghi ra tệp văn bản SOCP.OUT số chính phương tìm được. Ví dụ: SOCP.INP SOCP.OUT 17 16 28 25 HELP
1 câu trả lời
Program TH_1
Uses crt;
Var f: text; t,s,n,kq: longint;
Begin
Clrscr;
Assign (f,'SOCP.INP'); reset( f);
Readln (f,n);
Close (f);
Assign (f,'SOCP.OUT'); rewrite (f); t:=n; s:=n;
While sqrt (t)<>trunc( sqrt (t)) do t:=t-1;
While sqrt s)<>trunc( sqrt (s)) do s:=s+1;
Kq:=t;
if n-kq>s-n then kq:=s;
Writeln (f, kq);
Close (f);
Readln;
End.
#Hãy cho mình câu trả lời hay nhất và vote 5 sao nhé!
#Chúc bạn học tốt!