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

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

DD1314 Programmeringsteknik

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

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 Matlab DD1312. Programspråk. Utskrift på skärmen

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

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

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

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

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

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

Introduktion till programmering SMD180. Föreläsning 2: Variabler, uttryck och satser

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

Föreläsning 2 Programmeringsteknik och C DD1316

Skolan för Datavetenskap och kommunikation PROGRAMMERINGSTEKNIK FÖRELÄSNING 18

F4. programmeringsteknik och Matlab

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

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

Grundläggande datalogi - Övning 1

Objektorienterad Programmering (TDDC77)

I Skapa Hej.java och skriv programmet. I Kompilera med javac Hej.java. I Rätta fel och repetera tills du lyckas kompilera ditt program

Övning2. Variabler. Data typer

Objektorienterad Programmering (TDDC77)

729G04 Programmering och diskret matematik. Python 3: Loopar

Programmering med Java. Grunderna. Programspråket Java. Programmering med Java. Källkodsexempel. Java API-exempel In- och utmatning.

Programmering i C++ En manual för kursen Datavetenskaplig introduktionskurs 5p

732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Strukturdiagram. Styra. Algoritmer. Val

Programmeringsteknik med C och Matlab

Dagens föreläsning. Repetition. Repetition - Programmering i C. Repetition - Vad C består av. Repetition Ett första C-program

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

SMD 134 Objektorienterad programmering

Programmering I Tobias Wrigstad fredag, 2009 augusti 28

Pythons standardbibliotek

E02 "The Review" Föreläsning 2, HT2013 Grunderna, repetition. Johan Leitet. Kurs: 1dv403 Webbteknik I

Föreläsning 2. Variabler, tilldelning och kodblock{} if-satsen Logiska operatorer Andra operatorer Att programmera

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

Programmering A. Johan Eliasson

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

TDIU01 - Programmering i C++, grundkurs

1 Datorn som miniräknare. 1.1 Räkneoperationer. 1.2 Variabler

Programmering för språkteknologer I, VT2012. Rum

Användarhandledning Version 1.2

Uppgifter teknik HT17 (uppdaterad v. 40)

Vem är vem på kursen. Objektorienterad programvaruutveckling GU (DIT011) Kursbok Cay Horstmann: Big Java 3rd edition.

Introduktion till programmering SMD180. Föreläsning 4: Villkor och rekursion

Föreläsning 7. Nyckelord I Java. Uttryck. Uttryck, Operatorer Och Kontrollflöden

Några inbyggda funktioner (med resultat!) Introduktion till programmering D0009E. Föreläsning 4: Villkor och rekursion. Modulus-operatorn.

Objektorienterad programmering i Java I. Uppgifter: 2 Beräknad tid: 5-8 timmar (OBS! Endast ett labbtillfälle) Att läsa: kapitel 5 6

Övningsuppgifter till föreläsning 2 Variabler och uttryck

729G04 Programmering och diskret matematik. Python 2: Villkorssatser, sanningsvärden och logiska operatorer

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

TDDC77 Objektorienterad Programmering

Inledande programmering med C# (1DV402) 27+15=42 1 (22)

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

Repetition i Python 3. Exemplen fac. Exemplen fac motivering. Exemplen fac i Python

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

Kursanalys DA2003 sommar 2017

Planering Programmering grundkurs HI1024 HT 2014

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

Föreläsning 1 & 2 INTRODUKTION

Tilpro Övning 1. Per-Anders Staav (föredrar att kallas Pa) Kan nås via epost: (fast de flesta frågor besvaras nog bäst av Alexander)

Ordlistor, filhantering och ut på webben. Linda Mannila

Laboration: Whitebox- och blackboxtesting

Operatorer Tilldelning Kodblock { } if satsen Logiska uttryck Att programmera

TDDC30. Kursledning Kursledare: Jonas Lindgren. Labassistent: Jonas Lindgren Labassistent: Niklas Holma Labassistent: Erik Nilsson

Tenta i Grundläggande programmering DD klockan

Pascal... Pascal. Pascal... Pascal...

