Nội dung chính
In dãy số nguyên tố từ 1 tới 500.
Program tim_so_nguyen; Uses crt ; Const n = 500; Var i,k,j:integer; kt:boolean; Begin clrscr; Write(2:4,3:4); For j:=4 to n do Begin i:=2; while (j mod i)<>0 do i:=i+1; if i=j then write(j:4); End; {for} Readln; End.
Số nguyên tố
Để xác định một số có phải là nguyên tố không ta tiến hành chia thử cho 2,3,4,5,6… vòng lặp while khi số cần kiểm tra(j) chia không hết cho số thử (i) thì tiến hành chia cho số tiếp theo i tăng lên 1. Vòng lặp sẽ kết thúc khi j chia hết cho 1 số nào đó. Hoặc i sẽ tăng từ từ cho tới khi bằng j, lúc này vòng lặp sẽ thoát và nếu i tăng tới j thì j là số nguyên tố.
Lấy ví dụ số 7 ta sẽ phải chia cho 2, 3, 4, 5, 6, 7
Ví dụ số 9 ta chia 2, 3 là kết thúc vì 9 chia hết cho 3.
Ta có thể rút ngắn số lần lặp bằng cách giới hạn giá trị của i, một số chỉ có thể chia hết cho số nhỏ hơn hoặc bằng căn bậc hai SQRT của nó. Ví dụ 16 chỉ có thể chia hết tới 4 thôi, lớn hơn 4 thì chắc chắn là không chia hết. Ý tưởng là như vậy, các bạn tự hoàn chỉnh bài in dãy số nguyên tố nhé.
Ngoài ra khi học tới hàm rồi thì nên viết một hàm để kiểm tra số nguyên tố ví dụ:
Function KiemTra(n:integer):boolean ;
Thầy có thể cho em cách in ra các số nguyên tố bé hơn 100 và tổng của chúng bằng mswlogo được không ạ
Trên fanpage có giải đề này rồi, nhưng không nhớ của tỉnh nào, bạn chịu khó tìm trước cho nhanh.
dãy f là dãy fibonaci nếu : f0=0;f1=1;f2=1;f3=2;….;f(n)=f(n-1)+f(n-2) với n>=2 xây dựng chương trình pascal để tìm dãy fibonaci ở trên ( ví dụ : n=5 kết quả là 0 1 1 2 3 5 )
Bạn nên xem lại câu hỏi của mình nhé!
cho em hỏi là kiều dự lieu Boolean là gì vậy
đó là kiểu logic chỉ nhận giá trị đúng true hoặc sai false.
Lấy số 2 thì chia cho mấy???
Begin
clrscr;
Write(2:4,3:4);
nhìn vào đấy thì thấy là viết ra 2 và 3 rồi, ko chia gì cả.
[…] Đây là một đề tương đối dễ, do đó chúng tôi sẽ trình bày bài ở dạng sử dụng hàm để các bạn tiếp nhận thêm kiến thức. Hàm ở đây tên là NT với tham trị đưa vào là một con số và hàm này sẽ kiểm tra xem số đó có phải là số nguyên tố hay không, việc kiểm tra được thực hiện qua vòng lặp tối ưu While (n mod i <> 0)and(i<Sqrt(n)), các bạn có thể xem lại bài in ra các số nguyên tố ở đây. […]