Du er ikke logget inn. Så lenge du ikke er logget inn går du glipp av muligheten for å holde styr på din egen progresjon.

Logg inn

Valgte tags:

Filtrering:

Skriv ut:

1.3.1: Fra input til output

Du skal nå lage tre forskjellige program som krever et input, tar en beslutning og gir et output.

  1. Lag et program som spør brukeren om alderen til brukeren. Skriv ut en kommentar som avhenger av om alderen er under eller over 30. Utvid programmet til å skille mellom flere alderskategorier.

  2. Lag et program som tar et tall som input. Programmet skal så vurdere og skrive ut om tallet er et positivt tall, negativt tall eller null.

  3. Lag et program som tar to tall som input. Programmet skal skrive ut hvilket av tallene som er minst.

Vis løsningsforslag

Se i bunnen av feltet for en kommentar om konvertering av tekst til tall.

Oppgave 1
Først skal vi skille de over og under 30 år. Det gjør vi med en if-else-statement:

alder = input("Hvor gammel er du? ") #henter inputverdi
alder = float(alder)                 #konverterer streng til float

if alder < 30:  #under 30?           #under 30?
    print("Under 30")                #printes hvis under 30
else:                                #30 eller eldre
    print("Over 30")                 #printes hvis 30 eller eldre

For å skille mellom flere aldersgrupper må vi legge inn flere beslutninger. Dette gjør vi ved hjelp av elif. Vi kan ha så mange elif vi vil, men i dette eksempelet bruker vi bare én.

alder = input("Hvor gammel er du? ")
alder = float(alder)

if alder < 18:                      #bruker under 18?
    print("Ungdom")
elif alder >= 18 and alder < 67:    #bruker mellom 18 og 67?
    print("Voksen")
else:                               #67 eller eldre
    print("Pensjonist")

Oppgave 2
Nå skal vi vurdere om et tall er negativt, positivt eller null. Da kan vi lage en if-elif-else-statement. Oppgaven løses på samme måte som oppgave 1, men med andre betingelser og utskrifter.

tall = input("Hvilket tall vil du vurdere? ")
tall = float(tall)

if tall < 0:
    print("Tallet er negativt")
elif tall > 0:
    print("Tallet er positivt")
else:
    print("Tallet er null")

Oppgave 3
Denne oppgaven er veldig lik oppgave 2, bortsett fra at vi får input av to tall, og bruker andre betingelser og utskrifter..

tall1 = input("Skriv inn ett tall: ")
tall1 = float(tall1)
tall2 = input("Skriv inn enda ett tall: ")
tall2 = float(tall2)
if tall1 < tall2:
    print(tall1, "er minst")
elif tall1 > tall2:
    print(tall2, "er minst")
else:
    print("Tallene er like store")

Kommentar
Når vi ber om alder som input, får vi et tall i tekstformat, som må konverteres til tallformat. Dette er de to første linjene i koden. Disse to linjene kan enkelt skrives på en linje ved å bruke float() rundt input(). Eksempel:

alder = float(input("Hvor gammel er du? ")) #får input og konverterer