logo

Soạn Tin 10 Bài 32: Ôn tập lập trình Python - Kết nối tri thức

Hướng dẫn Soạn Tin 10 Bài 32: Ôn tập lập trình Python trang 153, 154, 155 SGK Tin học 10 ngắn gọn, đầy đủ bám sát nội dung bộ sách mới Kết nối tri thức.

Bài 32: Ôn tập lập trình Python trang 153, 154, 155 SGK Tin học 10 Kết nối tri thức

Trả lời câu hỏi trang 155 SGK Tin học 10

Viết chương trình nhập số n, sau đó nhập danh sách tên học sinh với họ, đệm, tên. Sắp xếp tên học sinh trong lớp theo bảng chữ cái. Đưa kết quả ra màn hình.

Lời giải:

Chương trình như sau:

def Sosanhxau(name1, name2):

    name1 = name1.split()

    name2 = name2.split()

    i = 1

    while i <= len(name1) and i <= len(name2):

        if name1[len(name1)-i] > name2[len(name2)-i]:

            return True

         elif(name1[len(name1)-i]<name2[len(name2)-i]):

            return False

        else:

            i += 1

    return False

def Sapxep(A,n):

    for i in range(n):

        minimum = i

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

            if Sosanhxau(A[j], A[minimum]) == False :

                minimum = j

        A[minimum], A[i] = A[i], A[minimum]

    return A

n=int(input("Nhập số lượng học sinh của lớp"))

A=[]

for i in range(0,n):

    s=input()

    A.append(s)

A=Sapxep(A,n)

print("Danh sách lớp theo tên đã sắp xếp là:")

print(A)


Mục lục nội dung

Vận dụng

Trả lời câu hỏi trang 155 SGK Tin học 10 

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

- Nhập thời gian theo khuôn dạng ngày - tháng - năm (ví dụ 8-10-2021), tính số ngày ứng với ngày này theo phần mềm bảng tính điện tử.

Lời giải:

Để giải quyết bài toán một cách triệt để và bằng phép tính thủ công sẽ khá khó khăn, trong Python cung cấp một số thư viện cũng như hàm có sẵn, giúp cho quá trình giải bài toán thuận tiện và dễ dàng hơn.

Chương trình như sau:

Soạn Tin 10 Bài 32: Ôn tập lập trình Python - Kết nối tri thức
Soạn Tin 10 Bài 32: Ôn tập lập trình Python - Kết nối tri thức

2. Mở rộng bài tập trong phần luyện tập như sau:

Việc sắp xếp thứ tự phải ưu tiên tính theo tên trước, rồi đến họ, rồi đến đệm.

Sắp xếp theo thứ tự của bảng chữ cái tiếng Việt.

Chú ý: Bảng chữ cái tiếng Việt (bao gồm cả dấu thanh) được sắp xếp theo thứ tự sau: AÀÁẢÃẠĂẰẮẲẴẶÂẦẤẪẬBCDĐEÈÉẺẼẸÊỀẾỂỄỆGHIÌÍỈĨỊJKLMNOÒÓỎÕỌÔỒỐỔỖỘƠỜỚỞỠỢPQRSTUÙÚỦŨỤƯ ỪỨỬỮỰVXYỲÝỶỸỴ.

Lời giải:

import re

def Chuyendoi(s):

    s = re.sub(r'[àáạảãâầấậẩẫăằắặẳẵ]', 'a', s)

    s = re.sub(r'[ÀÁẠẢÃĂẰẮẶẲẴÂẦẤẬẨẪ]', 'A', s)

    s = re.sub(r'[èéẹẻẽêềếệểễ]', 'e', s)

    s = re.sub(r'[ÈÉẸẺẼÊỀẾỆỂỄ]', 'E', s)

    s = re.sub(r'[òóọỏõôồốộổỗơờớợởỡ]', 'o', s)

    s = re.sub(r'[ÒÓỌỎÕÔỒỐỘỔỖƠỜỚỢỞỠ]', 'O', s)

    s = re.sub(r'[ìíịỉĩ]', 'i', s)

    s = re.sub(r'[ÌÍỊỈĨ]', 'I', s)

    s = re.sub(r'[ùúụủũưừứựửữ]', 'u', s)

    s = re.sub(r'[ƯỪỨỰỬỮÙÚỤỦŨ]', 'U', s)

    s = re.sub(r'[ỳýỵỷỹ]', 'y', s)

    s = re.sub(r'[ỲÝỴỶỸ]', 'Y', s)

    s = re.sub(r'[Đ]', 'D', s)

    s = re.sub(r'[đ]', 'd', s)

    return s

def Sosanhxau(name1, name2):

    name1=Chuyendoi(name1)

    name2=Chuyendoi(name2)

    name1 = name1.split()

    name2 = name2.split()

    i = 1

     while i <= len(name1) and i <= len(name2):

        if name1[len(name1)-i] > name2[len(name2)-i]:

            return True

         elif(name1[len(name1)-i]<name2[len(name2)-i]):

            return False

        else:

            i += 1

    return False

def Sapxep(A,n):

    for i in range(n):

        minimum = i

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

            if Sosanhxau(A[j], A[minimum]) == False :

                minimum = j

        A[minimum], A[i] = A[i], A[minimum]

    return A

n=int(input("Nhập số lượng học sinh của lớp"))

A=[]

for i in range(0,n):

    s=input()

    A.append(s)

A=Sapxep(A,n)

print("Danh sách lớp theo tên đã sắp xếp là:")

print(A) 

3. Nếu n là hợp số thì dễ thấy n phải có ước số nguyên tố nhỏ hơn hoặc bằng √n. Viết chương trình tối ưu hoá hơn nhiệm vụ 1, bài 31 theo cách sau: để tìm ước số nguyên tố nhỏ nhất thì chỉ cần tìm trong các số 2, 3, …,√n. Nếu trong dãy trên không tìm thấy ước của n thì kết luận ngay n là số nguyên tố.

Lời giải:

Chương trình như sau:

Soạn Tin 10 Bài 32: Ôn tập lập trình Python - Kết nối tri thức
Soạn Tin 10 Bài 32: Ôn tập lập trình Python - Kết nối tri thức

>>> Xem trọn bộ: Soạn Tin 10 Kết nối tri thức

-----------------------------

Trên đây Toploigiai đã cùng các bạn Soạn Tin 10 Bài 32: Ôn tập lập trình Python trong bộ SGK Kết nối tri thức theo chương trình sách mới. Chúng tôi hi vọng các bạn đã có kiến thức hữu ích khi đọc bài viết này. Toploigiai đã có đầy đủ các bài soạn cho các môn học trong các bộ sách mới Cánh Diều, Chân trời sáng tạo, Kết nối tri thức. Mời các bạn hãy click ngay vào trang chủ Toploigiai để tham khảo và chuẩn bị bài cho năm học mới nhé. Chúc các bạn học tốt! 

icon-date
Xuất bản : 08/09/2022 - Cập nhật : 14/09/2022