Föreläsning 4 Programmeringsteknik och Matlab DD1312. Logiska operatorer. Listor. Listor, tupler, strängar och forslingor

Relevanta dokument
Föreläsning 3 Programmeringsteknik och C DD1316. Innehåll i listor. Uppdateringsoperatorer. +,* och listor. Listor. Indexering

Föreläsning 3 Programmeringsteknik och Matlab DD1315. Importering av moduler. randrange

Föreläsning 2 Programmeringsteknik och C DD1316. Mikael Djurfeldt

Föreläsning 2 Programmeringsteknik och C DD1316

Föreläsning 10 Datalogi 1 DA2001. Utskrift på skärmen. Syntax. print( Hej ) Hur är det? Hej. print( Hej,end= ) print( Hur är det? ) HejHur är det?

Föreläsning 2 Programmeringsteknik och C DD1316. Programmering. Programspråk

Föreläsning 2 Programmeringsteknik DD1310. Programmering. Programspråk

729G74 IT och programmering, grundkurs. Tema 3. Föreläsning 2 Jody Foo,

Språket Python - Del 1 Grundkurs i programmering med Python

Föreläsning 2 Programmeringsteknik DD1310. Programmering. Programspråk

Planering av ett större program, del 2 - for och listor. Linda Mannila

DD1314 Programmeringsteknik

Föreläsning 2 Programmeringsteknik och Matlab DD1312. Programspråk. Utskrift på skärmen

729G04 Programmering och diskret matematik. Python 3: Loopar

Föreläsning 18 Filer och avbildningar

Föreläsning 2 Programmeringsteknik och Matlab DD1312. Programspråk. Utskrift på skärmen

Erfarenheter från labben

Grundläggande datalogi - Övning 1

Introduktion till programmering SMD180. Föreläsning 9: Tupler

Övningsuppgifter kapitel 8

1/15/2013. DD1310/DD1314/DA3009 Programmeringsteknik. Lärandemål... Vilka läser kursen? ...fler lärandemål VARFÖR? Föreläsning 1

Föreläsningsanteckningar, Introduktion till datavetenskap HT S4 Datastrukturer. Tobias Wrigstad

Datalogi för E Övning 3

DD1310/DD1314/DA3009 Programmeringsteknik LÄRANDEMÅL... Vilka läser kursen? ...FLER LÄRANDEMÅL. Föreläsning 1

F4. programmeringsteknik och Matlab

Introduktion till programmering SMD180. Föreläsning 8: Listor

Datatyper och kontrollstrukturer. Skansholm: Kapitel 2) De åtta primitiva typerna. Typ Innehåll Defaultvärde Storlek

Logik och Jämförelser. Styrsatser: Villkorssatsen if och repetitonssatsen for. Scriptfiler. Kommentarer. Tillämpningar: Ett enkelt filter.

Numeriska Metoder och Grundläggande Programmering för P1, VT2014

Kompilering och exekvering. Föreläsning 1 Objektorienterad programmering DD1332. En kompilerbar och körbar java-kod. Kompilering och exekvering

Python. Datatyper. Mer om datatyper. Heltal - 3 Flyttal - 2,456 Listor - [1,2,3,4] Strängar - spam!

Beräkningsvetenskap föreläsning 2

732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Muddy cards. Slingor

MATLAB. Python. Det finns flera andra program som liknar MATLAB. Sage, Octave, Maple och...

Föreläsning 6 Programmeringsteknik och Matlab DD1312

Python. Python är, som Scheme, ett interpreterat språk men det finns kompilatorer för Python.

Tenta i Grundläggande programmering DD klockan

Föreläsning 8 SLUMPTAL, SIMULERING + INTRODUKTION TILL VEKTORER

Klassdeklaration. Metoddeklaration. Parameteröverföring

Python. Python är, som Scheme, ett interpreterat språk men det finns kompilatorer för Python.

Datorlära 6. Arbeta med strängar Inmatning med tangentbordet Bygga ett program med inmatning, funktioner, osv

TDIU01 - Programmering i C++, grundkurs

Kurslitteraturen. C-nivå Villkorssatser [kap 8] if & elif & else and & or Loopar [kap 9] for

Tentamen i Introduktion till programmering

Problemlösning och funktioner Grundkurs i programmering med Python

For-sats/slinga. Notis

Variabler och konstanter

Visual Basic, en snabbgenomgång

