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ố 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

0 bình luận về “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”

  1. 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.

    Bình luận
  2. 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.

    Bình luận

Viết một bình luận