Begynnerkurs i Python Realfagskonferansen 2019 Henrik H. Løvold

Slides:



Advertisements
Liknende presentasjoner
Repetisjon innkapsling static tabell av primitiv datatype LC191D Videregående programmering Høgskolen i Sør-Trøndelag, Avdeling for informatikk og e-læring.
Advertisements

Tabeller av objekter Klassen ArrayList
Klikk Aktiver redigering i meldingsfeltet.
C++ for Java-programmerere
Programmering med Python i MENA1000 Introduksjon og litt til…
Høgskolen i Oslo Webprogrammering Grunnleggende PHP.
Uke 10 - Sortering, og hvordan lage en klasse for et klassebibliotek 21 okt. 2003, Arne Maus Inst. for informatikk, UiO.
TIF seminar -Visual Basic (VBA) og RExcel Elisabeth Orskaug Norsk Regnesentral Oslo, 8. november 2011.
Kontrollstrukturer (Kapittel 3)
Webprogrammering Arrays.
1 Java 6 Mer om metoder Tekster Ole Christian Lingjærde Gruppen for bioinformatikk Institutt for informatikk Universitetet i Oslo.
MATLAB En kort innføring/repetisjon SIF8001-SIF8005 Høsten 2001.
Java 4 Mer om forgreninger While-løkker Ole Christian Lingjærde
Grunnleggende matematikk
Formler og funksjoner.
IS-102 Klassedefinisjoner
Nødhjelp i Matlab-programmering
@ TDT4120 Algoritmer og datastrukturer Trær og søking i dem, samt litt diverse emner Åsmund Eldhuset asmunde idi.ntnu.no.
@ TDT4120 Algoritmer og datastrukturer Introduksjon til øvingsopplegg og programmering i Python Åsmund Eldhuset asmunde stud.ntnu.no.
Åsmund Eldhuset asmunde stud.ntnu.no folk.ntnu.no/asmunde/algdat/
TDT4120 Algoritmer og datastrukturer Introduksjon til øvingsopplegg og programmering i Python Basert på foiler av Åsmund Eldhuset Flikket på og presentert.
Generelt I/O if/else Funksjoner Lists Løkker Dictionaries Annet Listebehandling Klasser Python med noen algdat-anvendelser Åsmund Eldhuset asmunde *at*
Operativsystemer.  Tilstandsmaskiner kalles på engelsk Finite State Machines.  Tilstandsmaskiner er en metode til å beskrive systemer med logisk og.
Utvidelser av tallområdet:
Feilhåndtering. Feil er uunngåelige! Erfaring viser at feil i dataprogrammer som består av mer enn noen få linjer ikke er til å unngå. For å få et godt.
Jæger: Robuste og sikre systemer INF150 Programmering torsdag 7.9 Bakgrunn for øvelse 2 Bruk av variabler i beregninger Ser på tekststrenger (3.4 Strings.
Jæger: Robuste og sikre systemer INF150 Programmering mandag 2.10 Default values – standardverdier ved oppstart MER OM: Sub-prosedyrer og sub-funksjoner.
Jæger: Robuste og sikre systemer INF150 Programmering mandag 4.9 Forrige gang til og med: 3.2 Visual Basic Events (60-73) Nå: Litt om Group Box, CheckBox.
INF150 Programmering mandag 11.9
I dag snakker vi om: Brukergrensesnitt med kvalitet Bruksegenskaper Normans 7 stadier Testing med papirprototyp.
PHP oversikt. Basis egenskaper Grensesnitt med web tjener Skripttaggene Kommentartegn Ikke case sensitiv Avslutningstegn for instruksjoner.
1 Kap 08 Kø. 2 Kø - Definisjon En kø (eng queue) er en lineær struktur hvor elementer kan innsetttes kun i den ene enden av listen, kalt bak, og fjernes.
Repetisjon av JSP Variabler, tabeller, if-setninger, for/while-løkker
Grunnleggende PHP - Ronny Mandal1 Grunnleggende PHP.
Webprogrammering Skjema i HTML og PHP.
Dynamiske nettsider PHP Del 2 – Kontrollstrukturer.
Dynamiske nettsider PHP Del 1 – variable. PHP  PHP (Personal Home Page)  Fritt tilgjengelig programmeringsspråk  åpen kildekode  Plattformuavhengig.
Java 3 Mer om uttrykk Terminal I/O Forgreninger
Java 11 Programmering med og uten objekter: hva er forskjellen?
INF 4130 Eksamen 2008 Gjennomgang.
Jæger: Robuste og sikre systemer INF150 Programmering mandag 18.9 Lesing av data fra fil og skriving av data til fil. Side 411 – 4.. Kap 4.
Oppgaver til kodegenerering etc. INF-5110, 2013 Oppgave 1: Vi skal se på koden generert av TA-instruksjonene til høyre i figur 9.10 i det utdelte notatet,
MENA 1000 – Materialer, energi og nanoteknologi Programmering med Python i MENA1000 Introduksjon og litt til… Truls Norby Kjemisk institutt/ Senter for.
INF1000 (Uke 14) Resten av eksamen H03 + del av V05 Grunnkurs i programmering Institutt for Informatikk Universitet i Oslo Are Magnus Bruaset og Anja B.
INF Objektorientert programmering
INF1000 (Uke 14) Eksamen V06 Grunnkurs i programmering Institutt for Informatikk Universitet i Oslo Are Magnus Bruaset og Arild Waaler.
INF1000 (Uke 12) Sortering og eksamensoppgaver Grunnkurs i programmering Institutt for Informatikk Universitet i Oslo Are Magnus Bruaset og Anja B. Kristoffersen.
Byggeklosser i java  Klassedefinisjon  Variabel deklarasjon  Metodedeklarasjoner  En ordentlig klasse  Spesielle/kryptiske skrivemåter  løkker og.
Jæger: Robuste og sikre systemer INF150 Programmering mandag 25.9 MER OM: Sub-prosedyrer og sub-funksjoner Kap 4.
INF1000 (Uke 4) Mer om forgreninger, While-løkker
Inf1000 (Uke 5) Arrayer, filer og tekst
Finne feil - Debugging Introduksjon til sortering.
Kapittel 2 Data og uttrykk. 2.1 Strengar Ein tekststreng er eit objekt i Java, definert av String klassen Meir om denne klassen i kapittel 3 Vi bruker.
Kapittel 5 Vilkårssetningar og løkker. 5.1 Boolske uttrykk George Boole ( ), britisk matematikar Utvikla teori om logikk ved bruk av symbol i.
Matematikk/literacy LUB Elise Klaveness
Tallregning Basale regneregler Anslå svar. Vurdere rimelighet.
Professor Guttorm Sindre Institutt for datateknikk og informasjonsvitenskap Programmering i Python.
Nye Sinus 2P Bilde inn. Ny eksamensordning der eksamen i 2P ikke omfatter stoffet i 1P Har mye bedre tid i kurset, og kan gå grundigere inn på hvert tema.
1 TDT4105 Informasjonsteknologi, grunnkurs Introduksjon til programmering i Matlab (forts) Rune Sætre / Anders Christensen {satre,
Lokale variable Hvis vi trenger å ta vare på en verdi, inne i en metode kan vi definere en lokal variabel: int amount = 0; vi må fortelle hvilken type.
Matematikk - utvidet form. Mål for timen Du skal kunne kjenne igjen plassverdien til et siffer og skrive et tall på utvidet form.
Sudoku Mål: Lage et enkelt system som løser Sudoku-oppgaver.
Kom i gang med Python Pål Hellesnes SYSTEMUTVIKLER
TDT4105 Informasjonsteknologi, grunnkurs
Øvingsforelesning i Python (TDT4110)
Variabler, datatyper og uttrykk
Hva er nytt? De fire regneartene..
IS-102 Interaksjon med objekter
Dataanalyse CanSat.
For, While, prosedyrer m/ parametere, funskjoner
Utskrift av presentasjonen:

Begynnerkurs i Python Realfagskonferansen 2019 Henrik H. Løvold Cathrine W. Tellefsen

Programmeringsomgivelse www.repl.it Opprett bruker Velg "new repl" Velg Python (ikke Python 2.7) Venstre side: kode Høyre side: kjøring

Aritmetikk Operatorer Regnerekefølge og presedens + - * / Som i matematikken Potenser -> parenteser -> multiplikasjon -> divisjon -> addisjon -> subtraksjon

Oppgave 1 Vi har nå sett på de vanligste regneoperatorene, men vi har ikke nevnt operatoren %. Finn ut hva operatoren % gjør ved å eksperimentere i REPL. Eksempel: 8 % 3 -> 2

Variabler og tall på datamaskinen For å lagre verdier Datatyper Hvordan? Deklarasjon og tilordning a = 5 b = ‘Hei’ c = 3.14

Oppgave 2 1. Hva blir resultatet av a = 10 a = a + 5 Forklar hvorfor. 2. Du har to variabler a og b som begge inneholder verdier. Skriv et program som bytter innholdet i de to variablene.

Output Du kan velge om du vil ha enkle (') eller doble (") anførselstegn omkring tekststrenger print('Hei verden') print("Hei verden") navn = "Cathrine" print("Hei",navn,"!") print("Hei",navn+"!") Skriver ut til skjerm Du kan sette sammen print-statementet av flere deler. Vi skiller med komma (,) men kan velge + for å unngå mellomrom.

Input og output Det finnes mange nivåer av kommunikasjon med datamaskinen. INPUT OUTPUT

Input Kommando: input() som tar som argument en streng, f.eks. et spørsmål. Dette gir mulighet for brukeren å skrive i terminalen og trykke Enter. Da lagres det brukeren har skrevet inn i variabelen navn. Dette kan så brukes videre i programmet. Livekode: navn = input(«Hva heter du?») print(«Hei, navn! Hyggelig å se deg.»)

NB! Input blir automatisk lagret som streng, så hvis du f.eks. vil regne med et tall seinere, må en konvertere det til flyttall eller heltall: Livekode: navn = input(«Hva heter du?») print(«Hei, navn! Hyggelig å se deg.»)

Litenkalkulator.py Lag et program som tar to tall som input og legger dem sammen (utvid gjerne kalkulatoren hvis du kan!) Deltakerne prøver først  liveprogrammering etterpå.

Beslutninger Sannhetsverdier – boolean Logiske operatorer if-tester a = True b = False Logiske operatorer == != >, <, >=, <= if-tester Hvis a, gjør b a = 5 if a < 10: print(‘a er mindre enn 10’) else: print(‘a er større enn 10’)

Oppgave 3 Skriv et program som ber bruker om å oppgi alderen sin. Hvis alderen er 18 år eller mer, skal bruker få beskjed om at vedkomne er myndig. Hvis alder er under 18 år skal vedkomne få beskjed om at de er barn. Twist: Hvis brukeren er akkurat 18 år – en beskjed du velger selv

Løkker Kodegjentakelse «Så lenge <tilstand>, gjør <handling>» Stort bruksområde Telling Kjøre funksjoner med verdier over et gitt intervall Iterere over data i en liste Viktig: forstå flyten i programmet

To typer løkker While For «Tilstandsløkke» Eks: while x > 0: «Telleløkke» Eks: for i in range(0, 10): Obs: range gir tallene fra og med første parameter til, men ikke med siste parameter range(0, 10) vil gi 0, 1,..., 9

Oppgave 4a Hva blir output i programmet? i = 1 2 3 4 Output Program  

Oppgave 4b Skriv et program som regner ut summen av tallene fra og med 1 til og med 449 ved hjelp av en for-løkke. Legge til 0’er

Populasjonsvekst Kompetansemål etter 10. trinn (fagfornyelsen) modellere situasjonar knytte til populasjonar, presentere resultata og argumentere for at modellen er gyldig

Populasjonsvekst i arten Dyr

Eksempeloppgave populasjonsvekst I et avgrenset område på fjellet settes det ut 500 dyr (N0 = 500). Populasjonsveksten er 12 % per år. Forklar at dette kan skrives: N(t) = N0 * 1,12t der N(t) er antall dyr etter t år. Skriv et program som beregner populasjonens størrelse for hvert år de første tjue årene, og plot dette i en graf. Når er det 700 dyr? ((OBS: gjøre oppmerksom på , og . i python.))

Eksempeloppgave populasjonsvekst Vi har en reinstamme med 500 dyr Bæreevnen er 800 dyr Naturlig vekst er 12 % per år Lag graf som viser utvikling de første 20 årene Finn ut når tallet på rein er ca 700

Populasjonsvekst i arten Dyr

Eksempeloppgave sparing og lån Kari har 100 000 kroner på sparekontoen, som hun har tjent på sommerjobber de siste årene. Hun planlegger å spare disse pengene i banken for å få råd til leilighet en dag. For å få råd til leilighet trenger hun 300 000 kroner i egenkapital. a) Med en rente på 3 %, virker dette som en god plan? b) Løs denne oppgaven med programmering

Oppgave: sparing og rente ...det var altså en dårlig plan. Kari må rett og slett spare mer. La oss si at Kari er 18 år, og ønsker å ha råd til leiligheten når hun er 24 år og ferdig med studiene sine. Hvor mye må hun sette inn på sparekontoen årlig for å få råd? Løs oppgaven ved programmering.