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

Với Giải SBT Tin học 10 trang 66 trong Bài 32: Ôn tập lập trình Python 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 66.

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

Câu 32.1 trang 66 SBT Tin học 10: Em hãy viết chương trình nhập một họ tên đầy đủ từ bàn phím, ví dụ "Nguyễn Thị Mai Hương", sau đó tách riêng phần tên, họ, đệm và thông báo ra màn hình.

Quảng cáo

Lời giải:

Hướng dẫn:

Em đã biết cách tách phần họ và tên của một xâu kí tự họ tên đầy đủ. Bài tập này yêu cầu tách thêm phần đệm, tức là phần nằm giữa tên và họ ra. Việc tách này khá đơn giản bằng cách sử dụng phương thức join() của xâu kí tự. Xâu kí tự họ tên gốc trước tiên được tách thành một dãy bằng hàm split(). Sau khi lấy phần họ, tên, phần đệm sẽ được lấy ra bằng lệnh sau:

dem = " ".join(slist[1:n-1])

Trong đó slist là dãy đã được tách ra từ xâu kí tự họ tên đầy đủ, n là độ dài của xâu slist. Chương trình hoàn chỉnh có thể viết như sau:

hoten = input("Nhập họ tên đầy đủ của bạn: ")

slist = hoten.split()

n = len(slist)

ho = slist[0]

ten = slist[n-1]

dem = " ".join(slist[1:n-1])

print("Tên của bạn là",ten)

print("Họ của bạn là", ho)

if n > 2:

 print("Đệm của bạn là:", dem)

* Chương trình chạy thử:

Em hãy viết chương trình nhập một họ tên đầy đủ từ bàn phím, ví dụ Nguyễn Thị Mai Hương

Câu 32.2 trang 66 SBT Tin học 10: Nhà nước quản lí lượng tiêu thụ điện được thống kê theo tháng. Tháng được gọi là đột biến nếu sản lượng tiêu thụ của tháng đó lớn hơn cả tháng trước và sau tháng đó. Dữ liệu sản lượng tiêu thụ điện hàng tháng được cho bởi dãy các số, ví dụ:

a[0], a[1], ..., a[N-1].

Cần tìm và liệt kê các chỉ số và giá trị a[i] sao cho a[i] tương ứng với tháng đột biến.

Yêu cầu nhập dữ liệu sản lượng điện tiêu thụ từ bàn phím trên một hàng có N số, mỗi số cách nhau bởi dấu cách. Chương trình cần in ra dãy các tháng (bằng chỉ số dãy) và sản lượng tiêu thụ đột biến của tháng đó.

Quảng cáo


Lời giải:

Hướng dẫn:

slist = input("Nhập dãy các số là sản lượng tiêu thụ điện: ")

A = [int(k) for k in slist.split()]

for k in range(1, len(A)-1):

 if A[k-1] < A[k] < A[k+1]:

  print("tháng thứ" , k-1, A[k])

Câu 32.3 trang 66 SBT Tin học 10: Bài toán đếm số lần lặp của một mẫu xâu trong xâu gốc như sau: Cho trước xâu gốc S và một xâu mẫu str. Yêu cầu cần tìm số lần lặp của xâu mẫu str trong xâu gốc S. Có hai kiểu tìm số lần lặp:

1 – Tìm số lần lặp xâu con có thể chồng lấn lên nhau.

2 – Tìm số lần lặp không chồng lấn của xâu con.

Ví dụ nếu xâu gốc là "12121341212100", xâu con mẫu là "121" thì:

- Số lần lặp có chồng lấn của str trong S là 4 lần.

- Số lần lặp không chồng lấn của str trong S là 2 lần.

Bài toán như sau: Cho trước các xâu kí tự S và str, hãy tìm số lần lặp không chồng lấn của xâu str trong xâu S.

Quảng cáo

Lời giải:

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

S = "12121341212100"

str = "121"

n = len(S)

m = len(str)

count = 0

k = 0

Indx = 0

while k <= n-m and Indx >= 0:

 Indx = S.find(str, k)

 if Indx >= 0:

  count = count + 1

  k = Indx + m

print(count)

Bài toán đếm số lần lặp của một mẫu xâu trong xâu gốc như sau