Pascal. reserverade ord fördefinierade funktioner och procedurer egendefinierade funktioner, procedurer och objekt

TDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 1 Jonas Lindgren, Institutionen för Datavetenskap, LiU

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

Besiktningsprotokollet

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

Kursanalys DA2003 höst 2017

Sätt att skriva ut binärträd

Idag. Javas datatyper, arrayer, referenssemantik. Arv, polymorfi, typregler, typkonvertering. Tänker inte säga nåt om det som är likadant som i C.

Kursanalys DD1312 hösten 2008

Datalogi för E Övning 3

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

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

Tentamen i. för D1 m fl, även distanskursen. lördag 26 februari 2011

Repetition C-programmering

C++ - En introduktion

Teori: Variabler En variabel har fyra grundläggande egenskaper: Namn, Typ, Värde och Synlighet.

Översikt. Varför lära sig detta? Motivering Syntax och semantik Imperativa språkets byggstenar och Python. PL-boken Kap 1 (repetition):

Data, typ, selektion, iteration

TDIU01 - Programmering i C++, grundkurs

Dagens föreläsning. Repetition. Repetition - Programmering i C. Repetition - Vad C består av. Repetition Ett första C-program

TDIU01 (725G67) - Programmering i C++, grundkurs

Planering Programmering grundkurs HI1024 HT TIDAA

Planering Programmering grundkurs HI1024 HT data

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

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

Installera Anaconda Python

TDP002 - Imperativ programmering

Variabler och konstanter

Föreläsning 1 & 2 INTRODUKTION

Klassdeklaration. Metoddeklaration. Parameteröverföring

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

Introduktion C-programmering

Översikt. Programmering tillämpningar och datastrukturer. Vad kursen täcker. Lärare. Rekommenderad litteratur. Kursmål 729G58 (HKGBB7)

Transkript:

Skolan för Datavetenskap och kommunikation DD1310/DD1314/DA3009 Programmeringsteknik Föreläsning 1 Kursinfo Python-intro: print variabler reserverade ord input kommentarer beräkningar datatyper if-satser Vilka läser kursen? LÄRANDEMÅL... Samhällsbyggnad Civilingenjör och Lärare Lingvistik (SU) Kursnämndsrepresentanter? Labbar på V (Windows) Labbar på CSC (Ubuntu) Efter godkänd kurs ska du kunna Pythons syntax god programmeringsstil hitta och rätta fel ändra färdiga program hämta data från fil lagra data på fil villkor och slingor funktioner problem -> program datastrukturer (t ex listor, klasser) enkla grafiska gränssnitt granska andras program...fler LÄRANDEMÅL VARFÖR? för att du ska kunna: använda programmering för att lösa problem, tillämpa problemlösningsmetodiken även inom andra områden än programmering, diskutera programutveckling med experter, bedöma kommersiella program. 1

UNDERVISNING Entimmesföreläsningar med läsanvisningar. Kom förberedd för bästa resultat! Labbtimmar - handledning Övningstimmar - redovisning Laborationer (LAB1; 1,5hp) Fem labbar: program & instuderingsuppgifter Prov (LAB2; 1,5 hp) Skriftligt prov på grunderna P-uppgift (LAB3; 3p) VAD SKA DU GÖRA? Större individuellt programmeringsprojekt Webblabbar (endast CLGYM/Lingv) Moment Poäng BONUSPOÄNG Labb 1-5 0-4/labb Skriftligt förhör på instuderingsfrågor: tre rätt ger godkänt fyra rätt ger 1 bp fem rätt ger 2 bp Uppfylls kraven i labblydelsen? två krav uppfyllda ger godkänt tre krav uppfyllda ger 1 bp fyra krav uppfyllda ger 2 bp Provet 0-4 Spec 0-8 Prototyp 0-8 KURSINFORMATION Se KTH Social! ENKLASTE PROGRAMMET print( Hej ) En sats som skriver ut Hej på skärmen. Kommandot heter print (PRINT eller Print fungerar inte) Texten Hej kallas för ett uttryck sats=statement kommando=command uttryck=expression VARIABLER Variabler - lagrar data i programmet. Variabelnamn (bokstäver, siffror, _): antal, vikt2, biobiljetter, serie_mördare Tilldelning: ger variabeln värde och typ namn = Alexis print( Grattis + namn) namn Alexis tilldelning=assignment 2

