2D1311 Programmeringsteknik med PBL

Slides:



Advertisements
Liknande presentationer
Villkor Booelska operatorer Villkorsatser Switchsatser Villkor och annat.
Advertisements

2D1311 Programmeringsteknik med PBL
Programmeringsteknik
Programmeringsteknik Föreläsning 6 Skolan för Datavetenskap och kommunikation.
Repetition inför provet
2D1311 Programmeringsteknik med PBL Föreläsning 7 Skolan för Datavetenskap och kommunikation.
Föreläsning 3 Repetition Operatorer Styrstrukturer Deklaration och anrop av metoder.
2D1311 Programmeringsteknik med PBL Föreläsning 3 Skolan för Datavetenskap och kommunikation.
Vilken/vilka av följande satser ger syntaxfel:
Programmeringsteknik Föreläsning 4 Skolan för Datavetenskap och kommunikation.
2D1311 Programmeringsteknik med PBL Föreläsning 6 Skolan för Datavetenskap och kommunikation.
2D1311 Programmeringsteknik med PBL Föreläsning 7 Skolan för Datavetenskap och kommunikation.
2D1311 Programmeringsteknik med PBL Föreläsning 1 Skolan för Datavetenskap och kommunikation.
2D1311 Programmeringsteknik med PBL Föreläsning 4 Skolan för Datavetenskap och kommunikation.
Välkommen Vahid Mosavat
Grundläggande programmering
Föreläsning 2 Datalogi för E1 2D1343
Föreläsning 4 Python: Definiering av egna funktioner Parametrar
Föreläsning 2 Primitiva datatyper Variabler och konstanter Tilldelning Inläsning Operatorer Villkorssatsen if Slingor: while och for.
Programmering B PHP Lektion 2
INTRODUKTION TILL PROGRAMMERING
Programmering B PHP Lektion 2
Programmering B PHP Lektion 3
Föreläsning 2 Kort Översikt Över Javaspråket. Källkodsformat Unicode används åäöμψζ tillåtna Inte alla miljöer klarar av det Källkod Bytekod Java VM för.
Vektorer (klassen Vector) Sortering
Föreläsning 3 Programmeringsteknik och Matlab DD1312
Internet A Javaskript.
Programspråk Två olika typer av program omvandlar högnivå till lågnivå program: Interpreterande program och kompilerande program. Python är ett interpreterande.
Grundläggande programmering
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 3 ( ) INNEHÅLL: -Jämförelseoperatorer -Villkorssatser -Logiska operatorer.
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 3 ( ) INNEHÅLL: -Jämförelseoperatorer -Villkorssatser -Logiska operatorer.
OOP F3:1 Marie Olsson OOP Objekt-orienterad programmering Föreläsning 3 Iteration Många variabler av samma sort – Arrayer.
DD1311 P ROGRAMMERINGSTEKNIK MED PBL Föreläsning 9 Skolan för Datavetenskap och kommunikation.
Föreläsning 5, Kapitel 5 Använda Java-bibliotek för att få avancerad funktionalitet Kursbok: “Objects First with Java - A Practical Introduction using.
DD1310/DD1314/DA3009 Programmeringsteknik Föreläsning 1 Skolan för Datavetenskap och kommunikation.
1 Föreläsning 5 Programmeringsteknik och Matlab 2D1312/2D1305 Repetition Metoder Array API och klassen ArrayList.
DD1310/DD1314/DA3009 Programmeringsteknik Föreläsning 2 Skolan för Datavetenskap och kommunikation.
Föreläsning 1 Reserverade ord Javas API Identifierare Litteraler Variabler Kompilering och interpretering.
Problemlösningsmetodik
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 3 ( ) INNEHÅLL: -Tabeller -Villkorssatser -Repetitionssatser.
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 4 ( ) INNEHÅLL: -Logiska operatorer och logiska uttryck -Referenstyper.
Beräkningsvetenskap I
Föreläsning 4 programmeringsteknik och Matlab 2D1312/ 2D1305
Föreläsning 3. Flödesscheman while For Max/min-algoritm Datatyper Konvertering Dubbelloop (m. For)
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 5 ( ) INNEHÅLL: -Repetitionssatser: do-satsen och for-satsen -Operatorer:
Programmeringsteknik Föreläsning 8 Skolan för Datavetenskap och kommunikation.
Planering av ett större program - Funktioner, moduler, if och Boolean Linda Mannila
2D1311 Programmeringsteknik med PBL Föreläsning 1 Skolan för Datavetenskap och kommunikation.
Programmeringsteknik Föreläsning 17 Skolan för Datavetenskap och kommunikation.
2D1311 Programmeringsteknik med PBL
2D1311 Programmeringsteknik med PBL Föreläsning 4 Skolan för Datavetenskap och kommunikation.
OOP F13:1 Marie Olsson OOP Objekt-orienterad programmering Föreläsning 13 Repetition variabler, selektion och iteration.
OOP F2:1 Stefan Möller OOP Objekt-orienterad programmering Föreläsning 2 Deklaration och tilldelning Programsatser Tilldelning Input/Output Selektion.
Föreläsning 3 Villkorssatsen if Slingor: while och for Felsökning.
Övning2 programmeringsteknik och Matlab 2D1312/ 2D1305
Programmeringsteknik
-Repetition -Variabler -Primitiva typer (+ boolean) -Operatörer +, ++, --, -Typ konvertering -Wrapper klasser -Jämförelse operatörer,(==, =,,!=, !) -String.
1 Föreläsning 2 Reserverade ord Javas API Identifierare Litteraler Variabler Kompilering och interpretering.
-Repetition -Variabler -Primitiva typer (+ boolean) -Operatörer +, ++, --, -Typ konvertering -Wrapper klasser -Jämförelse operatörer,(==, =,,!=, !) -String.
Föreläsning 3 Operatorer Flödeskontroll Primitiva datatyperKlasser i API och egna klasser int double byte float char boolean short long String BufferedReader.
OOP&M - teori1 OOP&M – Föreläsning 5 kap 8-13 Operatorer,typkonvertering, booleska operatorer, if och else.
Föreläsning4 Repetition slingor Metoder. while-sats består av följande delar: 1. while 2. Villkor-sats (condition) 3. uttryck (statement) while-sats int.
OOP&M - teori1 OOP – Föreläsning 7 (Sista oop I) Konstruktioner för att hantera upprepningar Kapitel 11.
Program indata ? utdata 1/20 Vahid Mosavat, Nada, KTH.
Selektion jämförande och logiska operatorer
Lektion 4.
Föreläsning 3 Programmeringsteknik
Beräkningsvetenskap I
Föreläsning 2 Programmeringsteknik DD1310
Iteration – Repetitionssats - while
Presentationens avskrift:

