Uke 2 — print / input

Eksempler

Les resten av kapittel 1 av Automate the boring stuff.

I følgende kodeeksempler skal du først lese koden, så forsøke å forstå hva den gjør. Etterpå skal du prøve å kjøre koden og se om den gjør det du trodde den kom til å gjøre.

Obs

For å laste ned filene, kan du høyreklikke / ctrl-klikke på dem og velge «Save link as» fra menyen. Lagre filene i en mappe du bruker for INF100, så åpner du den samme mappen i VSCode etterpå.

Eksempel 1

Last ned filen her: hello_1.py.

print('Hello World!')
print()
print("Hei hei")
print("Velkommen!")
print()
print('Prøv å skrive ut mer...')
2 + 2
print(9 + 8)

Hva tror du outputet blir? Var det riktig?

Eksempel 2

Last ned filen her: hello_2.py.


sted = 'Vi er i Bergen'
print(sted)

flere = 'Aaa\nBbb\nCcc'
print(flere)

hei = 'Hei alle sammen!'

print(hei * 3)

print('\n' * 5)

# Hva er forskjellen her?
print(4 + 7)
print('4 + 7')

print()

x = 12
y = 20
print('x =', x)
print('y =', y)
print('y - x =', y-x)
print()

x = x + 1
y = y + 5
print('x =', x)
print('y =', y)
print('y + x =', y-x)
# Hvorfor er svaret feil her?

Svar på spørsmålet i filen. Hva tror du outputet blir? Var det riktig?

Eksempel 3

Last ned filen her: input_1.py.

print('God morgen!')

navn = input('Hva heter du? ')
print('Hyggelig å hilse på deg,',navn)

lengde = len(navn)
print('Navnet ditt har',lengde,'bokstaver.')

understrek = '-' * lengde
print(navn)
print(understrek)

print()
print()
print()

# Input kan brukes uten = (assignment),
# men hva skjer med svaret her?
input('Kan vi gå videre? ')

a = input('Tall A: ')
b = input('Tall B: ')

print('Summen er ', a+b)

a = int(a)
b = int(b)
print('Summen er ', a+b)

Svar på spørsmålet i filen. Hva tror du outputet blir? Var det riktig? Hvorfor blir det en forskjell mellom de siste to outputene?

Eksempel 4

Denne filen inneholder noen feil som gjør at den ikke kan kjøres. Finn feilen(e) og endre koden slik at den kan kjøres.

Last ned filen her: errors_1.py.

a = 7
b = 12
sted = 'Vi er i Bergen'
print(stedt)

flere = 'Aaa\nBbb\nCcc'
print(flere)

print('\n' + 3)

print(4 + )
print('4 + 7')

prin()

x = 12
y = 20
print('x =', x)
print('y =', y)
print('y - x =', z-x)
print()

x = x + 1
y = y + 5
print('x =', x)
print('y =', y)
print('y + x =', y-x)

print('God morgen!')

input('Hva heter du? ')
print('Hyggelig å hilse på deg,',navn)

A = input('Tall A:')
B = input('Tall B:')

print('Summen av A og B er:', a + b)

Oppgaver

I disse oppgavene skal du lese inn input, og bruke det videre i koden din. Det er viktig å følge instruksene i oppgaven og skrive akkurat det som blir bedt om.

Husk på disse tingene:

  • Hver gang du leser inn noe med input() skal svaret være på den samme linjen. Skriv f.eks input('Skriv noe: '), istedet for input('Skriv noe:\n') (\n legger til en ny linje).

  • Les oppgaveteksten nøye, det er vanlig å måtte lese gjennom flere ganger før du forstår det 100%

  • Når eksempelkjøringer er oppgitt, skal kjøringen se akkurat ut som oppgitt, dette inkluderer mellomrom osv. Se f.eks nedenfor:

Eksempelkjøring:

Tekst: Heihei
==========
= Heihei =
==========

Hvis din kode ser slik ut:

Tekst:
Heihei
==========
= Heihei =
==========

Her er det en ny linje (\n) etter Tekst:

Hvis din kode ser slik ut:

Tekst:Heihei
==========
= Heihei =
==========

Her mangler det et mellomrom etter Tekst:

Oppgave 1

I filen oppgave_1.py, skriv kode som gjør følgende, i oppgitt rekkefølge:

  1. Spør brukeren om dennes navn via input(), og lagre (assign) resultatet i en variabel.

  2. Skriver ut navnet med print() funksjonen.

  3. Skriver ut antall bokstaver i navnet med len() og print() funksjonen.

Eksempelkjøring:

Hva heter du? Ola
Ola
3

Oppgave 2

I filen oppgave_2.py, skriv kode som gjør følgende, i oppgitt rekkefølge:

  1. Spør om brukerens alder via input() funksjonen, og lagrer resultatet i en variabel.

  2. Printer hvor mange år det er kvar til brukeren blir 100 år.

Eksempelkjøring:

Hvor gammel er du? 23
Du blir 100 år om 77 år.

Oppgave 3

I filen oppgave_3.py, skriv kode som gjør følgende, i oppgitt rekkefølge:

  1. Spør brukeren om en temperatur i enheten Fahrenheit via input() funksjonen, og lagrer resultatet i en variabel.

  2. Beregner tilsvarende temperatur i enheten Celsius. Den matematiske formelen er:

    \[T_C = (T_F - 32) \cdot \frac{5}{9},\]

    hvor \(T_C\) er temperaturen i Celsius og \(T_F\) er temperaturen i Fahrenheit.

  3. Print resultatet.

Eksempelkjøring:

Temperatur i Fahrenheit: 225
Temperatur i Celsius: 107.22222222222223

Oppgave 4

I filen oppgave_4.py, skriv kode som gjør følgende, i oppgitt rekkefølge:

  1. Leser inn en streng via input() funksjonen, og lagrer resultatet i en variabel.

  2. Tegn en boks rundt strengen. Det skal være ett mellomrom før og etter strengen, og en = på hver side. Fyll inn over og under tilsvarende.

Eksempelkjøring:

Tekst: Heihei
==========
= Heihei =
==========

Oppgave 5

I filen oppgave_5.py, skriv kode som gjør følgende, i oppgitt rekkefølge:

  1. Les inn en streng via input() funksjonen, og lagre resultatet i en variabel.

  2. Les inn et heltall med input(), dette heltallet skal du bruke som lengde i neste steg.

  3. Skriv så ut en boks med input strengen fra steg 1 i midten, den horisontale (sidelengs) lengden av boksen skal være lik heltallet fra steg 2.

Tips

Bruk heltallsdivisjon // for å beregne antall mellomrom til venstre og høyre for teksten.

Eksempelkjøring:

Tekst: Heihei
Tall: 40
========================================
=                Heihei                =
========================================