python小練習——(一)
阿新 • • 發佈:2018-12-26
小夥伴們執行的時候記得把註釋去掉哦,瀟小白只是為了方便把幾個程式都寫在了一個.py檔案中,還有記得縮排要統一哦。
#輸出2000--3000之間所有的閏年
y=2000;count=0
while y<=3000:
if ((y%4==0 and y%100!=0)or y%400==0):
print("%d"%y,end=" ")
count+=1
if count%18==0:
print()
y+=1
print()
--------------------------------------------------------
#計算Sn=1-3+5-7+9-11+......,100以內
# i=1;a=0;b=0;count=1
# while i<=100:
# if count%2!=0:
# a += i
# else:
# b += (-1*i)
# i+=2
# count+=1
# print("Sn=%d"%(a+b))
#---------------------------------------------------------
#計算Sn=1+1/2+1/3+......+1/9
# j=1;Sn=0
# while j<=9:
# Sn += (1/j)
# j += 1
# print("%s"%Sn)
#-----------------------------------------------------------
#判斷是否可以構成三角形,如果可以求周長和麵積;如果不行則報錯“無法構成三角形!”
# import math
# a=int(input("請輸入三角形的邊A:"))
# b=int(input("請輸入三角形的邊B:"))
# c=int(input("請輸入三角形的邊C:"))
# if a>0 and b>0 and c>0 and a+b>c and a+c>b and b+c>a:
# z=a+b+c
# h=z/2
# s=math.sqrt(h*(h-a)*(h-b)*(h-c))
# print(" 三角形的三邊分別為:a=%.1f,b=%.1f,c=%.1f"%(a,b,c))
# print(" 三角形的周長=%.1f,面積=%.1f"%(z,s))
# else:
# print("無法構成三角形!")
#-------------------------------------------------------------
#計算分段函式的值
# import math
# x=float(input("請輸入x:"));y=0
# #一句單分支語句
# y=((x*x-3*x)/(x+1)+2*math.pi+math.sin(x))
# if x<0:
# y=math.log(-5*x)+6*math.sqrt(abs(x)+math.e**4)-(x+1)**3
# print("方法一:x=%.1f,y=%.15f"%(x,y))
# #兩句單分支語句
# if x>=0:
# y=((x*x-3*x)/(x+1)+2*math.pi+math.sin(x))
# if x<0:
# y=math.log(-5*x)+6*math.sqrt(abs(x)+math.e**4)-(x+1)**3
# print("方法二:x=%.1f,y=%.15f"%(x,y))
# #雙分支語句
# if x>=0:
# y=((x*x-3*x)/(x+1)+2*math.pi+math.sin(x))
# else:
# y=math.log(-5*x)+6*math.sqrt(abs(x)+math.e**4)-(x+1)**3
# print("方法三:x=%.1f,y=%.15f"%(x,y))
# #條件運算語句
# y=((x*x-3*x)/(x+1)+2*math.pi+math.sin(x)) if((x>=0)) else (math.log(-5*x)+6*math.sqrt(abs(x)+math.e**4)-(x+1)**3)
# print("方法四:x=%.1f,y=%.15f"%(x,y))
#------------------------------------------------------------------
#編寫程式,輸入一元二次方程的三個係數a、b、c,求a*x*x+b*x+c=0方程的解。
# import math
# a=float(input("請輸入係數a:"))
# b=float(input("請輸入係數b:"))
# c=float(input("請輸入係數c:"))
# if a==0 and b==0:
# print("此方程無解!")
# elif a==0 and b!=0:
# print("此方程的解為:%.1f"%(-c/b))
# elif b*b-4*a*c==0:
# print("此方程有兩個相等實根:%.1f"%(-b/(2*a)))
# elif b*b-4*a*c>0:
# print("此方程有兩個不等實根:%.1f和%.1f"%(-b/(2*a)+math.sqrt(b*b-4*a*c)/(2*a),-b/(2*a)-math.sqrt(b*b-4*a*c)/(2*a)))
# elif b*b-4*a*c<0:
# realPart=-b/(2*a)
# imagPart=math.sqrt(4*a*c-b*b)/(2*a)
# print(str.format("此方程有兩個不等實根:{0}+{1}i和{0}-{1}i",realPart,imagPart))
#----------------------------------------------------------------------------------------------------------------------
#編寫程式,輸入整數n(n>=0),分別利用for迴圈和while迴圈求n!
# n=int(input("請輸入非負整數n:"))
# while n<0:
# n=int(input("請輸入非負整數n:"))
# #for迴圈
# x=1
# s1=n
# if s1==0:
# print("for迴圈:0!=1")
# else:
# for x in range(1,n):
# s1 *= x
# x += 1
# print("for迴圈:%d!=%d" % (n, s1))
# #while迴圈
# y=1
# s2=n
# if s2==0:
# print("while迴圈:0!=1")
# else:
# while y<n:
# s2*=y
# y+=1
# print("while迴圈:%d!=%d"%(n,s2))
#---------------------------------------------------------------------------
#編寫程式,產生兩個0~100之間(包含0到100)的隨機數a和b。求這兩個整數的最大公約數和最小公倍數。
import random
r=1;s=0
a=random.randint(0,100)
b=random.randint(0,100)
m=a
n=b
print("整數1=%d,整數2=%d"%(a,b))
if a>=b:
while r!=0:
r=a%b
a=b
b=r
s=(m*n)/a
print("最大公約數=%d,最小公倍數=%d"%(a,s))
else:
while r!=0:
r=b%a
b=a
a=r
s=(m*n)/b
print("最大公約數=%d,最小公倍數=%d"%(b,s))
小編在這裡就展示第一個程式的執行結果哦,剩下的幾個需要你自己動手來完成,加油!