Dans ce programme, j'ai travaillé avec Python, l'objectif est de prendre les entrées de l'utilisateur sur une vitesse initiale, un angle et à quelle distance est une structure/quelle est notre taille re visant. J'ai été capable de calculer combien de temps il faut pour que quelque chose atteigne une cible, mais je ne suis pas sûr de savoir pourquoi la vitesse finale (à quelle vitesse il va quand il atteint la cible) se trompe.Détermination de la vitesse finale à une distance cible
# User inputs
velocity = float(input('Give me a velocity to fire at (in m/s): '))
angle = float(input('Give me an angle to fire at: '))
distance = float(input('Give me how far away you are from the
structure: '))
height = float(input('Give me the height of the structure (in meters):
'))
slingshot = 5 #Height of slingshot in meters
gravity = 9.8 #Earth gravity
# Converting angles to radians
angleRad = math.radians(angle)
# Computing our x and y coordinate
x = math.cos(angleRad)
y = math.sin(angleRad)
# Calculations
time = distance/(velocity * x)
vx = x
vy = y + (-9.8 * time)
finalVelocity = math.sqrt((vx ** 2) + (vy ** 2))
# Output of program
print('It takes your bird' , time , 'seconds to reach the structure')
print('Your velocity at the target distance is' , finalVelocity ,
'meters per second.')
Voici une entrée de l'échantillon et ce que le résultat attendu devrait être:
entrée Vitesse: 20 Angle d'entrée: 40 entrée Distance: 25 Hauteur d'entrée de la structure: 15
Résultat attendu:
Temps pour atteindre la structure: 1,63176 s
vitesse finale: 15,6384 de
de sortie de mon programme:
Temps pour atteindre la structure: 1,63176
vitesse finale: 15,36755
À première vue, il semblerait mon programme est très fermer, donc j'ai soupçonné une erreur d'arrondi, mais c'est une simple coïncidence avec les chiffres choisis qu'ils sont proches.
pourrait vous envoyer la sortie attendue avec les entrées –