INF109 - Uke 1a

Like dokumenter
For å sjekke at Python virker som det skal begynner vi med å lage et kjempeenkelt program. Vi vil bare skrive en enkel hilsen på skjermen.

Oppgaver uke 1: Løsningsforslag

TDT4110 Informasjonsteknologi, grunnkurs Uke 35 Introduksjon til programmering i Python

Læringsmål og pensum. v=nkiu9yen5nc

Øvingsforelesning i Python (TDT4110)

Kom i gang med Python

TDT4110 Informasjonsteknologi grunnkurs: Kapittel 1 Introduksjon til Programmering og Python. Professor Alf Inge Wang

INF109 - Uke 1b

Hangman. Level. Introduksjon

Øvingsforelesning i Python (TDT4110)

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

Husk at du skal ha to vinduer åpne. Det ene er 'Python Shell' og det andre er for å skrive kode i.

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

Hvordan installere Java og easyio på Windows

Repetisjon Novice Videregående Python PDF

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?

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å.

Skilpaddetekst. Steg 1: Tekst på flere linjer. Sjekkliste. Introduksjon

Steg 1: Tekst på flere linjer

YouTube-kanal ITGK. Læringsmål og pensum

IN uke 1. Komme i gang med programmering

Husk at du skal ha to vinduer åpne. Det ene er 'Python Shell' og det andre er for å skrive kode i.

Hvis Python allerede er installert på maskinen din er det bare å begynne.

TDT4110 Informasjonsteknologi grunnkurs: Tema: Enkle funksjoner. - 3rd edition: Kapittel Professor Alf Inge Wang

Steg 1: Rest etter divisjon

Skilpaddekunst. Steg 1: Møt skilpadden. Sjekkliste. Introduksjon. Turtles

Innleveringsoppgave 1

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

I dag skal vi ved hjelp av ganske enkel Python-kode finne ut om det er mulig å tjene penger på å selge og kjøpe en aksje.

Steg 1: Regneoperasjoner på en klokke

På tide med et nytt spill! I dag skal vi lage tre på rad, hvor spillerne etter tur merker ruter med X eller O inntil en av spillerne får tre på rad.

Skilpadder hele veien ned. Steg 1: Tegn et fjell. Sjekkliste. Introduksjon. Hent frem skilpaddene dine, åpne IDLE, det er på tide å tegne igjen.

I denne oppgaven blir du introdusert for programmeringsspråket JavaScript. Du skal gjøre den klassiske oppgaven Hei verden, med en katt.

