Giải SGK Tin học 10 (Kết nối tri thức) Bài 32: Ôn tập lập trình Python

1900.edu.vn xin giới thiệu giải bài tập Tin học lớp 10 Bài 32: Ôn tập lập trình Python sách Kết nối tri thức hay nhất, ngắn gọn giúp học sinh dễ dàng làm bài tập Tin học 10 Bài 32.

Giải Tin học 10 Bài 32: Ôn tập lập trình Python

Luyện tập

Luyện tập trang 155 Tin học 10Viế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.

Trả lời:

def Nhap_danh_sach_ten():

    list_name = []

    n = int(input("Nhap vao so luong ten: n = "))

    print("Nhap vao danh sach cac ten gom ho,dem, ten:")

    for i in range(n):

        print("\tSo thu tu ", i+1, ":", sep="", end=" ")

        list_name.append(input())

    return list_name

def Sap_xep_Abc(lst):

    for i in range(len(lst) - 1):

        for j in range(i + 1, len(lst)):

            if lst[i] > lst[j]:

                lst[i], lst[j] = lst[j], lst[i]

# Chuong trinh chinh

lst = Nhap_danh_sach_ten()

# Hien thi

print("Danh sach vua nhap la:")

for i in range(len(lst)):

    print("\t", lst[i], end=" ")

# Sap xep tang dan

Sap_xep_Abc(lst)

print("\nDanh sach sau khi sap xep la:")

for i in range(len(lst)):

    print("\t", lst[i], end=" ")

Vận dụng

Vận dụng 1 trang 155 Tin học 10Trong 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ừ mà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ử.

Trả lời:

import datetime

str1= "1/1/1990"

d1 = datetime.datetime.strptime(str1, "%y/%m/%d")

print(d1)

d2 = datetime.datetime.strptime(str2, "%y/%m/%d")

print(d2)

n = int(input("Nhap vao so tu nhien: n = "))

print(d1 + datetime.timedelta(days=n))

print((d2-d1).days)

Vận dụng 2 trang 155 Tin học 10Mở 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.

Giải Tin học 10 Bài 32: Ôn tập lập trình Python - Kết nối tri thức (ảnh 1)

Trả lời:

def Nhap_danh_sach_ten():

    list_name = []

    hodem=[]

    n = int(input("Nhap vao so luong ten: n = "))

    print("Nhap vao danh sach cac ten gom ho,dem, ten:")

    for i in range(n):

        print("\tSo thu tu ", i+1, ":", sep="", end=" ")

        list_name.append(input())

        hodem.append(input())

    return list_name

    return hodem

def Sap_xep_Abc(lst):

if

    for i in range(len(lst) - 1):

        for j in range(i + 1, len(lst)):

            if lst[i] > lst[j]:

                lst[i], lst[j] = lst[j], lst[i]

   return list_name

  els return hodem

# Chuong trinh chinh

lst = Nhap_danh_sach_ten()

# Hien thi

print("Danh sach vua nhap la:")

for i in range(len(lst)):

    print("\t", lst[i], end=" ")

# Sap xep tang dan

Sap_xep_Abc(lst)

print("\nDanh sach sau khi sap xep la:")

for i in range(len(lst)):

    print("\t", lst[i], end=" ")

Vận dụng 3 trang 155 Tin học 10Nế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 . 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 chỉ cần tìm trong các số 2, 3, …, . 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à nguyên tố.

Trả lời:

import math

print("Nhập vào số n lớn hơn 1: ")

# Lấy dữ liệu

n = int(input())

flag = True

   #Su dung cau truc re nhanh xu ly truong hop n <= 0

if (n < 2):

    flag = False

elif (n == 2):

    flag = True

elif (n % 2 == 0):

    flag = False

else:      

#Su dung vong lap for de duyet cac so tu 2 den can bac hai cua n

       for i in range(2, int(math.sqrt(n))+1):

           #Kiem tra tinh chia het

           if n % i == 0:

               flag == False

               break

       else:

               flag == True