732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Muddy. Funktioner / metoder. Punktnotation. Evalueringsordning

Sekvensdatatyper, ASCII och chiffer. Linda Mannila

Fly me to the moon. Laboration om relationer, TDDC75 Diskreta strukturer. Mikael Asplund. 5 september 2017

Pythons standardbibliotek

2 februari 2016 Sida 1 / 23

String [] argv. Dagens Agenda. Mer om arrayer. Mer om arrayer forts. String [] argv. argv är variabelnamnet. Arrayer och Strängar fortsättning

Programmering i C, 7,5 hp

Block 1 - Mängder och tal

MMA132: Laboration 2 Matriser i MATLAB

Introduktion till programmering D0009E. Föreläsning 9: Tupler och dictionaries

Föreläsning ALGORITMER: SÖKNING, REGISTRERING, SORTERING

Programmera i C Varför programmera i C när det finns språk som Simula och Pascal??

Dagens program. Programmeringsteknik och Matlab. Viktiga datum. Ett första exempel. Programmall, vad behöver vi i ett javaprogram?

Block 2 Algebra och Diskret Matematik A. Följder, strängar och tal. Referenser. Inledning. 1. Följder

Föreläsning 3: Typomvandling, villkor och val, samt textsträngar

Föreläsning 3-4 Innehåll. Diskutera. Metod. Programexempel med metod

Funktionell programmering DD1361

729G04 Programmering och diskret matematik. Föreläsning 7

Övningar i JavaScript del 3

Föreläsning 3-4 Innehåll

Komponentvisa operationer,.-notation Multiplikation (*), division (/) och upphöj till (ˆ) av vektorer följer vanliga vektoralgebraiska

Uppgift 1 - programmet, Uppg6.m, visade jag på föreläsning 1. Luftmotståndet på ett objekt som färdas genom luft ges av formeln

TDDC77 Objektorienterad Programmering

Grundläggande databehandling ht 2005

n Detta för att kunna koncentrera oss på n Tal: number? n Symboler: symbol? n Strängar: string? n Tecken: char? n Boolskt: boolean?

Föreläsning 13 Innehåll

Alla datorprogram har en sak gemensam; alla processerar indata för att producera något slags resultat, utdata.

Introduktion till formella metoder Programmeringsmetodik 1. Inledning

Föreläsning REPETITION & EXTENTA

Imperativ programmering. Föreläsning 2

Föreläsning 6: Introduktion av listor

Tentamen i Grundläggande Programvaruutveckling, TDA548

Outline. For. I istället för att följa det normala ordningen, man ändra den. I i Java får man inte göra hopp hur som helst

LÖSNINGSFÖRSLAG Programmeringsteknik För Ing. - Java, 5p

Hur man programmerar. TDDC66 Datorsystem och programmering Föreläsning 3. Peter Dalenius Institutionen för datavetenskap

Hitta k största bland n element. Föreläsning 13 Innehåll. Histogramproblemet

Typsystem. Typsystem... Typsystem... Typsystem... 2 *

729G74 IT och programmering, grundkurs. Tema 2, Föreläsning 1 Jody Foo,

Typsystem. DA2001 (Föreläsning 23) Datalogi 1 Hösten / 19

Programmering II (ID1019) :00-11:00

Block 1 - Mängder och tal

Klasser och objekt, referenser Grundkurs i programmering med Python

Platser för att skriva och testa kod online. Workshop om programmering i matematikkurser, version 0.7 senast sparat

Föreläsning 5 Programmeringsteknik DD1310. Modulen doctest. Exempel. Doctest Dictionary Filhantering

Filer. DA2001 (Föreläsning 16) Datalogi 1 Hösten / 19

F5 Selektion och iteration. ID1004 Objektorienterad programmering Fredrik Kilander

Lösningsförslag till tentamen för TDA540 Objektorienterad Programmering

Datastrukturer och algoritmer. Innehåll. Tabell. Tabell - exempel. Gränsyta till Tabell. Tabell. Modell. Hashtabell Relation, lexikon.

Programmering I Tobias Wrigstad fredag, 2009 augusti 28

Vad är en databas? Databaser. Relationsdatabas. Vad är en databashanterare? Vad du ska lära dig: Ordlista

Idag: Centrerad utskrift. Granskning. DD1311 Programmeringsteknik med PBL. Granskning Felhantering GUI. Föreläsning 15.

Tentamen OOP

Transkript:

