Øvingsforelesning 3 Python (TDT4110)

Like dokumenter
Øvingsforelesning 1 Python (TDT4110)

Øvingsforelesning 5 Python (TDT4110)

Øvingsforelesning 5 Python (TDT4110)

Øvingsforelesning i Python (TDT4110)

Oppsummering fra sist

TDT4110 Informasjonsteknologi grunnkurs: Tema: Løkker. - 3rd edition: Kapittel 4. Professor Alf Inge Wang

Med løkke: Læringsmål og pensum. TDT4110 Informasjonsteknologi grunnkurs: Tema: Løkker/Sløyfer Utgave 3: Kap. 4 Utgave 2: Kap. 5. Mål.

Læringsmål og pensum. Intro løkker. Mål Lære om begrepet løkker Lære om bruk av while-løkke Lære om bruk av for-løkke Pensum. Kapittel 4.

Øvingsforelesning 6 i Python (TDT4110)

Først må vi få datamaskinen til å velge et tilfeldig ord, så la oss begynne. Lagre programmet ditt og kjør det. Hvilket ord skrives ut?

Øvingsforelesning 7 i Python (TDT4110)

Hangman. Steg 1: Velg et ord. Steg 2: Gjett en bokstav. Sjekkliste. Sjekkliste. Introduksjon

Mattespill Nybegynner Python PDF

TDT4110 IT Grunnkurs Høst 2014

Øvingsforelesning i Python (TDT4110)

Python: Løkker. TDT4110 IT Grunnkurs Professor Guttorm Sindre

TDT4110 IT Grunnkurs Høst 2016

Programmering Høst 2017

Hangman. Level. Introduksjon

Øvingsforelesning i Matlab (TDT4105)

Forkurs INF1010. Dag 1. Andreas Færøvig Olsen Tuva Kristine Thoresen

Hvordan løse problemer med programmering?

Hver ting i en liste kalles et element. En liste lages ved å skrive elementer inni [], med, mellom elementene:

TDT4110 IT Grunnkurs Høst 2015

Læringsmål og pensum. if (be): else (not_to_be):

I denne oppgaven skal vi repetere litt Python-syntaks, det er en god blanding av alle tingene du har lært i Python til nå.

Repetisjon Novice Videregående Python PDF

TDT4102 Prosedyre og Objektorientert programmering Vår 2015

TDT4110 Informasjonsteknologi grunnkurs: Tema: Betingelser og logiske uttrykk. - 3rd edition: Kapittel 3. Professor Alf Inge Wang

TDT4105 Informasjonsteknologi grunnkurs Øvingsforelesning 2. Iver Dihle Skjervum Vit.ass. ITGK

Øvingsforelesning i Matlab TDT4105

Python: Løkker. TDT4110 IT Grunnkurs Professor Guttorm Sindre

Obligatorisk oppgave MAT-INF1100. Lars Kristian Henriksen UiO

TDT4110 IT Grunnkurs Høst 2016

Python: Oppslagslister (dictionaries) og mengder 3. utgave: Kapittel 9

Løkker og arrayer. Løse problemer med programmering. INF1000, uke3 Geir Kjetil Sandve

MAT Oblig 1. Halvard Sutterud. 22. september 2016

IN1000 Obligatorisk innlevering 7

if-tester Funksjoner, løkker og iftester Løkker og Informasjonsteknologi 2 Læreplansmål Gløer Olav Langslet Sandvika VGS

Øvingsforelesning i Python (TDT4110)

Øvingsforelesning i Python (TDT4110)

Hash-funksjoner. Introduksjon. Steg 1: Strekkoder. Eksempel. Skrevet av: Martin Strand

Øvingsforelesning 9 i Python (TDT4110)

AlgDat - Øvingsforelesning 1 Introduksjon til Python, lenkede lister og øving 1

Bruk piazza for å få rask hjelp til alles nytte!

TDT4102 Prosedyreog objektorientert programmering Vår 2016

Oppgaver uke 1: Løsningsforslag

Sideeekter og makroer i Lisp

Oversikt. Introduksjon Kildekode Kompilering Hello world Hello world med argumenter. 1 C programmering. 2 Funksjoner. 3 Datatyper. 4 Pekere og arrays

Oppgave 1 Hva tror du følgende program skriver ut til terminalen? Diskuter med gruppen.

Bygge en pyramide. Introduksjon. Steg 1: Lage en ny mod. Sjekkliste. Skrevet av: Pål G. Solheim

Visual Basic. Repetisjon fra onsdag