Câu 32.4 trang 66 SBT Tin học 10: Cho trước dãy số. Yêu cầu cần tìm ra một dãy con liên tục có độ dài lớn nhất bao gồm các số bằng nhau. Ví dụ với dãy: 1, 1, 2, 3, 0, 0, 0, 7, 10, 10, 5, 1, 1, 6 thì cần đưa ra thông báo:

Dãy con bằng nhau có độ dài lớn nhất là 0, 0, 0 bắt đầu từ chỉ số 4. Dãy số gốc gồm các số nguyên được nhập trên một dòng từ bàn phím, chương trình cần đưa ra thông báo như trên.

Quảng cáo

Lời giải:

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

A = [1, 1, 2, 3, 0, 0, 0, 7, 10, 10, 5, 1, 1, 6]

Indx = 0

lenMax = 1

for i in range(len(A)):

 j = i

 while j < len(A) and A[j] == A[i]:

  if j-i+1 > lenMax:

   Indx = i

   lenMax = j-i+1

  j = j + 1

print("Dãy con bằng nhau lớn nhất bắt đầu từ chỉ số:", Indx, "độ dài" ,lenMax)

print(A[Indx: Indx+lenMax])

Cho trước dãy số. Yêu cầu cần tìm ra một dãy con liên tục có độ dài lớn nhất bao gồm các số bằng nhau

Câu 32.5 trang 66 SBT Tin học 10: Trong các phần mềm bảng tính điện tử, dữ liệu ngày tháng được coi là số ngày tính từ ngày 1-1-1990. Viết chương trình nhập số tự nhiên n từ bàn phím và tính xem số đó ứng với ngày, tháng, năm nào.

Lời giải:

Hướng dẫn:

Chương trình 1. Nhập số tự nhiên từ bàn phím và tính xem đó là ngày tháng năm nào.

month = [31,28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]

def nhuan(year):

 if year % 400 == 0 or (year % 4 == 0 and year%100 != 0):

  return True

 else:

  return False

def day_of_year(year):

 if nhuan(year):

  return 366

 else:

  return 365

def hople (year, mm, day):

 if nhuan(year):

  month[1] = 29

 if mm < 1 or mm > 12:

  return False

 if day < 1 or day > month[mm-1]:

  return False

 return True

def tinh_nam(d):

 year = 1900

 n_day = day_of_year(year)

 day = d

 while n_day <= d:

  day = d - n_day

  year = year + 1

  n_day = n_day + day_of_year (year)

  if day == 0:

   year = year - 1

   day = day_of_year(year)

 return year, day

def tinh_thang(year, day):

 if nhuan(year):

  month[1] = 29

 mm = 0

 n_day = month[mm]

 dd = day

 while n_day <= day and mm < 11:

  dd = day - n_day

  mm = mm + 1

  n_day = n_day + month[mm]

  if dd == 0:

   mm = mm - 1

   dd = month[mm]

 return mm+1, dd

# Chương trình chính

d = int(input("Nhập số ngày tính từ 1/1/1990: "))

year, day = tinh_nam(d)

mm, dd = tinh_thang(year, day)

print("Đó là ngày", dd,"tháng", mm , "năm", year)

Lời giải sách bài tập Tin 10 Bài 32: Ôn tập lập trình Python 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:

Xem thêm các tài liệu học tốt lớp 10 hay khác:

ĐỀ THI, GIÁO ÁN, SÁCH LUYỆN THI DÀNH CHO GIÁO VIÊN VÀ PHỤ HUYNH LỚP 10

Bộ giáo án, bài giảng powerpoint, đề thi, sách dành cho giáo viên và gia sư dành cho phụ huynh tại https://tailieugiaovien.com.vn/ . Hỗ trợ zalo VietJack Official

Tổng đài hỗ trợ đăng ký : 084 283 45 85

Đã có app VietJack trên điện thoại, giải bài tập SGK, SBT Soạn văn, Văn mẫu, Thi online, Bài giảng....miễn phí. Tải ngay ứng dụng trên Android và iOS.

Theo dõi chúng tôi miễn phí trên mạng xã hội facebook và youtube:

Nếu thấy hay, hãy động viên và chia sẻ nhé! Các bình luận không phù hợp với nội quy bình luận trang web sẽ bị cấm bình luận vĩnh viễn.


Giải bài tập lớp 10 Kết nối tri thức khác
Tài liệu giáo viên