Föreläsning 4 Programmeringsteknik och Matlab DD1312, tupler, strängar och forslingor Villkor kan kombineras med operatorerna and,or,not Exempel: if pris<1000 and taltid>=100: print Telefonfynd! A B A and B A or B not A 1/25 En lista är en föränderlig ordnad samling objekt. skapas med hakparenteser: [12,13,14,15] 2/25 1

Innehåll i listor En lista kan innehålla element av olika typer: [ hej,151,10.59] En lista kan innehålla en eller flera listor: [ [ hej,151],10.59] Man kan åstadkomma godtycklig komplicerade strukturer m.h.a listor: list1 = [ hej ] list2 += [ hejdå,list1] 3/25 +,* och listor kan konkateneras: lista = [1,2,3] + [4,5,6] Vad innehåller variabeln lista? lista = [1,2] lista * 3 Vad innehåller variabeln lista? 4/25 Identifiering Ett enskilt element på ett givet index kan identifieras: 0 1 2 3 lista = [12,13, 14,15] print lista[2] 5/25 2

Dellista Ett startindex och ett övre begränsningsindex ger dellistan. 0 1 2 3 4 lista=[12,13,14,15,16] lista2= lista[1:4] Vad innehåller lista2? 6/25 Dellista Ett startindex, ett övre begränsningsindex och ett intervall ger en annan typ av dellista. lista=[6,7,1,8,5,2,4,9] lista2= lista[1:8:3] Vad innehåller lista2? 7/25 Ändra Identifierade element / dellistor kan ändras: lista = [1,2,3,4,5,6] lista[1:3] = [ a ] lista[4] = b print lista 8/25 3

Borttagning Element/dellista kan tas bort: lista = [1,2,3,4,5,6] del lista[1:3] del lista[3] print lista 9/25 Metoder lista = [2,3,1,4,5,7,6] lista.reverse() print lista lista.sort() print lista 10/25 Metoder Lägg till element på slutet lista.append(13) lista.extend([1,2,3]) 11/25 4

En tupel är en omuterbara lista. En tupel skapas med vanliga parenteser: t = (1,2,3,4) 12/25 +,* och tupler kan konkateneras: t = (1,2,3) + (4,5,6) print t kan upprepas: t = (1,2,3) print t * 3 13/25 Identifiering Ett enskilt element på ett givet index kan identifieras: tupel = (12,13,14,15) print tupel[2] 14/25 5

Deltupel Ett startindex och ett övre begränsningsindex ger deltupeln. tupel =(12,13,14,15,16) print tupel[2:4] 15/25 Omuterbarhet En tupel kan inte ändras sedan den har skapats. t1 = (1,[2,3]) t1[0] = 33 ger fel t1[1] =[2,3,33] ger fel Följande ger inte fel! t1[1].append(33) Varför? 16/25 nose= En lång näsa 0 1 2 3 4 5 6 7 8 9 10 11 E n l å n g n ä s a 17/25 6

Skapa delsträng kan anses som en lista med bokstäver: state= urbra del1=state[0:2] del2=state[2:] del3=state[:3] 0 1 2 3 4 u r b r a del1 del2 del3 18/25 len() Antalet element i listor och tupler: print len([1,2,5]) in if 3 in [1,2,3]: print 3 finns i listan else: print 3 finns inte i listan 19/25 Används för att gå igenom alla element i en lista, tupel, eller sträng. lista = [12,13,14,15,16] for x in lista: print x, Skriver ut: 12 13 14 15 16 20/25 7

Strukturen for en variabel in en lista : Block som exekveras för varje element. else: Block som exekveras om inte loopen avbryts med break. 21/25 Ofta vill man göra något för varje heltal i ett intervall. Funktionen är praktisk: for x in range(5): print x, Skriver ut: 0 1 2 3 4 22/25 Kan användas på följande 3 sätt: 1. range(3) [0,1,2] 2. range(3,10) [3,4,5,6,7,8,9] 3. range(3,15,2) [3,5,7,9,11,13] 23/25 8

Mer om Avtagande heltalslistor range(6,1,-1) [6,5,4,3,2] range(10,0,-2) [10,8,6,4,2] 24/25, tupler och strängar är strukturmässigt likt varandra och strängar är omuterbara är snabbare än listor ska användas när man vet att värden som ska läggas i tuppeln kommer inte att ändras. for-slingor kan användas tillsammans med listor, tupler och strängar underlättar att skapa listor av heltal 25/25 9