Câu hỏi:
12/07/2024 1,971Trong 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ử.
Câu hỏi trong đề: Bài tập Ôn tập lập trình Python có đáp án !!
Quảng cáo
Trả lờ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.
Tham khảo đoạn code sau:
from datetime import date
from datetime import timedelta
dateStandard = date(1990, 1, 1)
def calNumberDay(date1):
return (date1 - dateStandard).days
def NumberToDate(number):
return dateStandard + timedelta(days=number)
d=int(input("Nhap số ngày"))
a=input("Nhập thời gian").split(" ")
a[0]=int(a[0])
a[1]=int(a[1])
a[2]=int(a[2])
print(NumberToDate(number=32))
print(calNumberDay(date(a[2],a[1],a[0])))
Hot: Học hè online Toán, Văn, Anh...lớp 1-12 tại Vietjack với hơn 1 triệu bài tập có đáp án. Học ngay
CÂU HỎI HOT CÙNG CHỦ ĐỀ
Lời giải
Chương trình:
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)
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)
Lời giải
Bạn cần đăng ký gói VIP ( giá chỉ từ 199K ) để làm bài, xem đáp án và lời giải chi tiết không giới hạn.
Trắc nghiệm Tin học 10 Kết nối tri thức Bài 29 có đáp án
15 câu trắc nghiệm Tin học 10 Kết nối tri thức Bài 27 có đáp án
15 câu trắc nghiệm Tin học 10 Kết nối tri thức Bài 28 có đáp án
15 câu trắc nghiệm Tin học 10 Kết nối tri thức Bài 26 có đáp án
Đề kiểm tra học kì 2 Tin học 10 Kết nối tri thức có đáp án - Đề 1
15 câu trắc nghiệm Tin học 10 Kết nối tri thức Bài 22 có đáp án
15 câu trắc nghiệm Tin học 10 Kết nối tri thức Bài 20 có đáp án
15 câu trắc nghiệm Tin học 10 Kết nối tri thức Bài 21 có đáp án