Hei, dette er en oppgave fra s1 eksamen Våren 23,
kunne noen hjulpet meg forklare hva det er som skjer i dette programmet? Har skjønt at det er den deriverte som skal bli funnet, men jeg skjønner ikke helt hvorfor, eller hvordan man kan se det ved hjelp av programmet som er gitt..
Hva er det f.eks. "while" løkken har å si her?
"For en bedrift er kostnaden K (i kroner) ved produksjon av x enheter per uke av en varetype gitt ved
K(x)=0,2x^2 +140x+7000 Bedriften har laget følgende program:"
def K(x):
return 0.2*x**2 + 140*x + 7000
v = 260
h = 0.0001
x = 0
while (K(x+h)-K(x))/h < v:
x = x + 1
print(x)
Programmeringsoppgave s1 v23
Moderatorer: Aleks855, Gustav, Nebuchadnezzar, Janhaa, DennisChristensen, Emilga
-
- Weierstrass
- Innlegg: 495
- Registrert: 26/02-2021 21:28
Hallo ! while - setninga er ei såkalla vilkårsetning. Det betyr at programmet gjentek kommandoane i " løkka " så lenge vilkåret er oppfylt.
Det aktuelle vilkåret kan vi formulere omlag slik: Gjenta " løkka " så lenge grensekostnaden ( K ' ( x ) ) er mindre enn 260. Her ser vi at programmet " hoppar ut "
av løkka når grensekostnaden K' ( x ) = 260 , dvs. når x = 300. Dette resultatet kan vi lett kontrollere ved rekning ved å løyse likninga
K' ( x ) = 260
Det aktuelle vilkåret kan vi formulere omlag slik: Gjenta " løkka " så lenge grensekostnaden ( K ' ( x ) ) er mindre enn 260. Her ser vi at programmet " hoppar ut "
av løkka når grensekostnaden K' ( x ) = 260 , dvs. når x = 300. Dette resultatet kan vi lett kontrollere ved rekning ved å løyse likninga
K' ( x ) = 260
Hei!
Kjenner du definosjonen av den deriverte? Det er jo nettopp det som står i koden din:
(K(x+h)-K(x))/h (når h går mot 0.)
I oppgaven har du valgt h til å være et bittelite tall, nesten 0, så dette vil jeg tro blir en god nummerisk metode for å finne den deriverte.
whileløkka di går gjennom alle verdiene for x fra 0 og oppover og sjekker hva den deriverte av funksjonen din blir.
Når den deriverte av funksjonen din blir mer enn 260, er den ferdig og returnerer hvilken x verdi som gir den den ønskede deriverte.
Noe sånt... Spør om det ikke helt gir mening...
Ivan
Kjenner du definosjonen av den deriverte? Det er jo nettopp det som står i koden din:
(K(x+h)-K(x))/h (når h går mot 0.)
I oppgaven har du valgt h til å være et bittelite tall, nesten 0, så dette vil jeg tro blir en god nummerisk metode for å finne den deriverte.
whileløkka di går gjennom alle verdiene for x fra 0 og oppover og sjekker hva den deriverte av funksjonen din blir.
Når den deriverte av funksjonen din blir mer enn 260, er den ferdig og returnerer hvilken x verdi som gir den den ønskede deriverte.
Noe sånt... Spør om det ikke helt gir mening...
Ivan
Fremmad mot vannvidd og ære