Giải SBT Tin 10 KNTT Bài 32. Ôn tập lập trình Python có đáp án

44 người thi tuần này 4.6 588 lượt thi 10 câu hỏi

🔥 Đề thi HOT:

1763 người thi tuần này

15 câu trắc nghiệm Tin học 10 Kết nối tri thức Bài 26 có đáp án

9.5 K lượt thi 15 câu hỏi
827 người thi tuần này

15 câu trắc nghiệm Tin học 10 Kết nối tri thức Bài 27 có đáp án

6.4 K lượt thi 15 câu hỏi
735 người thi tuần này

15 câu trắc nghiệm Tin học 10 Kết nối tri thức Bài 28 có đáp án

5.5 K lượt thi 15 câu hỏi
699 người thi tuần này

Trắc nghiệm Tin học 10 Kết nối tri thức Bài 29 có đáp án

2.5 K lượt thi x câu hỏi
588 người thi tuần này

15 câu trắc nghiệm Tin học 10 Kết nối tri thức Bài 24 có đáp án

6.5 K lượt thi 15 câu hỏi
555 người thi tuần này

15 câu trắc nghiệm Tin học 10 Kết nối tri thức Bài 23 có đáp án

7.4 K lượt thi 15 câu hỏi
526 người thi tuần này

15 câu trắc nghiệm Tin học 10 Kết nối tri thức Bài 22 có đáp án

7.2 K lượt thi 15 câu hỏi

Nội dung liên quan:

Danh sách câu hỏi:

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ử:

Media VietJack

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

Media VietJack

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)

4.6

118 Đánh giá

50%

40%

0%

0%

0%