Skilpadder. Introduksjon: Steg 1: Hei, Skilpadde! Sjekkliste. Skrevet av: Oversatt fra Code Club UK (//codeclub.org.uk)

Oblig2 - obligatorisk oppgave nr. 2 (av 4) i INF1000

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

UNIVERSITETET I OSLO

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

1. NetBeans IDE: Lage en enkel mobilapplikasjon

Bli Kjent med Datamaskinen Introduksjon ComputerCraft PDF

Skilpaddekunst. Introduksjon. Skrevet av: Geir Arne Hjelle

Legg bort skilpaddene dine, i dag skal vi lære hvordan vi kan sende hemmelige beskjeder!

Løse reelle problemer

Skilpadder Introduksjon Python PDF

INF120: Oblig 3. Yngve Mardal Moe

Oblig2 - obligatorisk oppgave nr. 2 (av 4) i INF1000

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

Skilpadder hele veien ned

IN uke 1. Komme i gang med programmering

På tide med et nytt spill! I dag skal vi lage tre på rad, hvor spillerne etter tur merker ruter med X eller O inntil en av spillerne får tre på rad.

Legg bort skilpaddene dine, i dag skal vi lære hvordan vi kan sende hemmelige beskjeder!

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

Verden. Steg 1: Vinduet. Introduksjon

Kjenner du alle funksjonene på tastaturet?

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

Oblig2 - obligatorisk oppgave nr. 2 (av 4) i INF1000 h2006

Løse reelle problemer


Mattespill Nybegynner Python PDF

Øvingsforelesning 1 Python (TDT4110)

Et lite oppdrag i bakgrunnen

Legg bort skilpaddene dine, i dag skal vi lære hvordan vi kan sende hemmelige beskjeder!

Øvingsforelesning i Python (TDT4110)

V-R7000 V-R7100 V-T500. Fra programmeringsark til maskin

Etter uke 6 skal du. Introduksjon til objektorientert programmering. Hva skjedde ~1967? INF1001. Grunnkurs i objektorientert programmering

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

Løpende strekmann Erfaren Videregående Python PDF

Python: Variable og beregninger, input og utskrift. TDT4110 IT Grunnkurs Professor Guttorm Sindre

Steg 0: Installere Pygame Zero

Python: Intro til funksjoner. TDT4110 IT Grunnkurs Professor Guttorm Sindre

Kom i gang med emedia

Steg 1: Vår første datamaskin

Verden. Introduksjon. Skrevet av: Kine Gjerstad Eide og Ruben Gjerstad Eide

Skilpadder hele veien ned

Kanter, kanter, mange mangekanter. Introduksjon: Steg 1: Enkle firkanter. Sjekkliste. Skrevet av: Sigmund Hansen

Prøveeksamen IN1000. IN Prøveeksamen. Dato november 2017 Tid 12:30-12:00 Alle trykte og skrevne hjelpemidler er tillatt.

Programmering Høst 2017

TDT4102 Prosedyre og Objektorientert programmering Vår 2014

Hvordan en prosessor arbeider, del 1

Oblig2 - obligatorisk oppgave nr. 2 (av 4) i INF1000 v2009

Steg 1: Klargjør og importerer bilioteker

TDT4105 Informasjonsteknologi, grunnkurs (ITGK)

Debugging. Tore Berg Hansen, TISIP

Fra Python til Java, del 2

1. Å lage programmer i C++

TDT4105 Informasjonsteknologi, grunnkurs (ITGK)

Kanter, kanter, mange mangekanter

Inf109 Programmering for realister Uke 5. I denne leksjonen skal vi se på hvordan vi kan lage våre egne vinduer og hvordan vi bruker disse.

MAT-INF 1100: Obligatorisk oppgave 1

Utvikling av dynamiske nettsteder med PHP og databaser, høsten 2006

Et forsøk på definisjon

TDT4102 Prosedyreog objektorientert programmering Vår 2016

Opphavsrett: Forfatter og Stiftelsen TISIP

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

Bildebehandling med Python og EzGraphics

Seminaroppgaver IN1010, uke 2

Filterprogrammer og redirigering av I/O

Oblig2 - obligatorisk oppgave nr. 2 (av 4) i INF1000 v2008

Transkript:

INF109 - Uke 1a 19.01.16 NOTE: Download the latest version of python: 3.5.1. 1 Introduksjon 1.1 Goodbye world! For å komme i gang, start IDLE fra Start Programs Python3.5.1 IDLE. (Varierer litt fra datamaskin til datamaskin.) Det første du ser er noe som: Python 3. 2. 3 ( d e f a u l t, Aug 6 2012, 1 6 : 1 9 : 4 6 ) [GCC 4. 5. 1 20100924 (Red Hat 4. 5. 1 4 ) ] on l i n u x 2 Type c o p y r i g h t, c r e d i t s or l i c e n s e ( ) f o r more i n f o r m a t i o n. >>> IDLE er en integrated development environment for python og >>> indikerer at du kan skrive programsetninger etter merket. Det kalles python-skall og er èn måte å kjøre python programmer. Alt som skrives etter skallet blir direkte tolket av python. Prøv å skrive >>> og trykk enter. Lag en printsetning som skriver ut Python er greit og kursinholdet er veldig enkelt saa langt.. 2 Printsetninger Tydeligvis skriver print setningen alt på skjermen som følger. anførselstegn etter skallet og se hva som skjer. >>> p r i n t ( Goodbye World! ) Skriv samme setningen uten En syntax error betyr at python ikke forstår det du har tastet inn og avbryter bearbeidingen av programmet. Det er èn mulig feil som skjer spesielt ofte i begynnelsen. Trykk <Alt-p> samtidig for å gjenta siste program anvisning og rett feilen. For å styre utskriften kan man legge inn spesialtegn. Prøv >>> p r i n t ( to \n ord ) 1

Hvilken effekt har \n i print setningen? Prøv også følgende styretegn (uten i begynnelsen): \t \ \ \\ og beskriv effekten. Prøv også å bruke t,, og \ uten førende backslash. (F. eks. print( Dette er \ en test.) Når du skriver ut to \n ord så er det et ekstra mellomrom i andre linje. Prøv å skrive ut det samme men ord på andre linje uten ekstra mellomrom i begynnelsen. Lag en printsetning som skriver ut Styretegn er i n t e r e s s a n t naar du v i l l a g e t a b e l l e r med en gang. 3 Mer om IDLE og filer Hittil har du lært hvordan enkle print setninger lages, men hvis du vil bruke dem igjen må du taste alt inn igjen. For gjenbruk lagrer vi programmer i filer heretter. Åpne nytt editeringsvindu ved File New Window og skriv inn: p r i n t ( F l e r e ) p r i n t ( p r i n t ) p r i n t ( s e t n i n g e r. ) Lagre filen med navnet print eksempler.py med File Save. Kjør programmet med Run Run Module overst i vinduet. Alt som er i filen blir overført til python skallet og utført av python (du kan også bare trykke F5). Hvis du ikke bruker IDLE men f.eks. Windows Editor så kan du importere programmet inn i skallet ved bruk av >>> import p r i n t e k s e m p l e r Etter import blir alt som er skrevet i filen utført av python. Det er viktig at filnavnet slutter med.py. I visse tilfeller må du også skrive følgende linje først i filen # coding : utf 8 som forteller python-fortolkeren hvordan tegnene i filen er kodet. 2

4 Metoder For å gjenbruke deler av programmet bruker vi blant annet metoder. Anta at du vil skrive ut setningen Goodbye World! flere ganger. Vi kan definere en metode hei(): >>> Metoden defineres ved å skrive dette inn i skallet (du må avslutte metodedefinisjonen ved å trykke enter to ganger). Når du skriver dette direkte i skallet så kommer mellomrommet automatisk etter kolonet. Den blanke plassen er vanligvis èn tabulator og alt som er rykkt inn på den samme måten, eller med det samme avstand til venstre, hører til den samme blokk. Alt som er i den samme blokken etter metodehodet hører derfor til metoden. Alternativt kan metodedefinision leses som definere en metode som heter hei uten parameter 1 og utføre alt i blokken etter kolonet når funksjon blir kjørt. Når du skriver definisjonen av metoden skriver dette alene ikke noe ut. Du må kjøre metoden etter du har definert den for å se hva metoden gjør. Metoden blir kjørt med >>> h e i ( ) i skallet. Lag en ny fil med navnet metodetest.py og definer metode hei() i den. Etter at du har definert den, kjør filen og overfør metoden til pythonskallet. Prøv nå om metoder fungerer korrekt ved å kjøre den. Lag en ny fil med navnet metodetest2.py og innhold: Og en fil med navnet metodetest3.py og innhold: Hva skjer når du kjører metodetest2.py filen med Run Module? Hva skjer når du kjører metodetest3.py? Hva er forskjellen mellom å kjøre hei() metoden fra første filen og hva andre? Og hvorfor? Modifiser metoden fra metodetest.py slik at den skriver ut Flere print setninger. som oppgaven oppe, et ord hver linje med 3 print setninger. Pass på at alle 3 print setninger er i den samme blokken. Når du importerer en fil med import som beskrevet tidligere så kan du ikke utføre metoden direkte. Du må kjøre metoden med modulnavnet (som er det samme som filnavnet for oss nå). F.eks. når du importerer metodetest.py kan du kjøre hei() på den følgende måte: >>> import metodetest >>> metodetest. h e i ( ) 1 Parameter lærer du senere i kurset. 3

5 Kommentarer Når du skriver et program så er det veldig viktig å kommentere hva du gjør. Ikke bare for deg når du leser programkoden ett år senere og ikke vet hva du har gjort der uten kommentarere, også når noen andre leser koden din og prøver å forstå den. En kommentar i python begynner med # og avsluttes ved enden av linjen. # Dette programmet s k r i v e s ut Goodbye World! og Foobar. #Her kommer andre l i n j e #Metoden s l u t t e r her h e i ( ) #Metoden b l i r u t f o e r t Når det er åpenbart hva metoden gjør så trenger du ikke skrive noen kommentarer men programkode blir veldig raskt uoversiktlig. Inkluder kommentarer i programmene du har skrevet hittil. 6 Aritmetikk Du kan bruke pythonskallet som kalkulator. Hvis du skriver inn et regnestykke blir resultatet beregnet for deg. >>> 3 5 15 >>> (2+4) 3 18 For å inkludere dette i en print setning kan du gjøre dette som i følgende eksempel: >>> p r i n t ( 3 5=,3 5) 3 5= 15 >>> p r i n t ( (2+4) 3=,(2+4) 3) (2+4) 3= 18 Ikke glem komma mellom tekst og regnestykke. 7 Øvelser Lag et enkelt program som skriver ut 5 kg der 5 ikke er skrevet mellom anførselstegn. Følgende program skal egentlig skrive ut 4

There has never been an unexpectedly s h o r t debugging p e r i o d in the h i s t o r y o f computers. Steven Levy når metoden quote() er kjørt men innholder to feil. Finn og rett feilene. def quote ( ) : p r i n t ( There has never been an unexpectedly ) p r i n t ( s h o r t debugging period in the ) p r i n t ( h i s t o r y o f computers. \ nsteven Levy ) Følgene programmet inneholder en metode solve() som løser annengradsligningen 2x 2 + 3x 2 = 0. Skriv om metoden slik at den istedenfor løser annengradsligningen x 2 6x+5. # Dette programmet l o e s e r en a n n e n g r a d s l i g n i n g. # Legg merke t i l bruk av komma f o r aa f a a a l l u t s k r i f t paa en l i n j e. import math # Henter inn matte b i b l i o t e k e t ( t r e n g s f o r kvadratrot ) d e f s o l v e ( ) : p r i n t ( Loesningen t i l 2. g r a d s l i g n i n g e n 2x 2 + 3x 2 = 0 er, x =, ( 3 + math. s q r t (3 3 4 2 ( 2)))/(2 2), og, x =, ( 3 math. s q r t (3 3 4 2 ( 2 ) ) ) / ( 2 2 ),. ) 5