Python là một ngôn ngữ lập trình mạnh mẽ với nhiều tính năng, trong đó có vòng lặp for
, là một công cụ quan trọng để lặp qua và xử lý dữ liệu. Để hiểu sâu hơn về cách sử dụng vòng lặp for
, dưới đây là 20 bài tập thú vị mà bạn có thể thử qua.
In Ra Các Số Từ 1 Đến 10
Bài tập
Sử dụng vòng lặp for
để in ra các số từ 1 đến 10.
Hướng dẫn
Để in ra các số từ 1 đến 10 bằng vòng lặp for
trong Python, bạn có thể sử dụng hàm range()
để tạo một dãy số từ 1 đến 10 và sau đó lặp qua từng số trong dãy đó để in chúng ra màn hình. Dưới đây là cách bạn có thể thực hiện điều này:
for i in range(1, 11): |
Trong đoạn mã trên:
range(1, 11)
tạo ra một dãy số từ 1 đến 10 (đã bao gồm số 1 và không bao gồm số 11).- Vòng lặp
for
lặp qua từng số trong dãy này. - Mỗi số trong dãy được in ra màn hình.
Kết quả sẽ là in ra các số từ 1 đến 10 trên mỗi dòng.
Tính Tổng Các Số Từ 1 Đến 100
Bài tập
Sử dụng vòng lặp for
để tính tổng các số từ 1 đến 100.
Hướng dẫn
Để tính tổng các số từ 1 đến 100 bằng vòng lặp for
trong Python, bạn có thể sử dụng một biến để tích lũy tổng và lặp qua các số từ 1 đến 100 để cộng vào biến đó. Dưới đây là cách bạn có thể thực hiện điều này:
tong = 0 |
Trong đoạn mã trên:
- Chúng ta khởi tạo biến
tong
bằng 0 để tích lũy tổng. - Vòng lặp
for
lặp qua từng số trong dãy số từ 1 đến 100. - Mỗi số trong dãy được cộng vào biến
tong
. - Cuối cùng, chúng ta in ra tổng các số từ 1 đến 100.
In Ra Các Số Chẵn Từ 1 Đến 20
Bài tập
Sử dụng vòng lặp for
để in ra các số chẵn từ 1 đến 20.
Hướng dẫn
Để in ra các số chẵn từ 1 đến 20 bằng vòng lặp for
trong Python, bạn có thể sử dụng hàm range()
để tạo một dãy số từ 1 đến 20 và chỉ lặp qua các số chẵn trong dãy đó để in chúng ra màn hình. Dưới đây là cách bạn có thể thực hiện điều này:
for i in range(2, 21, 2): |
Trong đoạn mã trên:
range(2, 21, 2)
tạo ra một dãy số từ 2 đến 20 với bước nhảy là 2, nghĩa là chỉ lặp qua các số chẵn.- Vòng lặp
for
lặp qua từng số chẵn trong dãy này. - Mỗi số chẵn trong dãy được in ra màn hình.
Kết quả sẽ là in ra các số chẵn từ 1 đến 20 trên mỗi dòng.
In Ra Bảng Cửu Chương
Bài tập
Sử dụng vòng lặp for
để in ra bảng cửu chương từ 1 đến 10.
Hướng dẫn
Để in ra bảng cửu chương từ 1 đến 10 bằng vòng lặp for
trong Python, bạn có thể sử dụng hai vòng lặp lồng nhau. Vòng lặp ngoài sẽ duyệt qua các số từ 1 đến 10 (để in ra bảng cửu chương từ 1 đến 10), và vòng lặp trong sẽ duyệt qua các số từ 1 đến 10 để nhân với số trong bảng cửu chương. Dưới đây là cách bạn có thể thực hiện điều này:
for i in range(1, 11): |
Trong đoạn mã trên:
- Vòng lặp
for
bên ngoài lặp qua các số từ 1 đến 10 để xác định số trong bảng cửu chương. - Trong mỗi vòng lặp bên ngoài, chúng ta in ra tiêu đề của bảng cửu chương.
- Vòng lặp
for
bên trong lặp qua các số từ 1 đến 10 để nhân với số trong bảng cửu chương. - Mỗi lần lặp, chúng ta in ra phép tính và kết quả của phép nhân.
- Cuối cùng, chúng ta in một dòng trống để phân biệt giữa các bảng cửu chương.
Kết quả sẽ là in ra bảng cửu chương từ 1 đến 10, mỗi bảng cách nhau bởi một dòng trống.
Tính Giai Thừa
Bài tập
Sử dụng vòng lặp for
để tính giai thừa của một số nhập từ bàn phím.
Hướng dẫn
Để tính giai thừa của một số nhập từ bàn phím bằng vòng lặp for
trong Python, bạn có thể sử dụng một vòng lặp để nhân từng số từ 1 đến số nhập vào với nhau. Dưới đây là cách bạn có thể thực hiện điều này:
# Nhập số cần tính giai thừa từ bàn phím |
Trong đoạn mã trên:
- Chúng ta sử dụng hàm
input()
để nhập số cần tính giai thừa từ bàn phím và chuyển đổi nó thành một số nguyên bằng hàmint()
. - Khởi tạo biến
giai_thua
bằng 1 để tích lũy kết quả của các phép nhân. - Sử dụng vòng lặp
for
để lặp qua các số từ 1 đếnn
và nhân chúng với nhau để tính giai thừa. - Cuối cùng, chúng ta in kết quả giai thừa ra màn hình.
In Ra Các Ký Tự Trong Một Chuỗi
Bài tập
Sử dụng vòng lặp for
để in ra từng ký tự trong một chuỗi.
Hướng dẫn
Để in ra từng ký tự trong một chuỗi bằng vòng lặp for
trong Python, bạn có thể sử dụng vòng lặp để lặp qua từng ký tự trong chuỗi đó và in chúng ra màn hình. Dưới đây là cách bạn có thể thực hiện điều này:
chuoi = "Hello, World!" |
Trong đoạn mã trên:
- Biến
chuoi
chứa chuỗi cần in ra từng ký tự. - Vòng lặp
for
lặp qua từng ký tự trong chuỗichuoi
. - Mỗi ký tự trong chuỗi được lặp qua được lưu vào biến
ky_tu
. - Trong mỗi lần lặp, chúng ta in ra ký tự đó ra màn hình.
Kết quả sẽ là in ra từng ký tự trong chuỗi “Hello, World!” trên mỗi dòng.
Tìm Số Lớn Nhất Trong Một Danh Sách
Bài tập
Sử dụng vòng lặp for
để tìm số lớn nhất trong một danh sách.
Hướng dẫn
Để tìm số lớn nhất trong một danh sách bằng vòng lặp for
trong Python, bạn có thể sử dụng một biến để lưu số lớn nhất và duyệt qua từng phần tử trong danh sách để so sánh với số lớn nhất hiện tại. Dưới đây là cách bạn có thể thực hiện điều này:
danh_sach = [12, 45, 78, 23, 56, 89, 34] |
Trong đoạn mã trên:
- Biến
danh_sach
là danh sách chứa các số cần tìm số lớn nhất. - Biến
so_lon_nhat
được khởi tạo bằng phần tử đầu tiên của danh sách. - Vòng lặp
for
duyệt qua từng phần tử trong danh sách. - Mỗi lần lặp, chúng ta so sánh phần tử hiện tại với
so_lon_nhat
. Nếu phần tử hiện tại lớn hơnso_lon_nhat
, chúng ta cập nhậtso_lon_nhat
. - Cuối cùng, chúng ta in ra số lớn nhất trong danh sách.
Tính Tổng Các Phần Tử Trong Một Danh Sách
Bài tập
Sử dụng vòng lặp for
để tính tổng các phần tử trong một danh sách.
Hướng dẫn
Để tính tổng các phần tử trong một danh sách bằng vòng lặp for
trong Python, bạn có thể sử dụng một biến để tích lũy tổng và duyệt qua từng phần tử trong danh sách để cộng vào biến đó. Dưới đây là cách bạn có thể thực hiện điều này:
danh_sach = [10, 20, 30, 40, 50] |
Trong đoạn mã trên:
- Biến
danh_sach
là danh sách chứa các phần tử cần tính tổng. - Biến
tong
được khởi tạo bằng 0 để tích lũy tổng. - Vòng lặp
for
duyệt qua từng phần tử trong danh sách. - Mỗi lần lặp, chúng ta cộng phần tử hiện tại vào biến
tong
. - Cuối cùng, chúng ta in ra tổng của các phần tử trong danh sách.
Kiểm Tra Số Nguyên Tố
Bài tập
Sử dụng vòng lặp for
để kiểm tra xem một số có phải là số nguyên tố hay không.
Hướng dẫn
Để kiểm tra xem một số có phải là số nguyên tố hay không bằng vòng lặp for
trong Python, chúng ta có thể duyệt qua tất cả các số từ 2 đến căn bậc hai của số đó và kiểm tra xem có số nào chia hết cho số đó không. Nếu không có số nào chia hết cho số đó, thì số đó là số nguyên tố. Dưới đây là cách bạn có thể thực hiện điều này:
def kiem_tra_so_nguyen_to(n): |
Trong đoạn mã trên:
- Hàm
kiem_tra_so_nguyen_to(n)
nhận vào một sốn
và kiểm tra xem nó có phải là số nguyên tố hay không. - Trong vòng lặp
for
, chúng ta duyệt qua các số từ 2 đến căn bậc hai củan
. - Nếu có số nào chia hết cho
n
, tức làn
không phải là số nguyên tố và chúng ta trả vềFalse
. - Nếu không có số nào chia hết cho
n
, chúng ta trả vềTrue
. - Cuối cùng, chúng ta kiểm tra kết quả của hàm và in ra thông báo tương ứng. Trong ví dụ này, số 17 là một số nguyên tố.
In Ra Các Số Fibonacci
Bài tập
Sử dụng vòng lặp for
để in ra các số Fibonacci đầu tiên trong dãy Fibonacci.
Hướng dẫn
Để in ra các số Fibonacci đầu tiên trong dãy Fibonacci bằng vòng lặp for
trong Python, chúng ta có thể sử dụng một biến để lưu hai số Fibonacci đầu tiên (0 và 1), sau đó sử dụng một vòng lặp để tính toán và in ra các số Fibonacci tiếp theo. Dưới đây là cách bạn có thể thực hiện điều này:
# Số lượng số Fibonacci đầu tiên cần in ra |
Trong đoạn mã trên:
- Biến
so_luong
chứa số lượng số Fibonacci đầu tiên cần in ra. - Hai biến
a
vàb
được khởi tạo bằng 0 và 1 để lưu hai số Fibonacci đầu tiên. - Hai số Fibonacci đầu tiên (0 và 1) được in ra trước.
- Vòng lặp
for
tính và in ra các số Fibonacci tiếp theo. Trong mỗi lần lặp, chúng ta cập nhậta
vàb
để tính toán số Fibonacci kế tiếp. - Chúng ta sử dụng một biến
_
để thể hiện rằng biến này chỉ là một biến tạm thời không được sử dụng trong vòng lặp, chỉ cần lặpso_luong - 2
lần (vì đã in ra hai số Fibonacci đầu tiên trước đó).
Đảo Ngược Một Chuỗi
Bài tập
Sử dụng vòng lặp for
để đảo ngược một chuỗi.
Hướng dẫn
Để đảo ngược một chuỗi bằng cách sử dụng vòng lặp for
trong Python, bạn có thể lặp qua các ký tự của chuỗi theo thứ tự từ cuối về đầu và xây dựng một chuỗi mới bằng cách thêm các ký tự vào đầu của chuỗi mới. Dưới đây là cách bạn có thể thực hiện điều này:
def dao_nguoc_chuoi(chuoi): |
Output:
Chuỗi ban đầu: Hello, World! |
Trong hàm dao_nguoc_chuoi()
, chúng ta khởi tạo chuỗi chuoi_dao_nguoc
ban đầu là một chuỗi rỗng. Sau đó, chúng ta lặp qua từng ký tự trong chuoi
, bắt đầu từ ký tự cuối cùng đến ký tự đầu tiên. Trong mỗi lần lặp, chúng ta thêm ký tự hiện tại vào đầu của chuỗi chuoi_dao_nguoc
. Cuối cùng, chúng ta trả về chuỗi chuoi_dao_nguoc
đã được đảo ngược.
In Ra Bảng ASCII
Bài tập
Sử dụng vòng lặp for
để in ra bảng mã ASCII từ 0 đến 127.
Hướng dẫn
Để in ra bảng mã ASCII từ 0 đến 127 bằng vòng lặp for
trong Python, bạn có thể sử dụng vòng lặp để lặp qua các số từ 0 đến 127 và in ra ký tự tương ứng với mã ASCII của từng số. Dưới đây là cách thực hiện:
for i in range(128): |
Trong đó:
range(128)
tạo ra một chuỗi số từ 0 đến 127.chr(i)
trả về ký tự tương ứng với mã ASCII của sối
.
Dưới đây là đoạn mã hoàn chỉnh:
for i in range(128): |
Kết quả sẽ là in ra bảng mã ASCII từ 0 đến 127, với mỗi dòng hiển thị mã ASCII và ký tự tương ứng.
Tính Tổng Các Chữ Số Của Một Số
Bài tập
Sử dụng vòng lặp for
để tính tổng các chữ số của một số nhập từ bàn phím.
Hướng dẫn
Để tính tổng các chữ số của một số nhập từ bàn phím bằng vòng lặp for
trong Python, bạn có thể sử dụng phép chia lấy dư để lấy từng chữ số ra khỏi số đó và sau đó cộng các chữ số đó lại với nhau. Dưới đây là cách bạn có thể thực hiện điều này:
# Nhập số từ bàn phím |
Trong đoạn mã trên:
- Chúng ta sử dụng hàm
input()
để nhập số từ bàn phím và chuyển đổi nó thành một số nguyên bằng hàmint()
. - Biến
tong
được khởi tạo bằng 0 để tích lũy tổng các chữ số. - Trong vòng lặp
while
, chúng ta lặp qua các chữ số của số nhập vào. Mỗi lần lặp, chúng ta lấy chữ số cuối cùng ra khỏi số và cộng vào biếntong
, sau đó loại bỏ chữ số đó khỏi số. - Quá trình lặp tiếp tục cho đến khi số đó trở thành 0, tức là chúng ta đã lấy hết tất cả các chữ số của số nhập vào.
Kiểm Tra Số Hoàn Hảo
Bài tập
Sử dụng vòng lặp for
để kiểm tra xem một số có phải là số hoàn hảo hay không.
Hướng dẫn
Để kiểm tra xem một số có phải là số hoàn hảo hay không bằng vòng lặp for
trong Python, bạn có thể tính tổng của tất cả các ước số của số đó và so sánh tổng đó với chính số đó. Nếu tổng các ước số bằng số đó, thì số đó là số hoàn hảo.
Dưới đây là cách bạn có thể thực hiện điều này:
def kiem_tra_so_hoan_hao(so): |
Trong đoạn mã trên:
- Hàm
kiem_tra_so_hoan_hao(so)
nhận vào một sốso
và kiểm tra xem số đó có phải là số hoàn hảo hay không. - Chúng ta duyệt qua các số từ 1 đến số đó và tính tổng các ước số của số đó bằng cách sử dụng vòng lặp
for
. - Nếu tổng các ước số bằng số đó, chúng ta trả về
True
, ngược lại trả vềFalse
.
Kết quả sẽ là thông báo xác định xem số đó có phải là số hoàn hảo hay không. Trong ví dụ này, số 28 là một số hoàn hảo vì tổng các ước số của nó (1 + 2 + 4 + 7 + 14) bằng chính nó (28).
Tính Tổng Các Số Fibonacci
Bài tập
Sử dụng vòng lặp for
để tính tổng các số Fibonacci đầu tiên trong dãy Fibonacci.
Hướng dẫn
Để tính tổng của n số Fibonacci đầu tiên trong dãy Fibonacci bằng vòng lặp for
trong Python, bạn có thể sử dụng một vòng lặp để tính toán và tích lũy tổng của các số Fibonacci. Dưới đây là cách bạn có thể thực hiện điều này:
def tong_n_so_fibonacci(n): |
Trong đoạn mã trên:
- Hàm
tong_n_so_fibonacci(n)
được tạo để tính tổng của n số Fibonacci đầu tiên. - Ban đầu, chúng ta khởi tạo biến
fib1
vàfib2
là 0 và 1 tương ứng với hai số Fibonacci đầu tiên. - Chúng ta sử dụng một vòng lặp
for
để tính toán các số Fibonacci tiếp theo và tích lũy tổng của chúng. - Cuối cùng, chúng ta trả về tổng của n số Fibonacci đầu tiên.
Kết quả sẽ là tổng của n số Fibonacci đầu tiên được in ra màn hình. Trong ví dụ này, chúng ta tính tổng của 10 số Fibonacci đầu tiên.
Tính Lũy Thừa
Bài tập
Sử dụng vòng lặp for
để tính lũy thừa của một số.
Hướng dẫn
Để tính lũy thừa của một số bằng vòng lặp for
trong Python, bạn có thể sử dụng một vòng lặp để nhân số đó với chính nó n lần. Dưới đây là cách bạn có thể thực hiện điều này:
def luy_thua(x, n): |
Trong đoạn mã trên:
- Hàm
luy_thua(x, n)
nhận vào hai tham số là số cần tính lũy thừa (x
) và số mũ (n
). - Chúng ta khởi tạo biến
ket_qua
bằng 1, vì mọi số mũ của 1 đều là 1. - Chúng ta sử dụng vòng lặp
for
để nhân sốx
với chính nón
lần. - Cuối cùng, chúng ta trả về
ket_qua
- tức là kết quả của phép tính lũy thừa.
Kết quả sẽ là lũy thừa của số so
với số mũ mu
được in ra màn hình. Trong ví dụ này, chúng ta tính lũy thừa của số 2 với số mũ 5.
Tìm Ước Số Chung Lớn Nhất (ƯCLN)
Bài tập
Sử dụng vòng lặp for
để tìm ước số chung lớn nhất của hai số.
Hướng dẫn
Để tìm ước số chung lớn nhất (ƯCLN) của hai số bằng vòng lặp for
trong Python, bạn có thể sử dụng một phương pháp gọi là thuật toán Euclid. Thuật toán này dựa trên việc lặp qua các bước tính toán cho đến khi một trong hai số là 0. Khi một trong hai số là 0, số còn lại sẽ là ước số chung lớn nhất.
Dưới đây là cách bạn có thể thực hiện điều này:
def uoc_so_chung_lon_nhat(a, b): |
Trong đoạn mã trên:
- Hàm
uoc_so_chung_lon_nhat(a, b)
nhận vào hai sốa
vàb
và sử dụng thuật toán Euclid để tìm ước số chung lớn nhất của chúng. - Trong vòng lặp
while
, chúng ta thực hiện các phép gán để chia sốa
cho sốb
và gán kết quả vàob
, đồng thời gánb
thành phần dư của phép chia trước đó. - Khi
b
trở thành 0, ta trả vềa
, tức là số còn lại là ước số chung lớn nhất.
Kết quả sẽ là ước số chung lớn nhất của hai số so1
và so2
. Trong ví dụ này, ước số chung lớn nhất của 24 và 36 là 12.
Kiểm Tra Số Armstrong
Bài tập
Sử dụng vòng lặp for
để kiểm tra xem một số có phải là số Armstrong hay không.
Hướng dẫn
Để kiểm tra xem một số có phải là số Armstrong hay không bằng vòng lặp for
trong Python, bạn có thể thực hiện các bước sau:
- Chia số đó thành các chữ số riêng lẻ.
- Tính lũy thừa của mỗi chữ số và tính tổng các lũy thừa này.
- So sánh tổng này với số ban đầu để xác định xem nó có phải là số Armstrong hay không.
Dưới đây là cách bạn có thể thực hiện điều này:
def kiem_tra_armstrong(so): |
Trong đoạn mã trên:
- Hàm
kiem_tra_armstrong(so)
nhận vào một số và kiểm tra xem nó có phải là số Armstrong hay không. - Chúng ta chuyển số thành chuỗi để dễ dàng truy cập từng chữ số riêng lẻ.
- Sau đó, chúng ta tính số chữ số trong số ban đầu và lưu vào biến
so_chu_so
. - Trong vòng lặp
for
, chúng ta tính tổng các lũy thừa của từng chữ số bằng cách sử dụng hàm**
để tính lũy thừa. - Cuối cùng, chúng ta so sánh tổng này với số ban đầu để xác định xem nó có phải là số Armstrong hay không.
Kiểm Tra Số Palindrome
Bài tập
Sử dụng vòng lặp for
để kiểm tra xem một số có phải là số Palindrome hay không.
Hướng dẫn
Để kiểm tra xem một số có phải là số Palindrome hay không bằng vòng lặp for
trong Python, bạn có thể thực hiện các bước sau:
- Chuyển số thành chuỗi để dễ dàng truy cập từng chữ số.
- So sánh các ký tự ở hai đầu của chuỗi để xác định xem chuỗi đó có phải là Palindrome hay không.
Dưới đây là cách bạn có thể thực hiện điều này:
def kiem_tra_palindrome(so): |
Trong đoạn mã trên:
- Hàm
kiem_tra_palindrome(so)
nhận vào một số và kiểm tra xem nó có phải là số Palindrome hay không. - Chúng ta chuyển số thành chuỗi để dễ dàng truy cập từng chữ số.
- Trong vòng lặp
for
, chúng ta so sánh ký tự ở hai đầu của chuỗi để kiểm tra xem chuỗi đó có phải là Palindrome hay không. - Nếu mọi ký tự ở hai đầu đều giống nhau, thì số đó là Palindrome và trả về
True
, ngược lại trả vềFalse
.
Sắp Xếp Danh Sách
Bài tập
Sử dụng vòng lặp for
để sắp xếp một danh sách theo thứ tự tăng dần hoặc giảm dần.
Hướng dẫn
Để sắp xếp một danh sách theo thứ tự tăng dần hoặc giảm dần bằng vòng lặp for
trong Python, bạn có thể sử dụng các thuật toán sắp xếp như Bubble Sort hoặc Selection Sort. Dưới đây là cách bạn có thể thực hiện điều này bằng thuật toán Bubble Sort:
- Sắp xếp tăng dần:
def sap_xep_tang_dan(danh_sach): |
- Sắp xếp giảm dần:
def sap_xep_giam_dan(danh_sach): |
Trong cả hai trường hợp, chúng ta sử dụng một vòng lặp for
lồng nhau để duyệt qua từng phần tử của danh sách và thực hiện việc so sánh và hoán đổi các phần tử nếu cần thiết để đảm bảo danh sách được sắp xếp theo thứ tự tăng dần hoặc giảm dần.
Kết luận
Trên đây Kiyoshi đã giới thiệu một số bài tập vòng lặp for trong python rồi. Với những bài tập trên, bạn có thể thực hành và nắm vững cách sử dụng vòng lặp for
trong Python, từ đó nâng cao kỹ năng lập trình của mình và hiểu sâu hơn về ngôn ngữ lập trình này.
URL Link
HOME › python cơ bản - lập trình python cho người mới bắt đầu>>08. vòng lặp trong python