TDT4105 Informasjonsteknologi grunnkurs Øvingsforelesning 4. Iver Dihle Skjervum Vit.ass. ITGK

Finne ut om en løsning er helt riktig og korrigere ved behov

Steg 1: Rest etter divisjon

TDT4105 IT Grunnkurs Høst 2016

TDT4105 Informasjonsteknologi, grunnkurs. Matlab 5: Løkker (FOR og WHILE) Matlab 6: Problemløsning / Algoritmer

TDT4127 Programmering og Numerikk

EKSAMENSOPPGAVE / EKSAMENSOPPGÅVE

Løkker og lister. Løse problemer med programmering. INF1001, uke3 Geir Kjetil Sandve

Mål. Pensum. TDT4110 Informasjonsteknologi grunnkurs: Tema: Unntak (exceptions) (Kap 6) Dictionaries (Kap. 9) Terje Rydland - IDI/NTNU

TDT4105 Informasjonsteknologi, grunnkurs. Matlab 5: Løkker (FOR og WHILE) Matlab 6: Problemløsning / Algoritmer

TDT4110 Informasjonsteknologi grunnkurs: Tema: Betingelser og logiske uttrykk Utgave 3: Kap. 3

MAT1030 Diskret matematikk

INF1000 (Uke 15) Eksamen V 04

INF1000 (Uke 15) Eksamen V 04

if (be): else (not_to_be): TDT4110 Informasjonsteknologi grunnkurs: Tema: Betingelser og logiske uttrykk Utgave 3: Kap.

1. Rullende navn, s 3 2. Smilefjes, s 5 3. Skritteller, s 7 4. Orakel, s 9 5. Stein, saks og papir, s Kompass, s 14

Python: Løkker. TDT4110 IT Grunnkurs Professor Guttorm Sindre

Finne ut om en løsning er helt riktig og korrigere ved behov

Forkurs i informatikk Python. Andreas Færøvig Olsen

TDT4110 Informasjonsteknologi grunnkurs: Tema: Funksjoner med retur og moduler. - 3rd edition: Kapittel Professor Alf Inge Wang

Python: Valg og betingelser. TDT4110 IT Grunnkurs Professor Guttorm Sindre

Leksjon 3. Kontrollstrukturer

Øvingsforelesning i Matlab (TDT4105)

Hvor gammel er du? Hvor gammel er du? Del 1: Skrive ut til skjerm. Gjøre selv. Skrevet av: Sindre O. Rasmussen, Kodeklubben Trondheim

TDT4102 Prosedyre og Objektorientert programmering Vår 2014

UNIVERSITETET I OSLO

TDT4102 Prosedyre og Objektorientert programmering Vår 2015

Løse reelle problemer

HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL

Metoder med parametre, løkker og arrayer

Løse reelle problemer

PGZ - Hangman Ekspert Python Lærerveiledning

HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL

Excited. Hvordan komme i gang med tekstbasert programmering? Centre for Excellent IT Education. Guttorm Sindre

Øvingsforelesning TDT4105 Matlab

TDT Øvingsforelesning 1. Tuesday, August 28, 12

Tre på rad mot datamaskinen. Steg 1: Vi fortsetter fra forrige gang

HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL

TDT4110 Informasjonsteknologi grunnkurs: Tema: Filer og unntak ( exceptions ) - 3rd edition: Kapittel 6. Professor Alf Inge Wang

Læringsmål og pensum. Inn- og utoperasjoner 21/10/16

INF1000 (Uke 5) Mer om løkker, arrayer og metoder

TDT4102 Prosedyre og Objektorientert programmering Vår 2014

I denne oppgaven skal vi gjøre enkle operasjoner på tekst, som å endre størrelsen på bokstavene og telle ord.

Visuell Programmering: Kom i gang med Processing

Web-programmering med JSP Løsningsforslag leksjon 3

Norsk informatikkolympiade runde

JS: Grunnleggende JavaScript

Transkript:

Øvingsforelesning 3 Python (TDT4110) For og While-løkker Ole-Magnus Pedersen

Oversikt Praktisk Info Gjennomgang av øving 1 Programmering for Øving 3 2

Studasser og Piazza Studasser er der for å hjelpe Bruk andre studasser dersom din har lang kø Piazza er et godt sted å stille spørsmål piazza.com/ntnu.no/fall2017/tdt4110 3

Kahoot! Tilbakemelding på øvingsopplegget Sjekke ut mulighet for å redusere til to paralleller Link 4

Oversikt Praktisk informasjon Gjennomgang av Øving 1 Programmering for Øving 3 5

