Gå til innhold

Spm vedrørende for løkke Python


Anbefalte innlegg

Hei, jeg driver med en oppgave i INF1100 og har løst den på en litt tungvindt måte (Legger ikke ut i frykt for plagiat, de er vist strenge på det). Har lyst til å prøve med løkke isteden.

from __future__ import division
from math import pi
C_d = 0.4 #Drag coefficient
Q = 1.2   #Density of air
G = 9.81
a = 0.11  #Radius
M = 0.43  #Mass
A = pi*a**2 #Cross sectional area
V1 = 120.0  #Force kick 120km/h
V2 = 30.0	#Force kick 30km/h
V1 = V1*1000/60/60 #Force kick m/s
V2 = V2*1000/60/60 #Force kick m/s

kick = [V1, V2]

for V in kick:
	F_d = 0.5*C_d*Q*A*(V**2) #Drag force
	print " Drag force = %.1f N" % (F_d)

F_g = M*G #Gravity force
print "Gravity force = %.1f N" % (F_g)

ratio = F_d/F_g
print ratio
 

Som dere ser har jeg lagt en liste hvor jeg har puttet variablene V1 og V2. Deretter har jeg lagd en for løkke med formelen for drag force. Når jeg kjører det som det er får jeg:

Drag force = 10.1 N

 Drag force = 0.6 N

Gravity force = 4.2 N

0.15019190633

 

Ene jeg lurer på er om det er mulig å få det sånn at føste linje blir "At 120km/h Drag force = 10.1 N" og andre linje blir "At 30Km/h Drag force = 0.6 N". Jeg får til dette, når jeg ikke bruker for løkke, men da tar jeg og skrive hele koden to ganger, og bytter fra 120km/t til 30km/t på neste. Altså tungvint og mye tekst.
 
Noen tips?
Endret av TheNarsissist
Lenke til kommentar
Videoannonse
Annonse

https://docs.python.org/2/library/string.html#formatspec

from __future__ import division
from math import pi
C_d = 0.4 #Drag coefficient
Q = 1.2   #Density of air
G = 9.81
a = 0.11  #Radius
M = 0.43  #Mass
A = pi*a**2 #Cross sectional area
V1 = 120.0  #Force kick 120km/h
V2 = 30.0	#Force kick 30km/h

kick = [V1, V2]

for V in kick:
	V_fk = V*1000/60/60 #Force kick
	F_d = 0.5*C_d*Q*A*(V_fk**2) #Drag force
	print "At {:.0f} km/t Drag force = {:.1f} N".format(V, F_d)

F_g = M*G #Gravity force
print "Gravity force = %.1f N" % (F_g)

ratio = F_d/F_g
print ratio
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...