F4. programmeringsteknik och Matlab

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

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

Övning2. Variabler. Data typer

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

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

TDDC77 Objektorienterad Programmering

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

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?

l uppgiftsformulering l algoritmkonstruktion l verifikation l kodning l testning och avlusning l validering l dokumentering l underhœll Kapitel 2

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

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

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

OOP Objekt-orienterad programmering

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

Programmering A. Johan Eliasson

Klassdeklaration. Metoddeklaration. Parameteröverföring

ITK:P1 Föreläsning 1. Programmering. Programmeringsspråket Java. Stark typning Explicit typning Strukturerat Hög säkerhet

SMD 134 Objektorienterad programmering

F1 - Introduktion. ID1004 Objektorienterad programmering Fredrik Kilander

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

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

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

Föreläsning 2 - Intro till Java

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

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

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

OOP Objekt-orienterad programmering

732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Felsökning. Datatyper. Referenstyper. Metoder / funktioner

Tentamen OOP

TDIU01 - Programmering i C++, grundkurs

Föreläsning 3: Booleans, if, switch

Språkkonventioner och redigering av tal.

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

TDIU01 - Programmering i C++, grundkurs

JAVAUTVECKLING LEKTION 4

Föreläsning 1 & 2 INTRODUKTION

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

EDAA20 Programmering och databaser. Mål komprimerat se kursplanen för detaljer. Om att lära sig programmera. Föreläsning 1-2 Innehåll.

DD2310. Javaprogrammering för Pythonprogrammerare. Johan Boye

TENTAMEN OOP

OOP Objekt-orienterad programmering

Objektorienterad Programmering (TDDC77)

F2 Datatyper och variabler. ID1004 Objektorienterad programmering Fredrik Kilander

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

Mer källkod. Styrstrukturer Val Slingor Operatorer Källkodsexempel med minne. Erik Forslin. Rum 1445, plan 4 på Nada

Lektion Java Grunder. Javas historia. Programmeringsspråket Java. Skillnaderna mellan Java och C++ JVM (Javas Virtuella Maskin)

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

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

Föreläsning 2 Programmeringsteknik och C DD1316

Tentamen ID1004 Objektorienterad programmering May 29, 2012

Imperativ programmering. Föreläsning 2

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

TDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 4 Erik Nilsson, Institutionen för Datavetenskap, LiU

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

UML. Klassdiagr. Abstraktion. Relationer. Överskugg. Överlagr. Aktivitetsdiagram Typomv. Typomv. Klassdiagr. Abstraktion. Relationer.

OOP Objekt-orienterad programmering

Introduktion till Datalogi DD1339. Föreläsning 2 22 sept 2014

Objektorienterad programmering i Java

TDDE10 m.fl. Objektorienterad programmering i Java Föreläsning 6 Erik Nilsson, Institutionen för Datavetenskap, LiU

F5 Selektion och iteration. ID1004 Objektorienterad programmering Fredrik Kilander

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

DD1314 Programmeringsteknik

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äsning REPETITION & EXTENTA

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

EDAA20 Programmering och databaser. Mål komprimerat se kursplanen för detaljer. Checklista. Föreläsning 1-2 Innehåll. Programmering.

Att skriva till och läsa från terminalfönstret

Skriftlig tentamen för kursen DV017A. Inledande programmering i Java A

Föreläsning 1 & 2 INTRODUKTION

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

TENTAMEN OOP

Grundkurs i programmering, 6 hp (725G61) Dugga 2 tillfälle 2

Anteckningar 1: Grundläggande saker

OOP F1:1. Föreläsning 1. Introduktion till kursen OOP Vad är Java? Ett första Java-program Variabler Tilldelning. Marie Olsson

Enkla datatyper minne

Tentamen ID1004 Objektorienterad programmering December 15, 2012

Att deklarera och att använda variabler. Föreläsning 10. Synlighetsregler (2) Synlighetsregler (1)

Läsanvisning: Dessa OH bilder samt kap 1-3

