Bài 20: Câu Lệnh Lặp For | Tin Học 10 | Chủ đề 5: Giải quyết vấn đề với sự trợ giúp của máy tính - Lớp 10 - Kết Nối Tri Thức Với Cuộc Sống

Kết nối tri thức Tin học 10 Chủ đề 5: Giải quyết vấn đề với sự trợ giúp của máy tính Bài 20: Câu Lệnh Lặp For


Trang 105

MỤC TIÊU

SAU BÀI NÀY EM SẼ:

• Biết được ý nghĩa của vùng giá trị tạo bởi lệnh range( ).

• Biết được chức năng của lệnh lặp for và cách dùng trong Python.

KHỞI ĐỘNG

Em có thể đã gặp những trường hợp cần thực hiện một số công việc lặp đi lặp lại nhiều lần. Ví dụ, để kể tên tất cả các bạn trong lớp có 30 học sinh, em cần lần lượt đọc tên từng bạn; để đếm số lượng các số chia hết cho 3 trong khoảng từ 1 đến 50, em có thể kiểm tra lần lượt các số từ 1 đến 50 và ghi ra các số chia hết cho 3 (chẳng hạn, 3, 6, 9,...) rồi đếm các số đó. Ngôn ngữ lập trình bậc cao có các câu lệnh cho phép viết một cách ngắn gọn các bước cần thực hiện lặp đi lặp lại để tạo thành một cấu trúc lập trình được gọi là cấu trúc lặp.

Em có thể xác định được trong mỗi ví dụ trên công việc nào cần phải lặp và được lặp lại bao nhiêu lần không?

NỘI DUNG BÀI HỌC

1. LỆNH FOR

Hoạt động 1: Làm quen với lệnh lặp for
Thực hiện đoạn chương trình sau trong chế độ gõ lệnh trực tiếp của Python để tính tổng 0 + 1 + ... + 9. Tổng này có giá trị bao nhiêu? Giải thích kết quả.
hinh-anh-bai-20-cau-lenh-lap-for-12274-0

>>> S = 0
>>> for k in range(10):
S = S + k
>>> print(S)
45



Trong đoạn chương trình trên, lệnh range(10) trả lại một vùng giá trị gồm 10 số 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. Lệnh for sẽ thực hiện 10 lần lặp, mỗi lần lặp ứng với một giá trị k trong vùng giá trị trên. Sau lệnh lặp for trên, biến S sẽ có giá trị là tổng 0 + 1 + ... + 9 = 45.

Lệnh range(n) trả lại vùng giá trị gồm n số từ 0 đến n − 1. Cú pháp của lệnh lặp với số lần biết trước for trong Python như sau:

hinh-anh-bai-20-cau-lenh-lap-for-12274-1

for <i> in range(n):

<khối lệnh)

Khi thực hiện, ở mỗi vòng lặp biến i sẽ được gán lần lượt các giá trị trong vùng giá trị của lệnh range( ) và thực hiện <khối lệnh>.

hinh-anh-bai-20-cau-lenh-lap-for-12274-2

i = 0

Khối lệnh

i < n - 1

Đúng

i = i + 1

Sai

Hình 20.1

Trang 106

Ví dụ 1. Tính tổng các số tự nhiên chẵn nhỏ hơn n, với n cho trước (n = 10).

hinh-anh-bai-20-cau-lenh-lap-for-12274-3

n = 10

S = 0

for k in range(n):

if k%2 == 0: ← Điều kiện k là số chẵn là k%2 = 0

S = S + k

print(S)

Ví dụ 2. Đếm số các số nguyên nhỏ hơn n (n = 20) và là bội của 3.

hinh-anh-bai-20-cau-lenh-lap-for-12274-4

n = 20

C = 0

for k in range(n):

if k%3 == 0: ← Điều kiện k là bội của 3 là k%3 = 0

C = C + 1

print (C)

for là lệnh lặp với số lần biết trước. Số lần lặp thường được xác định bởi vùng giá trị của lệnh range( ).


Câu hỏi

Với giá trị n cho trước, so sánh giá trị S trong đoạn chương trình sau với tổng 1 + 2 + ... + n.

S = 0

for k in range(1,n+1):

S = S + k

2. LỆNH RANGE

Hoạt động 2: Tìm hiểu vùng giá trị xác định bởi lệnh range()
Quan sát các lệnh for sau và so sánh kết quả in ra để biết vùng giá trị được xác định bởi lệnh range(). Lưu ý, lệnh print() có thêm tham số để in bộ dữ liệu theo hàng ngang.
hinh-anh-bai-20-cau-lenh-lap-for-12274-5

>>> for k in range(3,10):
print(k, end = " ")
3 4 5 6 7 8 9 ← Đây là vùng range(3,10)
>>> for k in range(0,15):
print(k, end = " ")
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 ← Đây là vùng range(0,15)


Lệnh tạo vùng giá trị range( ) có các dạng sau:

range(stop) trả lại vùng giá trị từ 0 đến stop - 1.

range(start,stop) trả lại vùng giá trị từ start đến stop -1.

Ví dụ, range(n) cho vùng gồm các số 0, 1,..., n – 1.

range(1,n+1) cho vùng gồm các số 1, 2,..., n.

range(9,99) cho vùng giá trị gồm các số 0, 1, 2,..., 98.

range(198,1)cho vùng rỗng.

Trang 107

Lệnh tạo vùng giá trị có cú pháp range(start, stop) trả lại vùng giá trị gồm các số nguyên liên tiếp từ start đến stop - 1.


Câu hỏi

Hãy biểu diễn các dãy sau đây bằng lệnh range().

a) 1, 2, 3,..., 50.

b) 5, 6, 7, 8, 9, 10.

c) 0, 1.

d) 10.

