Uke 4

Oppgave 1

I uke_04_oppg_1.py bruk while-løkker for å skrive ut dette mønsteret (for hver rad øker/minsker vi antallet med bindestrek.

Eksempelkjøring:

-->
---->
------>
-------->
---------->
-------->
------>
---->
-->
Oppgave 2

I uke_04_oppg_2.py skriv en program som spør bruker om et positive heltall n, og den skal skrive ut alle positive heltall mindre enn n, og er delelig med 7.

For eksempel:

Gi et positivt heltall: 49   
7
14
21
28
35
42
Gi et positivt heltall: 100  
7
14
21
28
35
42
49
56
63
70
77
84
91
98
Oppgave 3

I denne oppgaven skal du skrive ut en gangetabell til skjermen.

Eksempelkjøringer:

Oppgi et positivt heltall: 3  
1: 1 2 3
2: 2 4 6
3: 3 6 9
Oppgi et positivt heltall: 5  
1: 1  2  3  4  5
2: 2  4  6  8 10
3: 3  6  9 12 15
4: 4  8 12 16 20
5: 5 10 15 20 25

  • La programmet ha to nøstede løkker, som begge går igjennom verdiene fra 1 til n.

  • En iterasjon av den ytterste løkken er ansvarlig for å skrive ut én linje. Den ytterste løkken inneholder tre elementer: først, utskrift av hvilket tall denne linjen gjelder for, etterfulgt av kolon; deretter den innerste løkken; og til slutt utskrift av et linjeskift.

  • En iterasjon av den innerste løkken er ansvarlig for å skrive ut ett tall, nemlig produktet av iterandene (løkke-variablene) fra de to løkkene.

  • Husk at print(..., end=" ") vil skrive ut til skjermen og avslutte med et mellomrom istedet for et linjeskift.

Oppgave 4

I uke_04_oppg_4.py lag en chatbot som snakker med brukere. Chatboten kan bare si tre ting: Hi! Do you want to talk to me?, That's cool!, eller All right, bye!. Du må bruke input() for å hente svar fra brukeren til chatboten.

Eksempler:

Hi! Do you want to talk to me?
yes   
That's cool!
Hi! Do you want to talk to me?
hello
That's cool!
Hi! Do you want to talk to me?
egentlig ikke
That's cool!
Hi! Do you want to talk to me?
no
All right, bye!

Denne oppgaven kan løses på flere måter, men siden vi ikke vet hvor mange ganger løkken skal kjøres på forhånd, må vi i alle tilfeller bruke en while-løkke.

  • Alternativ A: Du kan benytte en while True -løkke, og så benytte break dersom brukeren svarer no.

  • Alternativ B: Du kan opprette en variabel answer = "" før while -løkken starter, og la betingelsen for while-løkken være answer != "no".

Oppgave 5

I uke_04_oppg_5.py skriv en for-løkke som itererer over bokstavene i Taumatawhakatangihangakoauauotamateaturipukakapikimaungahoronukupokaiwhenuakitanatahu (dette navnet på en ås i New Zealand er verdens lengste stedsnavn)og skriver ut skriver ut hver bokstav på en ny linje.

t
A
U
m
A
t
A
w
h
A
k

Du kan bruke .upper() og .lower() for å formatere bokstavene.

Oppgave 6

I en populasjon avhenger antall individer av en art naturlig nok av antall individer av den samme arten ved foregående tidspunkt. La oss si at ingen andre faktorer spiller inn. Da vil antall individer \(N_t\) ved tiden \(t\) være lik antallet individer ved forrige tidspunkt,\(N_{t-1}\) multiplisert med en vekstfaktor \(k\). Utrykket nedenfor angir antall harer etter en gitt tid: $$N_{t+1} = k*N_t$$

La \(k = 1.10\) og i uke_04_oppg_6.py skriv et program som spør bruker for n antall år og regner ut hvor mange harer det er i poulasjonen etter n år. Anta at det er 100 harer til å starte med (\(N_0 = 100\)). Skriv ut resultatene som heltall (bruk int()).

Eksempelkjøringer:

Antall år: 10   
Antall harer etter 10 år er: 259
Antall år: 13   
Antall harer etter 13 år er: 345
Antall år: 100   
Antall harer etter 100 år er: 1378061
Bonus 1

Du er uteksaminert fra UiB og har nå en flott jobb! Du flytter til London og bestemmer deg for at du vil begynne å spare for å kjøpe hus. Siden boligprisene er svært høye i London, innser du at du må spare i flere år før du har råd til å skaffe deg egenkapital. Vi skal finne ut hvor lang tid det vil ta deg å spare nok egenkapital gitt følgende forutsetninger:

I filen uke_04_bonus_1.py skriv program som ber brukeren om å angi følgende variabler

  1. årslønn.
  2. Prosentandel av lønnen som skal spares.
  3. Total kostnaden for drømmeboligen.

og beregner hvor mange måneder det vil ta deg å spare opp nok egenkapital. Her kan du anta at det etter hver måned blir utbetalt r/12 i renter av det som står på konto.

Hva er årslønn?: 500000  
Hvor mange prosent spares?: 20 
Hvor mye koster boligen?: 3000000 
Det tar 79 måneder å spare nok egenkapital
Hva er årslønn?:  900000 
Hvor mange prosent spares?:  10 
Hvor mye koster boligen?:  5000000 
Det vil ta deg 133 måneder å spare opp nok egenkapital.
Bonus 2

I uke_04_bonus_2.py, skriv en nedtelling som utfører følgende oppgave:

For eksempel:

Hvor lang nedtelling ønsker du?  10 
++++++++++ 10
--------- 9
         8
        7
------ 6
+++++ 5
     4
--- 3
   2
  1