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. Hãy viết chương trình có 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. Const Fi=’BEAUTY.INP’;
          Fo=’BEAUTY.OUT’;
    Var f,g: text;
        i,n,d,s: longint;

    Function ngto(a: longint): boolean;
    Var i: longint;
    Begin
            If a<2 then exit(false);
            For i:=2 to a div 2 do
                    If a mod i = 0 then exit(false);
            exit(true);
    End;

    Function bpcs(b: longint): longint;
    Var s: longint;
    Begin
            s:=0;
            While b<>0 do
            Begin
                    s:=s+sqr(b mod 10);
                    b:=b div 10;
            End;
            bpcs:=s;
    End;

    Begin
            Assign(f,Fi); Reset(f);
            Assign(g,Fo); Rewrite(g);
            Read(f,n);
            d:=0; s:=10;
            While d<n do
            Begin
                    If ngto(bpcs(s)) then inc(d);
                    inc(s);
            End;

            Writeln(g,s-1);

            Close(f);
            Close(g);
    End.

    Bình luận

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