TYPER RESERVERADE ORD Varje variabel har en typ, t ex namn innebörd exempel int heltal 5-239769 float flyttal 3.14 4e-3 bool villkorsvärde True False str sträng "eld" "12" Följande ord är reserverade i Python: and del for is raise assert elif from lambda try break else global not while class except if or return continue exec import pass def finally in print Reserverade ord har betydelse i språket och får inte användas som variabelnamn. UPPGIFT: VILKA AV FÖLJANDE ÄR OK SOM VARIABELNAMN? anka and mås moment22 pass passfoto akademiskahus 17tåget el-ledning jord_prover INLÄSNING Funktionen input() används vid inläsning av strängar: namn=input( Vad heter du? ) print( Nämen, namn, då! ) Vill vi ha tal kan vi konvertera med t ex int(input()) storlek=int(input( Ge skostorlek: )) print( Ta +str(storlek+1)+ i skridskor ) print( så får du plats med sockor också! ) Inläsning=user input Kommentarer Alla rader som börjar med # blir kommentarer. # Programmet som ger komplimanger # Skrivet av Linda Kann 130115 print( Hej, ) print( Vilken fin klänning, ) print( och vad gott du luktar! ) UPPGIFT: I VILKEN ORDNING SKA SATSERNA STÅ? a.sidorperdag = sidor/dagar b.sidor = 63 c.print("antal sidor per dag:",sidorperdag) d.dagar = 3 3

ALGORITM 1. Läser in indata 2. Gör beräkningar 3. Skriver ut resultatet Heltalsberäkningar Operator: Beskrivning: Exempel: Resultat: * multiplikation 3*4 12 / division 53//10 5 % modulo 53%10 3 + addition 10+12 22 - subtraktion 5-8 -3 heltal=integer UPPGIFT: HUR KAN MAN ANVÄNDA % FÖR ATT TA REDA PÅ OM ETT TAL ÄR JÄMNT ELLER UDDA? Flyttalsberäkningar Operator Beskrivning Exempel Resultat * multiplikation 2.0*1.5 3.0 / division 10.0/8.0 1.25 % modulo 4.25%4.0 0.25 + addition 0.3+0.4 0.7 - subtraktion 1.0-0.1 0.9 flyttal=floating-point number STRÄNGAR En sträng är en följd av tecken. Strängar konkateneras med + t ex blir kus + lig strängen kuslig Strängar upprepas med * t ex blir nä *3 strängen nänänä Sträng är en datatyp. Andra datatyper är heltal och flyttal. sträng=string Konkatenera (slå ihop)=concatenate TYPKONVERTERING Funktion Beskrivning Exempel: Blir float(x) int(x) str(x) Konverterar till flyttal Konverterar till heltal parameter=argument float( 3.14 ) 3.14 int( 17 ) 17 Konverterar str(39) 39 till en sträng 4

STYRSTRUKTURER I ett program utförs satserna i ordning uppifrån och ner: print("so long") print("and thanks") print("for all the fish!") Hur gör man för att hoppa över en sats eller för att upprepa en sats flera gånger? antalstudenter = int(input("antal studenter? ")) stolarinils = int(input("stolar i Nils? ")) stolarichristoph = int(input("stolar i Christoph? ")) stolaribaltzar = int(input("stolar i Baltzar? ")) totalt = stolarinils+stolarichristoph+stolaribaltzar print("totalt antal stolar",totalt) if totalt >= antalstudenter: print("ja - stolarna räcker!") else: print("nej - stolarna räcker inte :-(") IF-SATSEN if villkor: block1 elif: block2 else: block3 if-satsen används för val mellan två alternativ, elif och else kan användas vid behov. Raderna efter kolon bildar ett block: en eller flera satser som är indenterade (tabbar i början av raden). 5