X

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

Giải SBT Tin học 10 trang 42 Kết nối tri thức


Haylamdo sưu tầm và biên soạn Giải SBT Tin học 10 trang 42 trong Bài 20: Câu lệnh lặp For Sách bài tập Tin 10 Kết nối tri thức hay nhất, ngắn gọn sẽ giúp học sinh dễ dàng trả lời các câu hỏi & làm bài tập Tin học 10 trang 42.

Giải SBT Tin học 10 trang 42 Kết nối tri thức

Câu 20.1 trang 42 SBT Tin học 10: Hãy viết câu lệnh range cho kết quả là các dãy số sau:

a) 0, 1, 2, 3, ..., 11.

b) -2, -1, 0, 1, 2, ..., 8.

c) 5, 6, 7, ..., 20. 

Lời giải:

a) range(12)

b) range(-2,9)

c) range(5, 21)

Câu 20.2 trang 42 SBT Tin học 10: Kết quả thực hiện câu lệnh for dưới đây là gì?

for i in range(10):

  print(i*i)

Lời giải:

Dãy 0, 1, 4, 9, ..., 81 (bình phương các số 0, 1, 2, ...,9).

Kết quả thực hiện câu lệnh for dưới đây là gì

Câu 20.3 trang 42 SBT Tin học 10: Cho đoạn chương trình sau:

sum=0

for i in range(1,11):

 sum=sum+i*i

print(sum)

a) Kết quả thực hiện các câu lệnh trên là gì?

b) Nếu thay câu lệnh for i in range(1,11) bằng câu lệnh for i in range(11) thì kết quả thu được có thay đổi không? Vì sao?

Lời giải:

a) Giá trị trong sum là tổng các bình phương của 1, 2, 3, ..., 10 (= 385).

Cho đoạn chương trình sau

b) Kết quả không thay đổi. Vì giá trị i khi đó sẽ bắt đầu từ 0, tổng các bình phương của các số 0, 1, 2, ..., 10 vẫn chính là tổng các bình phương của các số 1, 2, ..., 10.

Câu 20.4 trang 42 SBT Tin học 10: Viết chương trình nhập vào từ bàn phím số tự nhiên n và tính tổng:

S = 1 + 1/2 + 1/3 + ... + 1/n

Lời giải:

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

S = 0

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

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

  S = S + 1/i

print("Tổng nghịch đảo các số từ 1 tới ",n," là: ", S)

Câu 20.5 trang 42 SBT Tin học 10: Viết chương trình nhập vào từ bàn phím số tự nhiên n và tính tổng:

S = 1 × 2 + 2 × 3 + 3 × 4 + ... + (n − 1) × n.

Lời giải:

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

S = 0

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

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

  S = S + (i - 1)*i

print("Với n = ", n, "tổng cần tìm là: ", S)

Câu 20.6 trang 42 SBT Tin học 10: Viết chương trình tính tổng các số tự nhiên chẵn và tổng các số tự nhiên lẻ không vượt quá n (n là một số tự nhiên được nhập vào từ bàn phím).

Lời giải:

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

#Tổng các số lẻ và tổng các số chẵn không lớn hơn n

tong_sole = 0

tong_sochan = 0

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

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

 if i%2==0:       # i là số chẵn: thêm i vào tong_sochan 

  tong_sochan=tong_sochan + i

 else:       #i là số lẻ: thêm i vào tong_sole

  tong_sole=tong_sole + i

print("Tổng các số chẵn và các số lẻ không lớn hơn", n, "tương ứng là", tong_sochan, "và", tong_sole)

Câu 20.7 trang 42 SBT Tin học 10: Viết chương trình nhập số tự nhiên n từ bàn phím rồi tính tổng và tích các số thực sự của n (số k là ước số thực sự của n nếu n%k = 0, k < n).

Lời giải:

Có thể thấy rằng các ước số thật sự của n không vượt quá giá trị n//2.

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

#Tổng và tích các ước số thật sự của n

tong_uocso = 0

tich_uocso = 1

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

k = n//2+1

for i in range(1,k):

 if n%i==0:         # i là ước số của n

  tong_uocso = tong_uoc so + i

  tich_uocso = tich_uocso*i

print("Tổng và tích các ước số thực sự của", n, "tương ứng là", tong_uocso, "và", tich_uocso)

Câu 20.8 trang 42 SBT Tin học 10: Điểm tổng kết trung bình năm học được tính theo công thức có dạng:

(diem 1 × heso1 + diem2 × heso2 + ... + diemk × hesok)/(heso 1 + heso 2 + ... + hesok). Viết chương trình tính điểm trung bình của em, trong đó số môn học k, điểm số từng môn và hệ số tương ứng được nhập vào từ bàn phím.

Câu hỏi mở rộng: Có thể thay câu lệnh:

diem = float(input("Điểm môn thứ "+str(i)+ ": "))

bằng câu lệnh:

diem = float(input("Điểm môn thứ ", i , ": "))

được không?

Lời giải:

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

tong_diem = 0

tong_heso = 0

n = int(input("Nhập số môn học: "))

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

  diem = float(input("Điểm môn thứ " + str(i) + ": "))

  heso = float(input("Hệ số môn thứ " + str(i) + ": "))

  tong_diem = tong_diem + diem*heso

  tong_he so = tong_heso + heso

print("Điểm trung bình cả năm học của em là:", tong_diem/tong_heso)

Câu hỏi mở rộng: Không thể thay thế được.

Lời giải sách bài tập Tin 10 Bài 20: Câu lệnh lặp For Kết nối tri thức hay khác:

Xem thêm lời giải sách bài tập Tin học lớp 10 Kết nối tri thức hay, chi tiết khác: