Hi,小編本周又來(lái)送練習(xí)題了,編程肯定要多多練習(xí)啦!
題目:
輸入某年某月某日,判斷這一天是這一年的第幾天?
1.程序分析:以3月5日為例,應(yīng)該先把前兩個(gè)月的加起來(lái),
然后再加上5天即本年的第幾天,特殊情況,
閏年且輸入月份大于3時(shí)需考慮多加一天。
"""
輸入某年某月某日,判斷這一天是這一年的第幾天?
"""
year=input("請(qǐng)輸入年")
month=input("請(qǐng)輸入月")
day=input("請(qǐng)輸入日")
if year.isdigit() and month.isdigit() and day.isdigit() and len(year)==4 and 0<len(month)<=2 and 0<len(day)<=2:
year=int(year)
month=int(month)
day=int(day)
else:
print("年月日輸入有誤,必須輸入數(shù)字")
all_day=0
if month>1:
all_day+=31
if month>2:
if year%4==0 and year%100!=0 or year%400==0:
all_day+=29
else:
all_day+=28
if month>3:
all_day+=31
if month>4:
all_day+=30
if month>5:
all_day+=31
if month>6:
all_day+=30
if month>7:
all_day+=31
if month>8:
all_day+=31
if month>9:
all_day+=30
if month>10:
all_day+31
if month>11:
all_day+=30
all_day+=day
print("{0}年{1}月{2}日是今年的第{3}天".format(year,month,day,all_day))
?
題目:斐波那契數(shù)列。
程序分析:黃金一類數(shù)列,指數(shù)列:1、1、2、3、5、8、13、21、34,可以用遞歸定義一個(gè)函數(shù)
def fib(n):
if n==1 or n==2:
return 1
return fib(n-1)+fib(n-2) #遞歸調(diào)用,自己調(diào)用自己
print("---------斐波那契數(shù)列-------------")
num=input("請(qǐng)輸入數(shù)字:")
if num.isdigit():
num=int(num)
else:
print("輸入的不是數(shù)字")
fib_list=[]
i=1
while i<=num:
fib_list.append(fib(i))
i+=1
print(fib_list)
?
題目:判斷101-200之間有多少個(gè)素?cái)?shù),并輸出所有素?cái)?shù)。
程序分析:判斷素?cái)?shù)的方法:能被1和它自己整除的數(shù)是素?cái)?shù),如果能被其他數(shù)字整除,則不是素?cái)?shù)
rs=0
for i in range(101,201):
flag=False
for j in range(2,i):
if i%j==0:
flag=True
print(i)
break
if not flag:
rs+=1
print("%d是素?cái)?shù)"%i)
print("素?cái)?shù)的個(gè)數(shù)是%d"%rs)
本文摘自 :https://www.cnblogs.com/