Föreläsning 2, vecka 8: Repetition

Föreläsning 3-4 Innehåll

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

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

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

Objektorientering. Objekt och metoder. Objektorientering. Viktiga begrepp. Klass. Objekt. Deklarativ programmering

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

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

2 b) Bodega bodegan = new Bodega(); double moms = 0.235; String namn = "Vargtass"; System.out.println(namn + " " + moms + bodegan.ändra(moms, namn); S

Arv: Fordonsexempel. Arv. Arv: fordonsexempel (forts) Arv: Ett exempel. En klassdefinition class A extends B {... }

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

Objektorienterad programmering. Fält som funktionsresultat. Mer om fält: att uppdatera ett parameterfält. Kontrast: Parametrar av primitiv typ

TDDE10 m.fl. Objektorienterad programmering i Java Föreläsning 6 Erik Nilsson, Institutionen för Datavetenskap, LiU

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

Föreläsning 2. Täcker material från lektion 1, 2, 3 och 4:

Command line argumenter. Objektorienterad Programmering (TDDC77) Vad blir resultatet? Nu då? Ahmed Rezine. Hösttermin 2016

Objektorienterad programmering i Java

Objektorienterad Programmering (TDDC77)

Tentamen , Introduktion till Java, dtaa98, dtea53

Programstruktur och terminologi. Programmet producerar följande utskrift i terminalfönstret: Ett Javaprogram består av en eller flera klasser

Transkript:

Programmeringsspråk Föreläsning 4 programmeringsteknik och Matlab 2D1312/ 2D1305 Introduktion till Java Kompilering, exekvering, variabler, styrstrukturer 1 Ett program är en eller flera instruktioner som man vill att datorn ska utföra. För att datorn ska förstå instruktionerna så måste man skriva på ett speciellt sätt. För människan är det tidskrävande och svårt att skriva instruktioner som datorn förstår. Programmeringsspråk är ett verktyg som underlättar för människan att skapa instruktioner som en dator kan förstå. 2 Kompilering och exekvering Kompilering och exekvering Ett program måste översättas till datorns språk för att datorn ska kunna slutföra det. Översättningen görs m.h.a kompilatorn. Men för att kompilatorn ska kunna översätta så måste programmets olika delar följa språkets regler och syntaxform. t.ex: samla labbarna och? tid redovisa i bonuspoäng 3 Kompilatorn har följande uppgifter: 1. Kontrollera att programmet har följt språkets regler och syntaxform. 2. Översätta koden till det språk som kan användas av datorn. Man säger att man har kompilerat koden.(javac) När kompileringen inte ger några felmeddelande det betyder att man kan exekvera (köra) filen som skapats av kompilatorn.(java) 4 En körbar java-kod Kompileringsfel class ProgEtt{ System.out.println( java är enkel ); 5 Följande program ger följande kompileringsfel class ProgEtt{ String mening= java är enkel ; System.out.println(mining); ProgEtt.java:4: cannot find symbol symbol : variable mining location: class ProgEtt System.out.println(mining); ^ 1 error 6 KTH, NADA, Vahid Mosavat 1

Variabel, datatyp och litteral Variabel är en identifierare i ett program som representerar en plats i datorns minne. I Java finns det flera olika datatyper. T.ex: 2, 2, 2, 3.14 Litteral är ett angivet värde i ett program. Primitiva datatyper byte short int long double float char boolean Datatyper Klasser String Scanner System Integer Double Boolean 7 8 Deklarering, tilldelning och initiering Deklarering av variabler betyder att man talar om för daton vilken datatyp variabeln kommer att ha under hela programmet. Tilldelning är då en variabel får ett värde. Initiering är då en variabel får sitt absolut första värde. Namngivning av variabler Följande konvension för namngivning av variabler används i java. Första tecknet på namnet är gemen. Om variabelnamnet består av flera ord, första tecknet på alla ord förutom det första ska vara versal. 9 10 Integer ålder ; ålder = 12; Double längd = 1.70; Exempel Deklaration av ålder Initiering av ålder Deklaration och initiering av längd på samma gång 11 Reserverade ord Följande ord är reserverad och får (ska) inte användas som identifierare. abstract boolean break byte (byvalue) case (cast) catch char class (const) continue default do double else extends false final finally float for (future) (generic) (goto) if implements import (inner) instanceof int interface long native new null (operator) (outer) package private protected public (rest) return short static super switch synchronized this throw throws transient true try (var) void volatile while 12 KTH, NADA, Vahid Mosavat 2

Sats och block Ett program består av en eller flera satser. En sats i java avslutas med ; och i vissa fall inom ett block { Block { används bl.a. för att flera satser ska hålla ihop. När en sak är gemensam för flera satser som kommer efter varandra. Utskrift satser System.out.print( ) En sats som skriver ut parameternsvärde. System.out.println( ) En sats som skriver ut parameternsvärde och byter automatiskt rad fteråt. 13 14 Inläsning från tangentbord Op Operatorer Exempel Op Exempel import java.util.scanner; + x+y += x+=2, x+=y class FintNamn{ Scanner tgb = new Scanner(System.in); System.out.print( Vad heter du? ); String namnet = tgb.nextline(); System.out.println(namnet + är ett fint namn ); - * / ++ -- % == y-x x*y x/y x++ eller ++x y-- eller --y x%y x==y -=! *= /= x-=3, x-=y!isempty x*=2, x*=y x/=2, x/=y 15!= x!=y 16 Styrstrukturer Java kod exekveras radvis och sekventiell. Med hjälp av styrstrukturer kan man ändra den sekventiella exekveringen. Några exempel på styrstrukturer är: if, if-else, for, while, do-while if-sats Problem: Skriv ett program som frågar efter pris på en bok och skriver ut dyr bok, ingen affär om priset är mer än 500:- 17 18 KTH, NADA, Vahid Mosavat 3

modell if-else Kolla om bokpris>500 Skriv ut dyr bok, ingen affär else använder man tillsammans med en if-sats när man vill göra ett val mellan två olika saker. Exempel: Skriv ett program som frågar efter pris på en bok och skriver ut dyr, ingen affär om priset är mer än 500 kr annars skriver programmet ut billig bok, köp fort Kod efter if-satsen... 19 20 modell Slinga (loop) bokpris>500 System.out.println( billig ); Slingor eller loop används då man vill en sak ska upprepas ett antal gånger. I java finns det for-slingor och whileslingor för detta ändamål System.out.println( dyr ); Kod efter if-else... 21 22 Exempel Skriv ett program som frågar efter användarens ålder. Om användaren matar in ett tal mindre än 20 då ska följande text skrivas ut: tyvärr, men du är välkommen när du blir 20 Detta upprepas tills användaren matar in ett tal större eller lika med 20 Då ska skrivas ut på skärmen Välkommen till systembolaget. och därefter programmet avslutas. For-sats for-sats består av följande delar 1.for 2.(A;B;C) A är oftast deklaraton och initiering av veriabel B är ett villkor-sats (Condition) C oftast är en stegning-sats 3. uttryck (statement) for ( int i=0 ; i< 10; i++) { System.out.println( Java är enkelt ); 23 24 KTH, NADA, Vahid Mosavat 4

while sats Modell för for- och while-sats... kod före for eller while while-sats består av följande delar: 1. while 2. Villkor-sats (condition) 3. uttryck (statement) Villkor while (i<10) { System.out.println( programmering är kul ); i++; 25 uttryck Kod efter for eller while... 26 Model l för loop do-while sats i<10 System.out.println( hej ); i++; Kod efter for eller while... 27 while-sats består av följande delar: 1. do 2. uttryck 3.while 4.Villkor-sats (condition) do { System.out.println( programmering är kul ); i--; while (i>10); 28 Modell för do-while sats... kod för do-while uttryck Villkor kod efter do-while... 29 KTH, NADA, Vahid Mosavat 5