# In kết quả

if flag == True:

    print(n, " là số nguyên tố")

else:

    print(n, " không phải là số nguyên tố")

Giải Tin học 10 Bài 32: Ôn tập lập trình Python - Kết nối tri thức (ảnh 1)

Hình 1. Chương trình

Giải Tin học 10 Bài 32: Ôn tập lập trình Python - Kết nối tri thức (ảnh 1)

Hình 2. Kết quả chạy thử

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

Bài 29: Nhận biết lỗi chương trình

Bài 30: Kiểm thử và gỡ lỗi chương trình

Bài 31: Thực hành viết chương trình đơn giản

Bài 33: Nghề thiết kế đồ họa máy tính

Bài 34: Nghề phát triển phần mềm

 

Câu hỏi liên quan

def Nhap_danh_sach_ten():     list_name = []     n = int(input("Nhap vao so luong ten: n = "))     print("Nhap vao danh sach cac ten gom ho,dem, ten:")     for i in range(n):         print("\tSo thu tu ", i+1, ":", sep="", end=" ")         list_name.append(input())     return list_name def Sap_xep_Abc(lst):     for i in range(len(lst) - 1):         for j in range(i + 1, len(lst)):             if lst[i] > lst[j]:                 lst[i], lst[j] = lst[j], lst[i] # Chuong trinh chinh lst = Nhap_danh_sach_ten() # Hien thi print("Danh sach vua nhap la:") for i in range(len(lst)):     print("\t", lst[i], end=" ") # Sap xep tang dan Sap_xep_Abc(lst) print("\nDanh sach sau khi sap xep la:") for i in range(len(lst)):     print("\t", lst[i], end=" ")
Xem thêm
import datetime str1= "1/1/1990" d1 = datetime.datetime.strptime(str1, "%y/%m/%d") print(d1) d2 = datetime.datetime.strptime(str2, "%y/%m/%d") print(d2) n = int(input("Nhap vao so tu nhien: n = ")) print(d1 + datetime.timedelta(days=n)) print((d2-d1).days)
Xem thêm
def Nhap_danh_sach_ten():     list_name = []     hodem=[]     n = int(input("Nhap vao so luong ten: n = "))     print("Nhap vao danh sach cac ten gom ho,dem, ten:")     for i in range(n):         print("\tSo thu tu ", i+1, ":", sep="", end=" ")         list_name.append(input())         hodem.append(input())     return list_name     return hodem def Sap_xep_Abc(lst): if     for i in range(len(lst) - 1):         for j in range(i + 1, len(lst)):             if lst[i] > lst[j]:                 lst[i], lst[j] = lst[j], lst[i]    return list_name   els return hodem # Chuong trinh chinh lst = Nhap_danh_sach_ten() # Hien thi print("Danh sach vua nhap la:") for i in range(len(lst)):     print("\t", lst[i], end=" ") # Sap xep tang dan Sap_xep_Abc(lst) print("\nDanh sach sau khi sap xep la:") for i in range(len(lst)):     print("\t", lst[i], end=" ")
Xem thêm
import math print("Nhập vào số n lớn hơn 1: ") # Lấy dữ liệu n = int(input()) flag = True    #Su dung cau truc re nhanh xu ly truong hop n <= 0 if (n < 2):     flag = False elif (n == 2):     flag = True elif (n % 2 == 0):     flag = False else:       #Su dung vong lap for de duyet cac so tu 2 den can bac hai cua n        for i in range(2, int(math.sqrt(n))+1):            #Kiem tra tinh chia het            if n % i == 0:                flag == False                break        else:                flag == True # In kết quả if flag == True:     print(n, " là số nguyên tố") else:     print(n, " không phải là số nguyên tố")
Xem thêm
Xem tất cả hỏi đáp với chuyên mục: Ôn tập lập trình Python
Bình luận (0)

Đăng nhập để có thể bình luận

Chưa có bình luận nào. Bạn hãy là người đầu tiên cho tôi biết ý kiến!