Bài 1: Yêu cầu: Em hãy viết chương trình nhập vào một số tự nhiên N và kiểm tra xem có thể biểu diễn N bằng tổng của hai hay nhiều số tự nhiên liên t

Bài 1: Yêu cầu: Em hãy viết chương trình nhập vào một số tự nhiên N và kiểm tra xem có thể biểu diễn N bằng tổng của hai hay nhiều số tự nhiên liên tiếp hay không? Nếu có thì in ra tất cả các cách biểu diễn đó. Nếu không thì ghi ra dòng chữ “Khong the bieu dien”
Ví dụ: N=4 hoặc 8, thì in ra dòng “Khong the bieu dien”
N=15 có 3 cách
Cách 1: 7 8
Cách 2: 4 5 6
Cách 3: 1 2 3 4 5
Bài 2:
Số nguyên tố là số tự nhiên chỉ chia hết cho 1 và chính nó.
Yêu cầu: Viết chương trình nhập vào số nguyên dương N, hãy liệt kê ra màn hình n số Nguyên tố đầu tiên.

0 bình luận về “Bài 1: Yêu cầu: Em hãy viết chương trình nhập vào một số tự nhiên N và kiểm tra xem có thể biểu diễn N bằng tổng của hai hay nhiều số tự nhiên liên t”

  1. BÀI 1: 

    var n,i,j,k,sum,dem,tong:longint;
        a:array [1..1000] of longint;
    begin
            k:=0;
            read(n);
                    for i:=1 to n-1 do
                            begin
                                    sum:=i;
                                    for j := i+1 to n-1 do
                                            begin
                                                    if (sum<n) then sum:=sum+j
                                                    else if (sum>n) then begin sum :=0; break; end
                                                    else if (sum = n) then begin k:=k+1; a[k]:=j;  break; end;
                                            end;
                            end;
            if k=0 then write(‘Khong the bieu dien’);
            for i:=1 to k do
                    begin
                            tong:=0;
                            while tong<n do
                                    begin
                                            dec(a[i]);
                                            tong:=tong+a[i];
                                    end;
                    end;
            for i:=1 to k do
                    begin
                            tong:=0;
                            while tong<n do
                                    begin
                                            write(a[i],’ ‘);
                                            inc(a[i]);
                                            tong:=tong+a[i];
                                    end;
                            writeln;
                    end;
            readln;
    end.

    BÀI 2:

    var n,i,dem:longint;
    function checkprime(i:longint):boolean;
    var c:longint;
    begin
            if i=1 then exit(false);
            if i=2 then exit(true);
            for c:=2 to trunc(sqrt(n)) do if i mod c = 0 then exit(false) else exit(true);
    end;
    begin
            read(n);
            while dem<n do

                   begin

                                 if checkprime(inc(i)) then write(i,’ ‘);

                                 inc(dem);

                   end;  
            readln;
    end.

    Bình luận
  2. Bài 2:

    function snt(x:integer):boolean;
    var i:integer;
    begin
       snt:=true;
       for i:=2 to trunc(sqrt(x)) do
       if x mod i=0 then snt:=false;
    end;
    var n,i,d:integer;
    begin
       write(‘N = ‘); readln(n);
       d:=0; i:=2;
       while d<n do
       begin
          if snt(i)=true then 
          begin
             writeln(i);
             inc(d);
          end;
          inc(i);
        end;
       readln
    end.

    Bài 1 vẫn đang cố gắng… @@ 

    Bình luận

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