Lab 2
Oppgave 1
I filen uke_02_oppg_1.py, skriv kode som gjør følgende, i oppgitt rekkefølge:
- Ber om brukerens navn ved å bruke
print()
, og leser inn brukerens navn ved å brukeinput()
. - Ber om brukerens gateadresse ved å bruke
print()
, og leser inn adressen ved å brukeinput()
. - Ber om brukerens postkode og poststed ved å bruke
print()
, og leser inn ved å brukeinput()
. - Printer «navn-s adresse er:». Ikke glem s-en!
- Printer en tom linje
- Printer navn og adresse slik man skriver det på et brev
Tips: lagre det du får som input fra brukeren i variabler.
Eksempelkjøring (uthevet tekst er skrevet av brukeren etter programmet har startet, koden din skal også fungere med andre navn / adresser):
Hva er ditt navn?
Kari Nordmann
Hva er din adresse?
Gateveien 1
Hva er ditt postnummer og poststed?
1234 Stedet
Kari Nordmanns adresse er:
Kari Nordmann
Gateveien 1
1234 Stedet
Oppgave 2
I filen uke_02_oppg_2.py, skriv kode som gjør følgende, i oppgitt rekkefølge:
- Leser inn brukerens navn.
- Leser inn brukerens gateadresse.
- Leser inn brukerens postkode og poststed.
Så langt nøyaktig det samme som oppgave 1, altså. Men det neste steget er annerledes:
- Finner lengden til hver av de tre strengene som er lest (bruk
len()
). - Skriver ut lengden på den lengste strengen som ble gitt som input (bruk
max()
)
Bruk kun de python-bitene vi har sett på så langt!
Eksempelkjøring:
Hva er ditt navn?
Kari Nordmann
Hva er din adresse?
Gateveien 1
Hva er ditt postnummer og poststed?
1234 Stedet
13
Oppgave 3
I storbritannia bruker man en gammel enhet til vekt: “7 stone 12 pounds” tilsvarer omtrent 50 kg. I filen uke_02_oppg_3.py, skriv kode som gjør følgende, i oppgitt rekkefølge:
Spør brukeren om en vekt i enheten stones og enheten pounds via to
input()
funksjoner, og lagre inputen i to variabler.Beregner tilsvarende vekt til summen av inputvektene, i enheten
kilogram
.
Konverter først stones til
kilogram
med formelen$$ V_{kg} = \frac{V_{st}}{0.15747}$$
hvor \(V_{kg}\) er vekten i
kilogram
og \(V_{st}\) er vekten istones
.Konverter siden
pounds
tilkilogram
med formelen$$V_{kg} = \frac{V_{lb}}{2.20462}$$
hvor \(V_{kg}\) er vekten i
kilogram
og \(V_{lb}\) er vekten ipounds
.Summér til sist de to verdiene du har beregnet.
- Print resultatet.
Eksempelkjøring:
Vekt i stones: 3
Vekt i pounds: 6
Vekt i kilogram: 21.772805313348453
Oppgave 4
I filen uke_02_oppg_4.py, skal du skrive et program som regner ut avstanden mellom to punkter.
- Spør brukeren om en x koordinaten til første-punkt via to
input()
funksjoner. - Spør brukeren om en y koordinaten til første-punkt.
- Spør brukeren om en x koordinaten til andre-punkt.
- Spør brukeren om en y koordinaten til andre-punkt.
- Lagre inputene i fire variabler, for eksempel x1, y1,x2,y2
- Beregn avstanden mellom punktene (x1,y1) og (x2,y2) ved å bruke avstanden formellen:
$$ \sqrt{(x2 - x1)^2 + (y2 - y1)^2}$$
- Print resultatet.
Operatoren for eksponentiering er
**
, f. eks. vil3**2
evaluere til9
.Å ta kvadratroten av et tall er det samme som å opphøye tallet i
0.5
. For eksempel,9**0.5
vil evaluere til3.0
.
Eksempelkjøring:
X koordinaten til første-punkt: 0
Y koordinaten til første-punkt: 0
X koordinaten til andre-punkt: 1
Y koordinaten til andre-punkt: 1
Avstanden er: 1.41421356237
Oppgave 5
I denne oppgaven skal vi spørre brukeren om en haiku og siden printe den på en fin måte på skjermen.
I filen uke_02_oppg_5.py, skriv kode som gjør følgende, i oppgitt rekkefølge (merk at noen av de beskrevne punktene her krever mer enn en enkelt linje med Python-kode):
- Spør brukeren om første raden i en haiku. Lagre resultatet i en ny variabel.
- Spør brukeren om andre raden i en haiku. Lagre resultatet i en ny variabel.
- Spør brukeren om tredje raden i en haiku. Lagre resultatet i en ny variabel. Nå burde du ha tre variabeler.
- Finn lengden av hver linje (bruk
len()
) - Finn lengden av den lengste linjen (bruk
max()
) - Skriv ut en tom linje
- Skriv ut toppen av haiku-rammen. Lengden av den er basert på lengden av den lengste linjen (som vi fant i trinn 5), pluss fem til. Vi trenger fem til fordi vi har
@
foran teksten og to mellomrom på begge side av teksten (se eksempelkjøring nedenfor), og et to-sifret tall etter (frivillig: får det til med linjene som er kortere enn 10 og) - Skriv ut hver av de tre linjene. Hver linje skal begynne med
@
+ et passende antall mellomrom. Deretterer følger selve teksten, og til slutt et nytt mellomrom og lengden av haiku-teksten. (Hvor mange mellomrom er passende for hver linje? ) - Skriv ut bunnen av rammen.
Eksempelkjøring:
Første raden:
What a pleasure to
Andre raden:
right justify a haiku
Tredje raden:
as an exercise
##########################
@ What a pleasure to 18
@ right justify a haiku 21
@ as an exercise 14
##########################
Husk at strenger kan gjentas flere ganger ved help av
*
. For eksempel vil"bar" * 2
evaluere til"barbar"
.