Bài 7. Câu lênh lặp

NN

2. VCT kiểm tra 1 số n có phải là số nguyên tố hay không

Ý tưởng cho i chạy từ 1 đến phần nguyên căn bậc hai của n

- Nếu n chia hết cho i trong bất cứ lần lặp nào thì n không phải là số nguyên tố.

- Nếu n không chia hết cho i trong bất cứ lần lập nào thì n là số nguyên tố

* Phần nguyên căn bậc 2 của n viết là trunc (sqrt(n))

NN
27 tháng 11 2018 lúc 16:53

nếu thế thì phải cho chạy từ 2 bạn ạ

ý tưởng của mình: chỉ cần n chia hết cho 1 trong các số trong vòng lặp thì sẽ lập tức thoát khỏi vòng lặp và ko kiểm tra nữa, còn nếu nó ko chia hết cho số nào thì nó là số nguyên tố

var n,i:longint;

bl:boolean;

begin

bl:=true;

write('n=');readln(n);

for i:=2 to trunc(sqrt(n)) do

if n mod i=0 then

begin

bl:=false;

break;

<break là lệnh để thoát ra khỏi vòng lặp khi gặp ước khác 1 của n>

end;

if bl=true then write('la so nguyen to')

else write('khong la so nguyen to');

readln;

end.

Bình luận (0)