Số siêu nguyên tố là số nguyên tố mà khi bỏ một số tuỳ ý các chữ số bên phải của nó thì phần còn lại vẫn tạo thành một số nguyên tố. Ví dụ 7331 là một số siêu nguyên tố có 4 chữ số vì 733, 73, 7 cũng là các số nguyên tố. Nhiệm vụ của bạn là viết chương trình nhập dữ liệu vào là một số nguyên N (0< N <10) và đưa ra kết quả là một số siêu nguyên tố có N chữ số cùng số lượng của chúng. --- Yêu cầu: - Dùng file: SIEUNGTO - Dùng chương trình con

2 câu trả lời

const fi='sieungto.inp';
      fo='sieungto.out';
var n:byte;
    a:longint;
function lt(n:byte): longint;
var kq,i:longint;
begin
        kq:=1;
        for i:=1 to n do kq:=kq*10;
        exit(kq);
end;
function checkprime(x:longint):boolean;
var i:longint;
begin
        if x<2 then exit(false) else
        for i:=2 to trunc(sqrt(x)) do if x mod i = 0 then exit(false);
        exit(true);
end;
function supper(y:longint):boolean;
begin
        if y=0 then supper:=true else
        supper:=checkprime(y) and supper(y div 10);
end;
begin
        assign(input,fi);
        reset(input);
        read(n);
        close(input);
        a:=lt(n);
        repeat
                inc(a);
        until supper(a);
        assign(output,fo);
        rewrite(output);
        write(a);
        close(output);
end.


uses crt;
var i,n,m:longint; d:text;
function nt(a:longint):boolean;
var i:longint;
begin
   i:=2; while(a>2)and(a mod i<>0)do inc(i); nt:=i=a;
end;
function snt(a:longint):boolean;
var i:longint;
   begin
       While(NT(A))Do A:=A Div 10;
       If(A<>0)Then exit(false); exit(true);
   end;
begin
clrscr;
assign(d,'sieungto.inp');reset(d);
    readln(d,n);
    If (N<1)or(n>9) then writeln('Hay nhap lai') else
        begin
           m:=1;
           for i:=1 to n-1 do m:=m*10;
           i:=m;
           repeat
              inc(i);
           until (snt(i))and(i>=m);
           writeln(i);
        end;
close(d);
readln
end.

Câu hỏi trong lớp Xem thêm