Đăng Nhập
Latest topics
Thống Kê
Hiện có 1 người đang truy cập Diễn Đàn, gồm: 0 Thành viên, 0 Thành viên ẩn danh và 1 Khách viếng thăm Không
Số người truy cập cùng lúc nhiều nhất là 48 người, vào ngày 2/8/2017, 00:32
Statistics
Diễn Đàn hiện có 74 thành viênChúng ta cùng chào mừng thành viên mới đăng ký: AlinaL92956302
Tổng số bài viết đã gửi vào diễn đàn là 107 in 53 subjects
Bài 5: Vòng lặp biết trước số lần lặp(For .. to .. do)
3 posters
Trang 1 trong tổng số 1 trang
Bài 5: Vòng lặp biết trước số lần lặp(For .. to .. do)
A. Lý thuyết
Khi giải quyết một bài toán nào đó mà cần phải lặp đi, lặp lại một công việc, ta sẽ cần đến câu lệnh lặp. Có hai dạng: Lặp với số lần biết trước: lệnh For, lặp với sớ lần chưa biết trước: lệnh Repeat, While
- Dạng tiến
+ Cấu trúc: For (biến:=giá trị đầu) to (giá trị cuối) do
(Câu lệnh)
+ Ý nghĩa: Biến nhận giá trị đầu và kiểm tra có nhỏ hơn hoặc bằng giá trị cuối hay không? nếu đúng thì thực hiện câu lệnh. tiếp tục tăng giá trị đầu lên 1 đơn vị và kiểm tra như trên nếu đúng thì thực hiện câu lệnh, cứ tiếp tục như thế đến khi biến lớn hơn giá trị cuối thì ngừng vòng lặp.
+ VD: for i:=1 to 10 do
+ Chú ý:
* Giá trị đầu và cuối phải là số nguyên hoặc kí tự
* Giá trị đầu phải nhỏ hơn hoặc bằng giá trị cuối
* Nếu phải thực hiện nhiều câu lệnh, cần đặt các câu lệnh đó trong cặp từ khóa Begin .. end;
* Số lần lặp được tính bằng cách: giá trị cuối - giá trị đầu +1
- Dạng lùi
+ Cấu trúc: For (biến:=giá trị đầu) downto (giá trị cuối) do
(Câu lệnh)
+ Ý nghĩa: Biến nhận giá trị đầu và kiểm tra có lớn hơn hoặc bằng giá trị cuối hay không? nếu đúng thì thực hiện câu lệnh. tiếp tục tăng giá trị đầu lên 1 đơn vị và kiểm tra như trên nếu đúng thì thực hiện câu lệnh, cứ tiếp tục như thế đến khi biến nhỏ hơn giá trị cuối thì ngừng vòng lặp.
+ VD: for i:=10 downto 1 do
+ Chú ý:
* Giá trị đầu và cuối phải là số nguyên hoặc kí tự
* Giá trị đầu phải lớn hơn hoặc bằng giá trị cuối
* Nếu phải thực hiện nhiều câu lệnh, cần đặt các câu lệnh đó trong cặp từ khóa Begin .. end;
* Số lần lặp được tính bằng cách: giá trị đầu- giá trị cuối +1
B. Bài tập
Bài 1: Viết chương trình tính tổng các số từ 1 đến 100
Bài 2: Cho số nguyên a được nhập từ bàn phím, kiểm tra xem a có phải là số nguyên tố hay không?
Gợi ý:
- Cho vòng lặp for chạy từ 1 đến a
- Đếm xem a chia hết mấy số( các số từ 1 -> a )
- Nếu chia hết cho 2 số thì là số nguyên tố, ngược lại thì không phải
VD: a = 3, kết quả: là số nguyên tố
a = 4, kết quả: không là số nguyên tố
Bài 3: Cho số nguyên dương n, hãy liệt kê ra màn hình những số chẵn từ 1 đến n
Gợi ý
- Nhập số n
- Cho vòng lặp for chạy từ 1 đến n
- Kiểm tra nếu là số chẵn thì in ra màn hình(từ khóa Mod là chia lấy phần dư)
VD: n = 10, kết quả: 2 4 6 8 10
Bài 4: Cho hai số nguyên m,n(m<n). Hãy tính tổng các số chia hết cho 3 từ m đến n
Gợi ý:
- Nhập m,n
- Cho vòng lặp chạy từ m đến n
- Nếu số nào chia hết cho 3 thì tính tổng
VD: m = 5, n = 14, kết quả tổng = 6+9+12 = 27
Bài 5: Hãy in ra màn hình các số lẻ từ 2 đến 100 theo thứ tự giảm giần
Gợi ý:
- Dùng vòng lặp for dạng lùi(for downto do)
- Kiểm tra nếu là số lẻ thì in ra màn hình
Bài 6: CHo số tự nhiên a. Hãy cho biết trong a số tự nhiên đầu tiên có bao nhiêu:
- Số chia hết cho 2
- Là bội của 3
- Chia hết cho cả 2 và 3
VD: a = 20, kết quả:
số chia hết cho 2 là 10 (2 4 6 8 10 12 14 16 18 20)
Bội của 3 là: 6 (3 6 9 12 15 18)
Chia hết cho cả 2 và 3 la: 3 (6 12 18)
Bai 7: Sữ dụng vòng lặp For in các số từ 1 đến 100 theo mẫu:
1 2 3 4 5 6 7 8 9 10
11 12 13 14 15 16 17 18 19 20
......
91 92 93 94 95 96 97 98 99 100
Gợi ý:
+ Cách 1: Dùng vòng lặp For lồng nhau, một vòng lặp cho dòng, một vòng lặp cho cột.
+ Cách 2: Dùng 1 vòng lặp for và trong vòng lặp cần xác định khi nào thì xuống hàng(lệnh writeln; để xuống hàng).
Bài 8: Hãy in tất cả các số nguyên tố nhỏ hơn hoặc bằng a(a là số nguyên dương)
Gợi ý:
+ Dùng vòng lặp từ 2 đến a
+ kiểm tra từng giá trị có phải là số nguyên tố không(giống bài 2), nếu đúng thì in ra.
VD: a = 20, kết quả: 2 3 5 7 11 13 17 19
Bài 9: Một số có tổng các ước nhỏ hơn nó, bằng chính nó được gọi là số hoàn chỉnh
(VD: 6 có các ước nhỏ hơn nó là: 1, 2, 3. Tổng là: 1 + 2 + 3 = 6).
Viết chương trình xét xem một số a được nhập từ bàn phím có phải là số hoàn chỉnh không?
Gợi ý:
+ Nhập a
+ Gán biến tổng = 0
+ Cho i chạy từ 1 đến a-1, nếu i là ước của a thì cộng vào tổng
+ Nếu a = tổng thì a là số hoàn chỉnh.
VD: số 6 là số hoàn chỉnh.
Bài 10: Nhập m từ bàn phím. Hãy liệt kê tất cả các số hoàn chỉnh từ 1 đến m(m nguyên dương)
Gợi ý:
+ Nhập m
+ Chạy vòng lặp từ 1 đến m
+ Kiểm tra xem mỗi số tứ 1 đến m có là số hoàn chỉnh không?(làm giống bài 9)
VD: m = 100, Liệt kê các số hoàn chỉnh từ 1 đến 100
Khi giải quyết một bài toán nào đó mà cần phải lặp đi, lặp lại một công việc, ta sẽ cần đến câu lệnh lặp. Có hai dạng: Lặp với số lần biết trước: lệnh For, lặp với sớ lần chưa biết trước: lệnh Repeat, While
- Dạng tiến
+ Cấu trúc: For (biến:=giá trị đầu) to (giá trị cuối) do
(Câu lệnh)
+ Ý nghĩa: Biến nhận giá trị đầu và kiểm tra có nhỏ hơn hoặc bằng giá trị cuối hay không? nếu đúng thì thực hiện câu lệnh. tiếp tục tăng giá trị đầu lên 1 đơn vị và kiểm tra như trên nếu đúng thì thực hiện câu lệnh, cứ tiếp tục như thế đến khi biến lớn hơn giá trị cuối thì ngừng vòng lặp.
+ VD: for i:=1 to 10 do
+ Chú ý:
* Giá trị đầu và cuối phải là số nguyên hoặc kí tự
* Giá trị đầu phải nhỏ hơn hoặc bằng giá trị cuối
* Nếu phải thực hiện nhiều câu lệnh, cần đặt các câu lệnh đó trong cặp từ khóa Begin .. end;
* Số lần lặp được tính bằng cách: giá trị cuối - giá trị đầu +1
- Dạng lùi
+ Cấu trúc: For (biến:=giá trị đầu) downto (giá trị cuối) do
(Câu lệnh)
+ Ý nghĩa: Biến nhận giá trị đầu và kiểm tra có lớn hơn hoặc bằng giá trị cuối hay không? nếu đúng thì thực hiện câu lệnh. tiếp tục tăng giá trị đầu lên 1 đơn vị và kiểm tra như trên nếu đúng thì thực hiện câu lệnh, cứ tiếp tục như thế đến khi biến nhỏ hơn giá trị cuối thì ngừng vòng lặp.
+ VD: for i:=10 downto 1 do
+ Chú ý:
* Giá trị đầu và cuối phải là số nguyên hoặc kí tự
* Giá trị đầu phải lớn hơn hoặc bằng giá trị cuối
* Nếu phải thực hiện nhiều câu lệnh, cần đặt các câu lệnh đó trong cặp từ khóa Begin .. end;
* Số lần lặp được tính bằng cách: giá trị đầu- giá trị cuối +1
B. Bài tập
Bài 1: Viết chương trình tính tổng các số từ 1 đến 100
Bài 2: Cho số nguyên a được nhập từ bàn phím, kiểm tra xem a có phải là số nguyên tố hay không?
Gợi ý:
- Cho vòng lặp for chạy từ 1 đến a
- Đếm xem a chia hết mấy số( các số từ 1 -> a )
- Nếu chia hết cho 2 số thì là số nguyên tố, ngược lại thì không phải
VD: a = 3, kết quả: là số nguyên tố
a = 4, kết quả: không là số nguyên tố
Bài 3: Cho số nguyên dương n, hãy liệt kê ra màn hình những số chẵn từ 1 đến n
Gợi ý
- Nhập số n
- Cho vòng lặp for chạy từ 1 đến n
- Kiểm tra nếu là số chẵn thì in ra màn hình(từ khóa Mod là chia lấy phần dư)
VD: n = 10, kết quả: 2 4 6 8 10
Bài 4: Cho hai số nguyên m,n(m<n). Hãy tính tổng các số chia hết cho 3 từ m đến n
Gợi ý:
- Nhập m,n
- Cho vòng lặp chạy từ m đến n
- Nếu số nào chia hết cho 3 thì tính tổng
VD: m = 5, n = 14, kết quả tổng = 6+9+12 = 27
Bài 5: Hãy in ra màn hình các số lẻ từ 2 đến 100 theo thứ tự giảm giần
Gợi ý:
- Dùng vòng lặp for dạng lùi(for downto do)
- Kiểm tra nếu là số lẻ thì in ra màn hình
Bài 6: CHo số tự nhiên a. Hãy cho biết trong a số tự nhiên đầu tiên có bao nhiêu:
- Số chia hết cho 2
- Là bội của 3
- Chia hết cho cả 2 và 3
VD: a = 20, kết quả:
số chia hết cho 2 là 10 (2 4 6 8 10 12 14 16 18 20)
Bội của 3 là: 6 (3 6 9 12 15 18)
Chia hết cho cả 2 và 3 la: 3 (6 12 18)
Bai 7: Sữ dụng vòng lặp For in các số từ 1 đến 100 theo mẫu:
1 2 3 4 5 6 7 8 9 10
11 12 13 14 15 16 17 18 19 20
......
91 92 93 94 95 96 97 98 99 100
Gợi ý:
+ Cách 1: Dùng vòng lặp For lồng nhau, một vòng lặp cho dòng, một vòng lặp cho cột.
+ Cách 2: Dùng 1 vòng lặp for và trong vòng lặp cần xác định khi nào thì xuống hàng(lệnh writeln; để xuống hàng).
Bài 8: Hãy in tất cả các số nguyên tố nhỏ hơn hoặc bằng a(a là số nguyên dương)
Gợi ý:
+ Dùng vòng lặp từ 2 đến a
+ kiểm tra từng giá trị có phải là số nguyên tố không(giống bài 2), nếu đúng thì in ra.
VD: a = 20, kết quả: 2 3 5 7 11 13 17 19
Bài 9: Một số có tổng các ước nhỏ hơn nó, bằng chính nó được gọi là số hoàn chỉnh
(VD: 6 có các ước nhỏ hơn nó là: 1, 2, 3. Tổng là: 1 + 2 + 3 = 6).
Viết chương trình xét xem một số a được nhập từ bàn phím có phải là số hoàn chỉnh không?
Gợi ý:
+ Nhập a
+ Gán biến tổng = 0
+ Cho i chạy từ 1 đến a-1, nếu i là ước của a thì cộng vào tổng
+ Nếu a = tổng thì a là số hoàn chỉnh.
VD: số 6 là số hoàn chỉnh.
Bài 10: Nhập m từ bàn phím. Hãy liệt kê tất cả các số hoàn chỉnh từ 1 đến m(m nguyên dương)
Gợi ý:
+ Nhập m
+ Chạy vòng lặp từ 1 đến m
+ Kiểm tra xem mỗi số tứ 1 đến m có là số hoàn chỉnh không?(làm giống bài 9)
VD: m = 100, Liệt kê các số hoàn chỉnh từ 1 đến 100
Được sửa bởi Admin ngày 16/1/2015, 17:09; sửa lần 9.
Re: Bài 5: Vòng lặp biết trước số lần lặp(For .. to .. do)
bai 1:
program tong;
uses crt;
var i,s:integer;
begin
clrscr;
s:=0;
for i:=1 to 100 do
s:=s+i;
writeln('tong la ',s);
readln;
end.
program tong;
uses crt;
var i,s:integer;
begin
clrscr;
s:=0;
for i:=1 to 100 do
s:=s+i;
writeln('tong la ',s);
readln;
end.
lethanhnhan9a3- Cấp 1
- Tổng số bài gửi : 11
Points : 12
Reputation : 1
Join date : 20/01/2015
Re: Bài 5: Vòng lặp biết trước số lần lặp(For .. to .. do)
bai 1
program tinh_tong;
uses crt;
var a,tong: integer;
begin
tong:=0;
for a:=1 to 100 do tong:=tong+a;
writeln(' tong cac so tu den 100 la:', tong);
end.
program tinh_tong;
uses crt;
var a,tong: integer;
begin
tong:=0;
for a:=1 to 100 do tong:=tong+a;
writeln(' tong cac so tu den 100 la:', tong);
end.
crazy- Cấp 1
- Tổng số bài gửi : 10
Points : 10
Reputation : 0
Join date : 13/11/2015
Age : 21
Đến từ : Cà Mau
Trang 1 trong tổng số 1 trang
Permissions in this forum:
Bạn không có quyền trả lời bài viết
|
|
2/2/2016, 18:55 by crazy
» Bài 3: Câu lệnh điều kiện(if .. then ..)
17/1/2016, 20:30 by TranAi
» Bài 2: Nhập dữ liệu vào biến(Readln)
3/1/2016, 16:25 by crazy
» Bài 4: Cấu trúc rẽ nhánh(Case .. of)
29/11/2015, 18:11 by TranAi
» Bài 1: Lệnh thông báo ra màn hình(Write)
19/11/2015, 14:45 by caodao
» Hướng dẫn Ghost HDD không cần đĩa CD
12/6/2015, 16:44 by duchiep0123
» Bài tập tổng hợp
15/4/2015, 19:23 by TranAi
» Bàn ghế tre – cafe, nhà hàng giá xuất xưởng chỉ với 380k/1b
18/7/2014, 09:42 by hoaithuong
» Bài thuốc truyền đời chữa bệnh viêm gan B và xơ gan cổ trướng của lương y nức tiếng Hà thành
27/5/2014, 10:30 by hatcatvothuong