問題001-1:請對輸入三個整數a,b,c,判斷能否以它們為三個邊長構成三角形。若能,輸出YES和面積,否則輸出NO
a = float(input())
b = float(input())
c = float(input())
if a > 0 and b > 0 and c > 0: #判斷邊長是否為正
if (a + b > c) and (a + c > b) and (b + c > a): #判斷是否可以為三角形
p = (a + b + c)/2.0
S = (p*(p – a)*(p – b)*(p – c))**0.5 #面積,海倫公式
print(“YES, 邊長為: a = {},b = {},c = {}, 面積為:{}”.format(a,b,c,S))
else:
print(“NO”)
else:
print(“NO”)
問題001-2:可逆素數是將某素數的各位數字順序顛倒后仍為素數的數,請編程并輸出200以內的可逆素數
注意:1不是素數也不是合數
def GetReNums(n):
if ((n//100 ==0) & (n//10 ==0)):
num1 = n
num2 = n
else:
if ((n//100 ==0) & (n//10 !=0)):
num1 = n
num2 = n%10 * 10 + n//10
else:
num1 = n
num2 = n%100%10 * 100 +n//10%10*10 +n//100
return num1,num2
for n in range(2,200,1):
num1,num2 = GetReNums(n)
devn1 = 0
devn2 = 0
for i in range(2,num1,1):
if (num1%i ==0):
devn1 = devn1+1
for i in range(2,num2,1):
if (num2%i ==0):
devn2 = devn2+1
if ((devn1==0)&(devn2==0)):
print(n)
【每日道代碼題001】- PYTHON基礎復習