Tại Vương quốc Byte xinh đẹp, mỗi người luôn chọn cho mình một con số, theo họ số nguyên tố là số mang lại sự may mắn và ai tìm được một số siêu nguyên tố còn may mắn hơn nữa. Số siêu nguyên tố là một số nguyên tố mà khi bỏ 1 số tùy ý các chữ số bên phải của nó thì phần còn lại vẫn là 1 số nguyên tố. Số 2333 là 1 số siêu nguyên tố vì 2333 là một số nguyên tố và 233, 23, 2 cũng là các số nguyên tố.
Dữ liệu vào: SNT.INP Chứa một số nguyên dương n (n ≤ 109)
Dữ liệu ra: SNT.OUT Nếu N là siêu nguyên tố ghi giá trị 1, ngược lại ghi giá trị 0
program KiemTraSoSieuNguyenTo;
uses crt;
function IsPrime(num: integer): boolean;
var
i: integer;
begin
if num < 2 then
IsPrime := false
else
begin
IsPrime := true;
for i := 2 to trunc(sqrt(num)) do
begin
if num mod i = 0 then
begin
IsPrime := false;
break;
end;
end;
end;
end;
function IsSuperPrime(num: integer): boolean;
var
i, temp: integer;
begin
IsSuperPrime := true;
while num > 0 do
begin
if not IsPrime(num) then
begin
IsSuperPrime := false;
break;
end;
temp := num mod 10;
num := num div 10;
end;
end;
var
n: integer;
inputFile, outputFile: text;
begin
assign(inputFile, 'SNT.INP');
assign(outputFile, 'SNT.OUT');
reset(inputFile);
rewrite(outputFile);
readln(inputFile, n);
if IsSuperPrime(n) then
writeln(outputFile, 1)
else
writeln(outputFile, 0);
close(inputFile);
close(outputFile);
end.
bạn viết tới phần mình chưa học á.bạn viết lại đơn giản hơn được không