THỰC HÀNH. Lệnh lặp for và lệnh range()

Nhiệm vụ 1. Nhập số tự nhiên n từ bàn phím và in ra màn hình dãy các ước số của n theo chiều ngang màn hình. Ví dụ nếu n = 10 thì chương trình sẽ in ra dãy số 1, 2, 5, 10.

Hướng dẫn. Các ước số của n là các số tự nhiên k thoả mãn: n%k = 0. Muốn in các số trên một hàng ngang cần dùng thêm tham số end = " " trong lệnh print().

Chương trình có thể như sau:

hinh-anh-bai-20-cau-lenh-lap-for-12274-6

n = int(input("Nhập số tự nhiên n: "))

for k in range(1, n+1):

if n%k == 0:

print(k, end = " ")

Nhiệm vụ 2. Nhập số tự nhiên n từ bàn phím và đếm số các ước số thực sự của n. Ước số thực sự của n là số tự nhiên k <n và là ước của n.

Hướng dẫn. Tương tự như chương trình ở nhiệm vụ 1, điểm khác là cần đếm số các ước số này và không tính n. Tạo một biến có tên count để đếm số các ước số thực sự của n.

hinh-anh-bai-20-cau-lenh-lap-for-12274-7

n = int(input("Nhập số tự nhiên n: "))

count = 0

for k in range(1, n):

if n%k == 0:
count = count + 1 

print(count)

LUYỆN TẬP

1. Đoạn chương trình sau in ra kết quả gì?

n = int(input("Nhập số tự nhiên n:"))

S = 0

for k in range(n+1):

S = S+ k

print (S*S)

2. Viết đoạn chương trình tính tích 1 × 2 × 3 x...x n với n được nhập vào từ bàn phím.

VẬN DỤNG

1. Viết chương trình nhập từ bàn phím số tự nhiên n và in ra kết quả S = 1 + hinh-anh-bai-20-cau-lenh-lap-for-12274-8 + ... + hinh-anh-bai-20-cau-lenh-lap-for-12274-9.

2. Viết chương trình nhập từ bàn phím số tự nhiên n và in ra kết quả là tổng sau: S = hinh-anh-bai-20-cau-lenh-lap-for-12274-10

+ hinh-anh-bai-20-cau-lenh-lap-for-12274-11 + ... + hinh-anh-bai-20-cau-lenh-lap-for-12274-12.

Tin tức mới


Đánh giá

Bài 20: Câu Lệnh Lặp For | Tin Học 10 | Chủ đề 5: Giải quyết vấn đề với sự trợ giúp của máy tính - Lớp 10 - Kết Nối Tri Thức Với Cuộc Sống

Tổng số sao của bài viết là: 5 trong 1 đánh giá
Xếp hạng: 5 / 5 sao

Bình Luận

Để Lại Bình Luận Của Bạn

Tin tức mới

Môn Học Lớp 10 - Kết Nối Tri Thức Với Cuộc Sống

Giáo dục thể chất cầu lông

Giáo dục thể chất bóng đá

Hoạt Động Trải Nghiệm, Hướng Nghiệp 10

Công Nghệ 10

Địa Lí 10

Toán 10 - Tập 1

Toán 10 - Tập 2

Lịch Sử 10

Mĩ thuật_Thiết kế công nghiệp 10

Mĩ thuật_Thiết kế đồ hoạ 10

Mĩ thuật_Thiết kế mĩ thuật đa phương tiện 10

Mĩ thuật_Lí luận và lịch sử mĩ thuật 10

Mĩ thuật _Điêu khắc 10

Mĩ thuật_Đồ hoạ (tranh in) 10

Mĩ thuật_Hội hoạ 10

Mĩ thuật_Kiến trúc 10

Tin Học 10

Giải bài tập Sinh học 10

Giải bài tập Hóa học 10

Giải bài tập Vật lý 10

Bộ Sách Lớp 10

Giáo Dục Việt Nam

Bộ Sách Giáo Khoa của Nhà Xuất Bản Giáo Dục Việt Nam

Tài liệu học tập

Đây là tài liệu tham khảo hỗ trợ trong quá trình học tập

Global Success & Bộ Giáo Dục - Đào Tạo

Bộ sách Global Success & Bộ Giáo Dục - Đào Tạo là sự kết hợp giữa ngôn ngữ Tiếng Anh theo lối giảng dạy truyền thống và cập nhật những phương thức quốc tế

Cánh Diều

Bộ sách giáo khoa của Nhà xuất bản Cánh Diều

Kết Nối Tri Thức Với Cuộc Sống

Sách giáo khoa của nhà xuất bản Kết Nối Tri Thức Với Cuộc Sống

Sách Kết Nối Tri Thức Với Cuộc Sống

Lớp 1

Sách giáo khoa dành cho lớp 1

Lớp 6

Sách giáo khoa dành cho lớp 6

Lớp 5

Sách giáo khoa dành cho lớp 5

Lớp 4

Sách giáo khoa dành cho lớp 4

Lớp 2

Sách giáo khoa dành cho lớp 2

Lớp 3

Sách giáo khoa dành cho lớp 3

Lớp 7

Sách giáo khoa dành cho lớp 7

Lớp 8

Sách giáo khoa dành cho lớp 8

Lớp 9

Sách giáo khoa dành cho lớp 9

Lớp 10

Sách giáo khoa dành cho lớp 10

Lớp 11

Sách giáo khoa dành cho lớp 11

Lớp 12

Sách giáo khoa dành cho lớp 12

Liên Kết Chia Sẻ

** Đây là liên kết chia sẻ bới cộng đồng người dùng, chúng tôi không chịu trách nhiệm gì về nội dung của các thông tin này. Nếu có liên kết nào không phù hợp xin hãy báo cho admin.