nhập vào số tự nhiên n sau đó in ra tất cả các số hoàn hảo từ 1 đến chính nó, dưới mỗi số hoàn hảo hãy viết nó dưới dạng tổng các ước thực sự của nó, vd(6=1+2+3)

2 câu trả lời

uses crt;
var n,i,j,s:longint; 
begin
clrscr;
   write('Nhap n: ');readln(n); 
   for i:=1 to n do 
      begin
         s:=0;
         for j:=1 to i div 2 do 
            if i mod j=0 then s:=s+j;
         if s=i then 
            begin
               write(i,'=');
               for j:=1 to i div 2 do 
                  if i mod j=0 then write(j,'+');
               gotoxy(wherex-1,wherey); write(' ');
               writeln; 
            end;
      end;
readln
end.

program shh;
var n,i,j,s:integer;
 
function ktshh(x:integer):boolean;
    var tam,i:integer;
        begin
            tam:=0; 
            for i:= 1 to (x div 2) do
            if x mod i = 0 then tam:=tam+i;
       if tam = x then ktshh:=true
        else ktshh:=false;
    end;

begin
    Write(n);Readln(n);
    s:=0;
    for i:=1 to n do
        if ktshh(i) then
         begin
            write(i,'=');
             for j:=1 to i do
                if (i mod j=0) and (j<i) then 
                    begin
                        write(j);
                        s:=s+j;
                        if s<i then 
                            write('+'); 
                    end;
                writeln;
        end;
    Readln;
end. 

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