Kiểm tra giúp mik với ja, mik sai chỗ nào mà nó không ra số lượng số nguyên tố vậy ạ? Uses CRT; Var a: Array [1..100] of Integer; i,n,p,s: Integer; Function ktnt (n: Integer): Boolean; Var i,d,p: Integer; Begin d:=0; If n<2 then ktnt:=false Else Begin p:=0; For i:=1 to n do If n mod i=0 then d:=d+1; End; If d=2 then ktnt:=true Else ktnt:=false; End; Function kthh (n:Integer): Boolean; Var i,s: Integer; Begin s:=0; For i:=1 to n div 2 do If n mod i=0 then s:=s+i; If s=n then kthh:=true Else kthh:=false; End; Begin ClrScr; Write ( 'Nhap so nguyen n: '); Readln (n); For i:=1 to n do Begin Write ( 'Nhap phan tu thu ',i,': '); Readln (a[i]); End; Write ( 'Cac so nguyen to co trong day tren la: ' ); For i:=1 to n do Begin If ktnt (a[i])=true then Begin Write (a[i],' '); End; End; For i:=1 to n do If ktnt (a[i])=true then p:=p+1; Writeln; Write ( 'Cac so hoan hao co trong day tren la: '); For i:=1 to n do If kthh (a[i])=true then Write(a[i],' '); Readln; End.

2 câu trả lời

bài của bạn thiếu câu lệnh in ra số các số nguyên tố nha

mình bổ sung thêm vào rùi đó

Uses CRT;
Var a: Array [1..100] of Integer;
i,n,p,s: Integer;
Function ktnt (n: Integer): Boolean;
Var i,d,p: Integer;
Begin
  d:=0;
  If n<2 then
   ktnt:=false
  Else
   Begin
    p:=0;
    For i:=1 to n do
     If n mod i=0 then
      d:=d+1;
   End;
  If d=2 then
   ktnt:=true
  Else
   ktnt:=false;
End;
Function kthh (n:Integer): Boolean;
Var i,s: Integer;
Begin
  s:=0;
  For i:=1 to n div 2 do
    If n mod i=0 then
     s:=s+i;
    If s=n then
     kthh:=true
    Else
     kthh:=false;
End;
Begin
  ClrScr;
  Write ( 'Nhap so nguyen n: ');
  Readln (n);
  For i:=1 to n do
   Begin
    Write ( 'Nhap phan tu thu ',i,': ');
    Readln (a[i]);
   End;
  Write ( 'Cac so nguyen to co trong day tren la: ' );
  For i:=1 to n do
   Begin
    If ktnt (a[i])=true then
     Begin
      Write (a[i],' ');
     End;
   End;
  For i:=1 to n do
   If ktnt (a[i])=true then
   p:=p+1;
  Writeln;
  writeln('Co ',p,' so nguyen to');
  Write ( 'Cac so hoan hao co trong day tren la: ');
  For i:=1 to n do
    If kthh (a[i])=true then
     Write(a[i],' ');
  Readln;
End.
Uses CRT;
Var a: Array [1..100] of Integer;
i,n,p,s: Integer;
Function ktnt (n: Integer): Boolean;
Var i,d,p: Integer;
Begin
  d:=0;
  If n<2 then
   ktnt:=false
  Else
   Begin
    p:=0;
    For i:=1 to n do
     If n mod i=0 then
      d:=d+1;
   End;
  If d=2 then
   ktnt:=true
  Else
   ktnt:=false;
End;
Function kthh (n:Integer): Boolean;
Var i,s: Integer;
Begin
  s:=0;
  For i:=1 to n div 2 do
    If n mod i=0 then
     s:=s+i;
    If s=n then
     kthh:=true
    Else
     kthh:=false;
End;
Begin
  ClrScr;
  Write ( 'Nhap so nguyen n: ');
  Readln (n);
  For i:=1 to n do
   Begin
    Write ( 'Nhap phan tu thu ',i,': ');
    Readln (a[i]);
   End;
  Write ( 'Cac so nguyen to co trong day tren la: ' );
  For i:=1 to n do
   Begin
    If ktnt (a[i])=true then
     Begin
      Write (a[i],' ');
     End;
   End;
  For i:=1 to n do
   If ktnt (a[i])=true then
   p:=p+1;
  Writeln;
  writeln('Co ',p,' so nguyen to');
  Write ( 'Cac so hoan hao co trong day tren la: ');
  For i:=1 to n do
    If kthh (a[i])=true then
     Write(a[i],' ');
  Readln;
End.


Pascal là ngôn ngữ khá cũ, trong thực tế nó không còn được sử dụng phổ biến như trước nữa. So với các ngôn ngữ lập trình script hiện đại thì Pascal khá dài dòng, mức độ trừu tượng cao và cách code khá giống với ngôn ngữ lập trình C. Hầu hết các chương trình C đều có thể dịch được sang Pascal mà chỉ bị thay đổi về cú pháp chứ không làm thay đổi cấu trúc. Mà C thì là một trong những ngôn ngữ lập trình rất phổ biến, do đó nắm được Pascal bạn sẽ tiếp cận C tốt hơn. Nó cũng buộc bạn phải luôn nghĩ về kiểu dữ liệu, điều này sẽ giúp các lập trình viên mới học được một thói quen tuyệt vời khi code.

Và vì không có nhiều giá trị thương mại, Pascal được sử dụng chủ yếu để dạy nhập môn lập trình hoặc dành cho những người yêu thích Pascal tìm tòi. Nếu bạn thích lập trình, mới học nhưng không "hấp thụ" được Pascal có thể thử Python nhé.

Dưới đây là tổng hợp một số bài tập Pascal từ cơ bản đến phức tạp hy vọng việc học của bạn sẽ dễ dàng hơn đôi chút.

Bài 1: In số chẵn ra màn hình

Viết chương trình nhập vào 1 số N nguyên dương và in ra màn hình các số chẵn từ 0 đến N, sao cho mỗi số chiếm 4 vị trí và 1 dòng có 15 số.