Oversikt Praktisk informasjon Gjennomgang av Øving 1 Programmering for Øving 3 6

Løkker Brukes dersom deler av programmet skal kjøres flere ganger <Condition> No <Program after loop> Om den kjøres igjen kontrolleres av en betingelse Yes <Loop body> 7

for-løkker Kjører koden et gitt antall ganger Antall ganger den skal kjøres må vites før man løkken starter Teknisk sett går den gjennom elementene i en iterable for i in range ( 100) : print ( i) # Printer tallene fra 0 til 99 for j in range (5, 10) : print ( j) # Printer tallene fra 5 til 9 for k in range (0, 20, 2): print ( k) # Printer partall fra 0 til 19 for karakter in " dette er en streng ": print ( karakter ) # Printer hver bokstav i strengen for num in [1, 4, 6, 7]: print ( num ) # Printer hvert tall i lista 8

Eksempel Skriv et program som summerer sammen tallene fra 4 til 20 (inklusiv) 9

Oppgave Lag et program som tar inn to tall fra brukeren, og skriver ut alle tallene mellom disse (første inklusiv, andre eksklusiv) som er delelig på 3 10

while-løkke Løkken kjører så lenge en betingelse er oppfylt while <condition >: # Code to perform in loop while password!= real_ password : password = input (" Feil passord, prøv igjen : ") 11

Eksempel Skriv et program som tar inn et tall og summerer tallene fra 1 og oppover helt til summen overstiger det oppgitte tallet. Skriv ut hvert regnestykke til konsollen. 12

Oppgave Lag en while-løkke som skriver ut alle tallene fra 10 til og med 0. 13

Oppgave Lag et program som tar inn et tall fra brukeren og sjekker om det er likt et annet tall du har bestemt på forhånd. Hvis tallene ikke er like, skal programmet si om det innskrevne tallet er større eller mindre enn målet, og brukeren skal få gjette igjen. Om tallet er riktig skal programmet si ifra om dette og avslutte. 14

Break og continue Noen ganger vil man avslutte løkken før den egentlig er ferdig Man har funnet det man leter etter Man er ferdig med en oppgave Bruker velger å avslutte break lar oss avslutte Andre ganger vil man avslutte en runde i løkken (men så starte på en ny): Ugyldig input fra bruker Operasjoner som bare skal gjøres i spesifikke iterasjoner (f.eks. partall) continue lar oss gjøre dette 15

Else Kode i else-blokken kjøres bare hvis loopen ikke ble avsluttet ved et break for i in range (n): if i % k == 0: break <do stuff > else : < do stuff if break was never reached > 16

Oppgave Skriv en while-løkke som tar inn et tall hver iterasjon og summerer tallene Hint: while True: 17

Oppgave Skriv en while-løkke som tar inn et tall hver iterasjon og summerer tallene Hint: while True: Gjør at programmet avsluttes dersom 1 skrives inn (uten å legge -1 til i summen) 17

Oppgave Skriv en while-løkke som tar inn et tall hver iterasjon og summerer tallene Hint: while True: Gjør at programmet avsluttes dersom 1 skrives inn (uten å legge -1 til i summen) Avslutt programmet dersom summen går over 100 (men skriv ut siste summen) 17

Oppgave Lag et program som tar inn en tekststreng fra brukeren. For hver karakter i strengen skal programme sjekke om det er et tall, og hvis det er det skal det legges til i en sum. Til slutt skal summen skrives ut. str.isnumeric(), int(str) 18

Oppgave Lag et program som printer 10 tilfeldige tall import random, random.randint(min, max) 19

Oppgave Lag et program som printer 10 tilfeldige tall import random, random.randint(min, max) Modifiser programmet til å også printe ut hvor mange oddetall som ble laget 19

Oppgave Lag et program som printer 10 tilfeldige tall import random, random.randint(min, max) Modifiser programmet til å også printe ut hvor mange oddetall som ble laget Print også ut det høyeste tallet som ble laget 19

Oppgave Lag et program som tar inn to heltall fra brukeren, max og target. Programmet skal generere tilfeldige tall mellom 0 og max helt til det lager target, og printe hvert tall. 20

Oppgave Lag et program som tar inn to heltall fra brukeren, max og target. Programmet skal generere tilfeldige tall mellom 0 og max helt til det lager target, og printe hvert tall. Utvid programmet til å til slutt printe ut hvor mange forsøk det trengte for å lage target 20

Spørsmål Spørsmål og tilbakemeldinger til øvingsforelesningene kan sendes til olemagnp@stud.ntnu.no 21