Một số được gọi là số đẹp nếu tổng bình phương các chữ số của nó là một số nguyên tố. Các số đẹp được đánh số theo thứ tự tăng dần của giá trị từ 1 tr

Một số được gọi là số đẹp nếu tổng bình phương các chữ số của nó là một số nguyên tố. Các số đẹp được đánh số theo thứ tự tăng dần của giá trị từ 1 trở đi. Cho sô nguyên n tìm số đẹp thứ n. Viết chương trình sử dụng chương trình con.

0 bình luận về “Một số được gọi là số đẹp nếu tổng bình phương các chữ số của nó là một số nguyên tố. Các số đẹp được đánh số theo thứ tự tăng dần của giá trị từ 1 tr”

  1. Program BTT;
    Uses crt;
    Const Max=1000000;
    Var A:array[1..max] of longint;
        n: longint;

    Function kt(n: longint): boolean;
    Var i, k: longint;
    Begin
            If (n=2) or (n=3) then exit(true);
            If (n<2) or (n mod 2=0) or (n mod 3=0) then exit(false);
            k:=5;
            While k<=trunc(sqrt(n)) do
            Begin
                    If (n mod k=0) or (n mod (k+2)=0) then exit(false);
                    Inc(k,6);
            End;
            exit(true);
    End;

    Function tong(n: longint): longint;
    Var i, s: longint;
        st: string;
    Begin
            s:=0;
            Str(n,st);
            For i:=1 to length(st) do s:=s+sqr(ord(st[i])-48);
            exit(s);
    End;

    Procedure XL;
    Var i, dem: longint;
    Begin
            dem:=0;
            For i:=2 to max do
            If kt(tong(i)) then
            Begin
                    Inc(dem);
                    A[dem]:=i;
            End;
            While not eof do
            Begin
                    Readln(n);
                    Writeln(a[n]);
            End;
    End;

    Begin
            Clrscr;
            XL;
            Readln;
    End.

    Bình luận

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