Hàm số siêu nguyên to pascal

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.

Answers ( )

  1. giangnguyen

    -1

    2021-07-26T05:34:39+00:00

    program sieunt;

    uses crt;

    var n,i:longint;

    function ktnt(m:longint):boolean;

    var l:longint;

    begin

     ktnt:=false;

     if m<2 then exit;

     for l:=2 to trunc(sqrt(m)) do

      if m mod l=0 then exit;

     ktnt:=true;

    end;

    function ktsnt(longint):boolean;

    begin

      ktsnt:=false;

      while k<>0 do

        begin

         if ktnt(k)=false then exit;

         k:=k div 10;

       end;

    ktsnt:=true;

    end;

    BEGIN

    clrscr;

    write(‘Nhap n: ‘);

    readln(n);

    for i:=1 to n do

      if ktsnt(i) then write(i,’ ‘);

    readln

    end.

    Nếu đúng cho xin ctlhn nhé bạn

  2. havu

    0

    2021-07-26T05:34:40+00:00

    uses crt;
    var n,i:longint;
    function nt(a:qword):boolean;
    var i:longint;
    begin
       i:=2;
       while (a>1)and(a mod i<>0) do inc(i);
       nt:=i=a;
    end;
    function snt(a:qword):boolean;
       begin
          if a<20 then exit(false);
          while nt(a) do begin a:=a div 10; end;
          snt:=a=0;
       end;
    begin
    clrscr;
       write(‘n = ‘);readln(n);
       for i:=1 to n do if snt(i) then write(i,’ ‘);
    readln
    end.

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 <9) 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.

Ví dụ khi chạy chương trình:

Nhap so N: 4¿

Cac so sieu nguyen to có 4 chu so la:         2333 2339  2393  2399  2939  3119  3137  3733          3739  3793  3797  5939  7193  7331  7333  7393

 

Dùng quét cạn:

program sieunguyento;

var n,j: longint;

A,SNT:array[0..10] of longint;

 

Function KTNT(x:longint):boolean;

var i:longint;

begin

if x=1 then begin KTNT:=false; exit; end

else

For i:=2 to trunc(sqrt(x)) do

if x mod i = 0 then begin

KTNT := false;

exit;

end;

KTNT := true;

end;

 

procedure Sieunguyento(i:integer);

var j:integer;

begin

 

for j:=1 to 9 do

begin

A[i]:=j; Snt[i]:=SNT[i-1]*10+ A[i];

if ktnt(Snt[i]) then

if i=n then writeln(Snt[i]) else

Sieunguyento(i+1);

end;

end;

 

 

begin

n := 8; SNT[0]:=0;

Sieunguyento(1);

readln

end.

Dùng mảng:

var A,B: array[1..100] of longint;    dem,i,j,n,k,c: byte;         Function KTNT(x:longint):boolean;        var i:longint;        begin             if x=1 then begin KTNT:=false; exit; end            else                For i:=2 to trunc(sqrt(x)) do                     if x mod i = 0 then begin                        KTNT := false;                         exit;                    end;            KTNT := true;        end;            begin        write(‘nhap n: ‘); readln(n);  dem := 1;        For k:=1 to n do begin                          for i:= 1 to dem do                For j:=1 to 9 do                     if KTNT(A[i]*10 + j) then begin                            inc(c);                            B[c]:=A[i]*10+j;                        end;               A := B; dem:=c; c:=0;                      end;     For i := 1 to dem do writeln(A[i]);    readln      end.

uses crt;var kt,i,t:longint;n:int64;function NT(a:longint):boolean;var dem,i:longint; begin dem:=0; for i:=1 to a do if(a mod i=0)then inc(dem); NT:=dem=2; end;begin clrscr; write('nhap n:');readln(n); while(n<>0)and(kt=1)do begin t:=n mod 10; if(not(NT(t)))then kt:=0; n:=n div 10; end; if(kt=1)then write('n la so sieu nguyen to')else write('n khong la so sieu nguyen to'); readlnend.

Hãy giúp mọi người biết câu trả lời này thế nào?

starstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstar1starstarstarstarstar1 voteGửiHủy
  • Cảm ơn
  • Báo vi phạm
    • lamsauday246
    • Developers Home 2
    • Trả lời

      1445

    • Điểm

      5062

    • Cảm ơn

      1187

    https://hoidap247.com/cau-hoi/3774043

    • phanthaihai
    • Chưa có nhóm
    • Trả lời

      460

    • Điểm

      652

    • Cảm ơn

      402

    Bài này sai r, vd nhập 184 vẫn in là số siêu nguyên tố

    • lamsauday246
    • Developers Home 2
    • Trả lời

      1445

    • Điểm

      5062

    • Cảm ơn

      1187

    ok để sửa lại

Đăng nhập để hỏi chi tiết
  • manhquang0306
  • team IQ vô cực
  • Trả lời

    2273

  • Điểm

    42019

  • Cảm ơn

    1653

  • manhquang0306
  • 04/02/2022

uses crt;const lim = trunc(1e6);var n: longint; p: array[0..lim] of boolean;procedure sieve(n: longint);var i, j: longint;begin for i:=2 to trunc(sqrt(n)) do if not p[i] then for j:=i to n div i do p[j * i]:=true;end;function check(n: longint): boolean;var bool: boolean;begin if p[n] then exit(false); while n <> 0 do begin if p[n] = false then begin bool:=true; n:=n div 10; end else exit(false); end; exit(bool);end;beginclrscr; readln(n); sieve(lim); writeln(check(n));readln;end.