Bài 20. Câu lệnh lặp FOR SGK Tin học 10 Kết

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ả.

    Khởi động

    Trả lời câu hỏi mở đầu trang 105 SGK Tin học 10

    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?

    Phương pháp giải:

    Dựa vào thông tin trong ví dụ để xác định

    Lời giải chi tiết:

    Kể tên tất cả các bạn trong lớp có 30 học sinh: lặp 30 lần

    Đếm số lượng các số chia hết cho 3 trong khoảng từ 1 đến 50: lặp 50 lần


    Hoạt động 1

    Trả lời câu hỏi Hoạt động 1 trang 105 SGK Tin học 10

    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ả.

    Phương pháp giải:

    Lệnh range(n) trả lại vùng giá trị gồm n số từ 0 đến n-1

    Lệnh for là lệnh lặp với số lần biết trước. 

    Lời giải chi tiết:

    Tổng có giá trị bằng 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.


    ? mục 1

    Trả lời câu hỏi mục 1 trang 106 SGK Tin học 10

    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.

    Với giá trị n cho trước so sánh giá trị S trong đoạn chương trình

    Phương pháp giải:

    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()

    Lời giải chi tiết:

    Giá trị S trong đoạn chương trình với tổng 1 + 2 + … + n bằng nhau.


    Hoạt động 2

    Trả lời câu hỏi Hoạt động 2 trang 106 SGK Tin học 10 

    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

    Quan sát các lệnh for sau và so sánh kết quả in ra để biết vùng giá trị

    Phương pháp giải:

    Quan sát các lệnh 

    Lời giải chi tiết:

    range(3,10): 3, 4, 5, 6, 7, 8, 9

    range(0,15): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14


    ? mục 2

    Trả lời câu hỏi mục 2 trang 107 SGK Tin học 10

    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

    Phương pháp giải:

    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

    Lời giải chi tiết:

    a, range(1, 51)

    b, range(5, 11)

    c, range(2)

    d, range(10, 11)


    Luyện tập

    Trả lời câu hỏi Luyện tập trang 107 SGK Tin học 10 

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

    Phương pháp giải:

    Dựa vào kiến thức đã học

    Lời giải chi tiết:

    Kết quả của đoạn chương trình là bình phương của tổng dãy các số tự nhiên liên tiếp từ 0 đến n.

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

    Phương pháp giải:

    Dựa vào kiến thức đã học

    Lời giải chi tiết:

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

    S=1

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

        S=S*n

    print("Tích các số từ 1 đến n là: ",S)

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


    Vận dụng

    Trả lời câu hỏi Vận dụng trang 107 SGK Tin học 10 

    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ả

    Phương pháp giải:

    Dựa vào kiến thức đã học để viết chương trình

    Lời giải chi tiết:

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

    S=0

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

        S=S+1/n

    print("Kết quả là: ",S)

    Viết chương trình nhập từ bàn phím số tự nhiên n và in ra kết quả

    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: 

    Phương pháp giải:

    Dựa vào kiến thức đã học để viết chương trình

    Lời giải chi tiết:

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

    S=0

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

        S=S+n*n*n

    print("Kết quả là: ",S)

    SGK Tin học 10 - Kết nối tri thức

    Để học tốt SGK Tin học 10 - Kết nối tri thức, loạt bài giải bài tập SGK Tin học 10 - Kết nối tri thức đầy đủ kiến thức, lý thuyết và bài tập được biên soạn bám sát theo nội dung sách giáo khoa Lớp 10.

    Lớp 10 | Các môn học Lớp 10 | Giải bài tập, đề kiểm tra, đề thi Lớp 10 chọn lọc

    Danh sách các môn học Lớp 10 được biên soạn theo sách giáo khoa mới của bộ giáo dục đào tạo. Kèm theo lời giải sách bài tập, sách giáo khoa, đề kiểm tra 15 phút, 45 phút (1 tiết), đề thi học kì 1 và học kì 2 năm học 2024 ngắn gọn, chi tiết dễ hiểu.

    Toán Học

    Vật Lý

    Hóa Học

    Ngữ Văn

    Sinh Học

    GDCD

    Tin Học

    Tiếng Anh

    Công Nghệ

    Lịch Sử & Địa Lý

    Tác giả & Tác phẩm

    Hoạt động trải nghiệm & Hướng nghiệp