2D1311 Programmeringsteknik med PBL Skolan för Datavetenskap och kommunikation 2D1311 Programmeringsteknik med PBL Föreläsning 2

Repetition # Läser in längd och vikt, # skriver ut BMI (Body Mass Index) print "Välkommen till BMI-beräknaren!" langd=input("Hur lång är du? ") vikt=input("Hur mycket väger du? ") bmi=vikt/(langd*langd) print "Din bmi är: ",bmi

Kapitel 3 & 4 if-satsen while-slingan slumptal algoritmer for-slingan mer om strängar tupler

if-satsen if-satsen används för val mellan två alternativ. De satser som ska utföras efter if måste indenteras (bildar ett block). Villkoret har värdet True eller False. Datatypen kallas boolean. if-sats=if structure villkor=condition jämföra=compare

Exempel # BMI-programmet med if-sats print "Välkommen till BMI-beräknaren!" langd=input("Hur lång är du? ") vikt=input("Hur mycket väger du? ") bmi=vikt/(langd*langd) print "Din bmi är: " , bmi if bmi<20: print "Ät mer!"

if-else # BMI-programmet med if-else print "Välkommen till BMI-beräknaren!" langd=input("Hur lång är du? ") vikt=input("Hur mycket väger du? ") bmi=vikt/(langd*langd) print "Din bmi är: ",bmi if bmi<20: print "Ät mer!" else: print "Motionera mer!"

if-elif-else # BMI-programmet med if-elif-else print "Välkommen till BMI-beräknaren!" langd=input("Hur lång är du? ") vikt=input("Hur mycket väger du? ") bmi=vikt/(langd*langd) print "Din bmi är: ",bmi if bmi<20: print "Ät mer!" elif bmi<=25: print "Du är lagom tung." else: print "Motionera mer!"

Operatorer i villkor Operator Betyder Om vi satt dag=9 blir == lika med dag==9 True != skilt från dag!=9 False > större än dag>5 True < mindre än dag<5 False >= större än eller lika med dag>=5 True <= mindre än eller lika med dag<=9 True

