Merhaba, bu benim ilk Python kodum, bu yüzden benimle çıplak. Kullanıcıyı yüzde olarak soran ve kullanıcı tarafından kabul edilebilir bir girdi girilene kadar sormaya devam eden bir kod yazıyorum. Ancak bunu çalıştırdığımda, girilen döngü ne tür girdiklerim olursa olsun kırılmaz.Döngü sürekli Python'da çalışıyor, iyi giriş mi yoksa kötü mü?
import math
while True:
try:
entered = float(raw_input("Please enter the velocity (as a percentage of the speed of light): "))
except ValueError:
print("Sorry, an acceptable input was not entered. Try again.")
continue
if entered > 100:
print("Sorry, a velocity greater than the speed of light cannot be used. Try again.")
continue
elif entered <= 0:
print("Sorry, a percent cannot be negative. Try again.")
continue
else:
#the percent entered is valid, break out of while loop
break
print("Ship is traveling at ", entered, "% the speed of light.")
print(" ")
speedOfLight = 299792458 #speed of light constant
percentage = entered/100 #turn entered percent into decimal
speed = speedOfLight * percentage #actual speed (in m/s)
denominator = math.sqrt(1 - (percentage ** 2)) #denominator of factor equation
factor = 1/denominator #solve for given factor equation
shipWeight = 70000 * factor #given ship weight * factor
alphaCentauri = 4.3/factor # given times divided by the factor
barnardsStar = 6.0/factor
betelgeuse = 309 /factor
andromeda = 2000000/factor
print("At this speed: ")
print(" Weight of the shuttle is ", shipWeight)
print(" Perceived time to travel to Alpha Centauri is ", alphaCentauri, " years.")
print(" Perceived time to travel to Barnard's Star is ", barnardsStar, " years.")
print(" Perceived time to travel to Betelgeuse is ", betelgeuse, " years.")
print(" Perceived time to travel to Andromeda Galaxy is ", andromeda, " years.")
girintilemeyi düzeltmek için zaman ayırın "ithal matematik" ile istenilen şekilde aşağıda çalışır. – Dzhao