Viết ct nhập một số nguyên M từ bàn phím với 2 <M<2018 a) In ra màn hình số nguyên tố thứ M Vd: dữ liệu vào: M= 5 kết quả ra: số nguyên tố ở vị trí thứ 5 là 11 Pascal thôi nhé

2 câu trả lời

uses crt;
var i,m,dem:longint;
function ktnt(a:longint):boolean;
var i:longint;
begin
   i:=2;
   while a mod i<>0 do inc(i);
   ktnt:=i=a;
end;
begin
clrscr;
   repeat write('M=');readln(m); until(2<m)and(m<2018);
   i:=1;
   repeat
      inc(i);
      if ktnt(i) then inc(dem);
   until dem=m;
   writeln(i);
readln
end.

///////////////////////////////////////////

Giải thích:

Nhập:nhập cho đến khi thỏa mãn điều kiện với repeat until

Tăng i lên nếu i là số nguyên tố thì tăng đếm lên, cứ là việc này cho đến khi dem =m tức là i là số nguyên tố thứ m.

Sau đó xuất i!

Nếu có gì không hiểu hay code mình sai thì để lại bình luận nhé!

Một số text cho bạn tham khảo:

program oken;
uses crt;
var i,j,m,d1,d2: integer;
begin
    clrscr;
    repeat
        write('Nhap M: '); readln(m);
    until (m>=2) and (m<=2018);
    d1:=0;
    for i:=2 to 2018 do
        begin
            d2:=0;
            for j:=1 to (i div 2) do
                if (i mod j=0) then
                    d2:=d2+1;
            if (d2=1) then
                d1:=d1+1;
            if (d1=m) then
                begin
                    write('So nguyen to o vi tri thu ',m,': ',i);
                    break;
                end;
        end;
    readln;
end.