Betygsystem i mathlab.
Hej, jag ska utföra följande:
En viss kurs kan ge betyg U, G, eller VG beroende på poängen på tentan. Gränsen
för G är 60% av maxpoängen och gränsen för VG är 80%. Skriv en funktion där input
är poängen man fick på tentan och tentans maxpoäng (dvs. två input-variabler), och
output-variabeln ger betyget som ett ord. Använd if-satser eller elseif-satser. Välj
själv vettiga namn på funktionen och variablerna.
Jag har kommit så här långt men de vill sig inte riktigt.
Länge sedan jag höll på med matlab, men rimligt vore väl om du skrev in tentaresultat(8,10) eftersom du nu bara har ett enda input. maxp är odefinierad och därför fungerar inte din x=p/maxp.
Dessutom har du väl missat ett <= eller < i din if-statement (första), nu har du bara x 0.8.
Du anger bara 1 argument till funktionen. När du skriver tentaresultat(4/4) kommer 4/4 att beräknas och bli 1, vilket resulterar i tentaresultat(1). Testa att skriva tentaresultat(4, 4) istället.
Hmm.. Vad ska jag göra för att x=p/maxp ska bli definerad?
tapetklister skrev:Hmm.. Vad ska jag göra för att x=p/maxp ska bli definerad?
Använd tentaresultat(8,10) istället för tentaresultat(8/10). Om du skriver in 8/10 istället för (8,10) så har du helt i onödan använt x=p/maxp eftersom det är just det som din algoritm försöker göra.
woozah skrev:Länge sedan jag höll på med matlab, men rimligt vore väl om du skrev in tentaresultat(8,10) eftersom du nu bara har ett enda input. maxp är odefinierad och därför fungerar inte din x=p/maxp.
Dessutom har du väl missat ett <= eller < i din if-statement (första), nu har du bara x 0.8.
Du hade rätt där, saknades en <. Blev mycket godkänt ;)
woozah skrev:tapetklister skrev:Hmm.. Vad ska jag göra för att x=p/maxp ska bli definerad?
Använd tentaresultat(8,10) istället för tentaresultat(8/10). Om du skriver in 8/10 istället för (8,10) så har du helt i onödan använt x=p/maxp eftersom det är just det som din algoritm försöker göra.
Tack så mycket för svaret, första dagen med programmet :)
Hej!
Borde du inte skriva funktionens namn (betyg) istället för "tentaresultat"?
Funktionen "betyg" tar två indata, men du verkar bara ge den ett indata. Prova att skriva betyg(4,4) istället för betyg(4/4) så har du tillräckligt många indata.
Sedan är det fel i koden på rad 5. Det ska stå
if x>=0.6 && x<0.8
istället för
if x>=0.6 && x 0.8
Albiki skrev:Hej!
Borde du inte skriva funktionens namn (betyg) istället för "tentaresultat"?
Antagligen heter filen tentaresultat.m (en matlab-fil) och då anropar han den filen genom att skriva tentaresultat(8,10). Eller?