Kombinera villkor Villkor kan kombineras med operatorerna and,or,not Exempel: if pris<1000 and taltid>=100: print ”Telefonfynd!” and och (True endast om bägge villkoren är uppfyllda) or eller (True om något av villkoren är uppfyllt) not icke (True om villkoret inte är uppfyllt)

Slumptal Oförutsägbara program är roligt! Slumptal får man genom att Importera random-modulen med satsen import random Anropa randrange()-funktionen med gränser random.randrange(start,stopp) vilket ger ett slumptal som är större än eller lika med start, men mindre än stopp. slumptal=random number

Talgissning 1.0 # Talgissning, version 1.0 import random tal = random.randrange(1,101) gissning = input("Gissa talet: ") if gissning == tal: print "Bravo!" else: print "Tyvärr, det var fel."

while-slingan En while-slinga upprepar ett block satser så länge som ett villkor är uppfyllt. Så länge som kannan inte rinner över: Fyll på mer vätska! Så länge som du inte har somnat: Räkna ett får till! Talgissningsprogrammet: Låt användaren gissa tills det blir rätt!

Algoritm En algoritm är en stegvis beskrivning av vad programmet ska göra. Exempel: Slumpa ett tal. Låt användaren göra en gissning Så länge som gissningen är fel: Om gissningen är för hög : uppmana användaren att ge ett lägre tal och läs in ny gissning. Om gissningen är för låg : uppmana användaren att ge ett högre tal och läs in en ny gissning. När gissningen är rätt – skriv ut beröm.

Talgissning 2.0 # Talgissning, version 2.0 import random tal = random.randrange(1,101) gissning = input("Gissa mitt tal: ") while gissning != tal: if gissning > tal: gissning = input("Lägre:") elif gissning < tal: gissning = input("Högre:") print "Bravo, du gissade rätt!"

for-slingan En for-slinga upprepar ett block satser för varje element i en sekvens, t ex för varje bokstav i en sträng. for tkn in "Hej": print tkn skriver ut H e j sekvens=sequence

Räkna upp tal Funktionen range() ger en sekvens av tal. range(10) ger sekvensen [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] Vad gör slingan nedan? for i in range(10): print i

Strängar: index och skivning ord="pizza" Förklaringar: ord[0]"p" Varje bokstav i strängen är numrerad med ett index. ord[1:3]"iz" En delsträng – från och med 1 upp till (men inte med) 3. ord[:4]"pizz" Utelämnat tal före kolon betyder början av strängen. ord[2:]"zza" Utelämnat tal efter kolon betyder slutet av strängen. skivning=slicing

Tuppler En tuppel är en sekvens av data. Exempel: primtal = (2,3,5,7,11,13,17,19) dagar = ("måndag","tisdag","lördag") En tuppel kan indexeras och skivas precis som en sträng. Både tupler och strängar är omuterbara print primtal[0] Utskrift är OK... primtal[0]=1 men inte ändring! omuterbar=immutable

Algoritm för trasselord Slumpa ett ord. Skapa ett trasselord så här: Skapa ett tomt trasselord Så länge som det finns bokstäver kvar i ordet: Plocka ut en slumpad bokstav Lägg till den till trasselordet Låt användaren gissa. Jämför gissningen med ursprungsordet. Upprepa punkt 3 och 4 tills användaren gissar rätt.

# Trasselord # # Datorn slumpar ett ord och blandar det, # spelaren ska gissa ursprungsordet. # Skrivet av Michael Dawson - 1/28/03 # Modifierat av Linda Kann - 30 jan 2006 import random # Skapa en tuppel med ord FRUKT = ("persika","banan","jordgubbe","kiwi") # Slumpa ett ord ord = random.choice(FRUKT) # Spara svaret svaret = ord

# Skapa ett tomt trasselord # Så länge som ursprungsordet inte är tomt while ord: # Slumpa en plats i ordet plats = random.randrange(len(ord)) # Ta med bokstaven från den platsen trassel = trassel+ord[plats] # Ta bort bokstaven ur ursprungsordet ord = ord[:plats]+ord[(plats+1):]

# Starta spelet print \ """ Spelet ordtrassel Skapa ett ord ur trasslet (Avsluta med retur.) print "Trasselordet:", trassel gissning = raw_input("Din gissning: ") gissning = gissning.lower()

while (gissning!=svaret) and (gissning!=""): print "Fel svar." gissning = raw_input("Din gissning: ") gissning = gissning.lower() if gissning == svaret: print "Javisst! Du klarade det!" raw_input("\nAvsluta med retur.")