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

Storlek: px
Starta visningen från sidan:

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

Transkript

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

2 Idag - Kursplan - Börja programmera - Lokala variabler - aritmetiska operatorer - input / output 2

3 Kursplan 3

4 Kursplan - Förkunskaper Introduktion till datateknik för språkvetare, 5 p/7,5 hp. 4

5 Kursplan Mål Efter avslutad kurs skall studenten för att förtjäna betyget Godkänd minst kunna redogöra för följande begrepp och skriva fungerande Javaprogram som exemplifierar och drar nytta av dem: 5

6 Kursplan Mål (1) på ett elementärt plan redogöra för och tillämpa en god programmeringsmetodik 6

7 Kursplan Mål (2) förklara innebörden av följande begrepp och kunna skriva fungerande Javaprogram som exemplifierar och drar nytta av dem: 1. datatyper, objekt, klasser, variabler (instans- och klass-) och metoder (instans- och klass-); 2. logiska och aritmetiska operatorer, jämförelseoperatorer; 3. villkorssatser (if-satser); och satser för iterativ kontroll (for- och while-satser); 4. standardklasser, särskilt viktiga exempel på sådana t.ex. String; 7

8 Kursplan Mål (3) skriva program som utför elementära beräkningar utifrån förekomsten av tecken och ord-n-gram i texter; (4) använda dokumentationen av Java med viss Självständighet; (5) förklara, dokumentera och kommentera kod på ett användbart sätt. 8

9 Kursmål och Planering Fas 1: Grunderna Datum Moment Examination 22/2 Variabler och operatorer Laboration 0 29/2 Villkorssatser Laboration 1 7/3 Arrayer(Fält) och repetitionssatser, del 1 Laboration 2 14/3 Repetitionssatser, del 2 Laboration 3 21/3 Metoder Laboration 4 Datum Moment Examination 28/3 Klasser, ord-tri-gram Laboration 5 Fas 2: Tillämpning Datum Moment Examination 4/4 ord-n-gram Laboration 6 18/4 Språkteknologisk tillämpning Laboration 7 Laboration 8 för VG 9

10 Kursmål och Planering Två pass per gång (undantag laboration 6) - Genomgång (10-12) Turing - Laboration (13 15) Chomsky Laboration 6: - Laboration (10 12) Chomsky 10

11 Laborationernas struktur Del 0 Testa momentet - Kompilera färdiga småprogram och gör små ändringar i dem Del 1 Skriva enkla problemet - Skriva egna småprogram där du tillämpar momentet Del 2 Tillämpning - Blanda in det nya momentet med de moment vi hittills gått igenom i kursen 11

12 Kursplan Betygskriterier Betyget G: Godkänd på laborationerna 0-7. Betyget VG: Utöver kraven för G måste man få VG på laboration 8. 12

13 Vad ska lämnas in? Varje laborationsinlämning ska innehålla följande: - packat arkiv med dina java-filer: tar -zcvf labx.tar.gz mappmedlabxfiler - skriftlig rapport 13

14 Hur skriver man en rapport? Introduktion: - Vad är syftet med din laboration? Varje deluppgift ska innehålla följande delar: - Genomförande: -- Hur gick du tillväga för att lösa laborationen - Resultat: -- Vilka resultat fick du? - Slutsats(ibland): -- Vilka slutsatser kan du göra utifrån dina resultat? Analysera (och diskutera) Referenser - Eventuell extra litteratur du använt för att lösa uppgifterna i laborationen 14

15 Kurslitteratur Huvudbok - Eck, David J. Introduction to Programming Using Java. 6e utgåvan (Gratisbok på internet) Alternativ litteratur - Holm, Per. Objektorienterad programmering och Java. Studentlitteratur. - Skansholm, Jan. Java direkt med Swing. Studentlitteratur. 15

16 Börja programmera 16

17 Vad är programmering? Programmering handlar om att ge instruktioner till en dator så att datorn kan lösa ett specifikt problem. Problem som ska lösas. Dator Resultat 17

18 Vad är programmering? Programmering handlar om att ge instruktioner till en dator så att datorn kan lösa ett specifikt problem. Problem som ska lösas. Människans språk Dator Datorns språk Binärt: Resultat Människans språk Vi vill skriva i ett språk som vi förstår men datorn förstår bara ettor och nollor, dvs binära tal. 18

19 Vad är programmering? Vi vill skriva i ett språk som vi förstår men datorn förstår bara ettor och nollor, dvs binära tal. Problem: Det är svårt att förstå datorns språk:

20 Vad är programmering? Vi vill skriva i ett språk som vi förstår men datorn förstår bara ettor och nollor, dvs binära tal. Problem: Det är svårt att förstå datorns språk: Lösning: Vi vill arbeta med ett språk med följande egenskaper: - Det ska ha en entydig grammatik så att allting som sägs i det kan tolkas på endast ett sätt - Det ska vara lätt att översätta det till datorns språk Detta språk kallas för programmeringsspråk. Vi kommer att arbeta med Java som är ett objektorienterat 20 programmeringsspråk.

21 Java Fakta - Utvecklats av Sun Microsystems ( - Släpptes plattformsoberoende - dina program kan köras i olika datorsystem utan att du behöver ändra i koden - Objektorienterat - All kod skrivs i klasser som beskriver objekt (mer om detta senare i kursen) 21

22 Hur programmerar man? - Exempel Skriv ett program som skriver ut Hello World!. 22

23 Hur programmerar man? - Exempel Skriv ett program som skriver ut Hello World!. Steg 0: Förstå problemet - Vad ska programmet utföra? Program Hello World! 23

24 Hur programmerar man? - Exempel Skriv ett program som skriver ut Hello World!. Steg 1: Skapa pseudokod - Beskriv hur problemet ska lösas. Kom ihåg: En dator kan endast utföra en instruktion i taget. Program PRINT hello world! Hello World! Pseudokod En text som beskriver hur ditt program fungerar. 24

25 Hur programmerar man? - Exempel Steg 2: Implementera din lösning - Översätt din pseudokod till programmeringskod 0. Starta Emacs. 1. Skapa en ny fil som heter HelloWorld.java 25

26 Hur programmerar man? - Exempel Steg 2: Implementera din lösning - Översätt din pseudokod till programmeringskod 2. Skriv följande kod: public class HelloWorld 26

27 Hur programmerar man? - Exempel Steg 2: Implementera din lösning - Översätt din pseudokod till programmeringskod 2. Skriv följande kod: public class HelloWorld System.out.println("Hello World!"); Pseudokod: PRINT hello world! 27

28 Hur programmerar man? - Exempel Steg 2: Implementera din lösning - Översätt din pseudokod till programmeringskod 2. Skriv följande kod: public class HelloWorld System.out.println("Hello World!"); 3. Spara filen. 28

29 Hur programmerar man? - Steg 3 Steg 3: Testkörning - Kompilera din kod och testkör. 4. Öppna terminalen och placera dig i samma katalog som du sparade filen i med hjälp av kommandot cd. 5. Kompilera filen genom att skriva följande terminalen: javac HelloWorld.java Nu har du fått en exekverbar fil av din kod. Kompilering Kompilering innebär att man översätter din kod till det binära språket, dvs det språk som datorn förstår. Det binära språket består av ettor och nollor. 29

30 Hur programmerar man? - Steg 3 Steg 3: Testkörning - Kompilera din kod och testkör. 6. Exekvera ditt program genom att skriva följande i terminalen: java HelloWorld Resultatet blir det här: Hello World! Exekvering Körning av programmet. 30

31 Hur programmerar man? - Översikt Steg 0: Förstå problemet - Vad ska programmet utföra? Steg 1: Skapa pseudokod - Beskriv hur problemet ska lösas. Kom ihåg: En dator kan endast utföra en instruktion i taget. Steg 2: Implementera din lösning - Översätt din pseudokod till programmeringskod Steg 3: Testkörning - Kompilera din kod och testkör. Det blev fel Det blev rätt 31

32 Programskal public class Name... public - synlig för alla 32

33 Programskal public class Name... public - synlig för alla class - reserverat ord som används när man skapar klassen till ett objekt (mer om objekt senare i kursen). 33

34 Programskal public class Name... public - synlig för alla class - reserverat ord som används när man skapar klassen till ett objekt (mer om objekt senare i kursen). Name - Namnet på klassen/programmet 34

35 Programskal public class Name... static betyder att main kan användas innan nånting har skapats. 35

36 Programskal public class Name... static betyder att main kan användas innan nånting har skapats. void main returnerar ingenting 36

37 Programskal public class Name... static betyder att main kan användas innan nånting har skapats. void main returnerar ingenting main - Ett program börjar ALLTID i main 37

38 Programskal public class Name public static void main(string[] args)... String en datatyp som beskriver en sträng 38

39 Programskal public class Name public static void main(string[] args)... String en datatyp som beskriver en sträng [] - beteckning för array, dvs en samling element av samma typ 39

40 Programskal public class Name public static void main(string[] args)... String en datatyp som beskriver en sträng [] - beteckning för array, dvs en samling element av samma typ args - namnet på argumentet till main 40

41 Programskal public class Name public static void main(string[] args)... Här skriver vi koden till programmet. 41

42 Programskal Vad kan vi skriva i? Svar: Satser Exempel: Deklarera lokala variabler (idag) Skriva arimetiska uttryck (idag) Metodanrop: System.out.println("Hello World!"); 42

43 Lokala variabler 43

44 Lokala variabler - Fakta En variabel är en behållare som kan lagra en viss typ av information. Informationen kan spara undan och användas vid ett senare tillfälle i programmet. i 7 variabelnamn innehåll d Ett variabelnamn kan inte börja med en siffra 44

45 Lokala variabler deklarera utan tilldelning public class LocalVariables0 // deklarera i utan tilldelning int i; 45

46 Lokala variabler deklarera utan tilldelning public class LocalVariables0 // deklarera i utan tilldelning int i; int är en förkortning för Integer(heltal) 46

47 Lokala variabler deklarera utan tilldelning public class LocalVariables0 // deklarera i utan tilldelning int i; Namnet på den lokala variabeln int är en förkortning för Integer(heltal) 47

48 Lokala variabler deklarera utan tilldelning public class LocalVariables0 i // deklarera i utan tilldelning int i; en sats måste alltid avslutas med ; namnet på den lokala variabeln int är en förkortning för Integer(heltal) 48

49 Lokala variabler deklarera med tilldelning public class LocalVariables0 // deklarera i med tilldelning int i = 5; 49

50 Lokala variabler deklarera med tilldelning public class LocalVariables1 // deklarera i med tilldelning int i = 5; int är en förkortning för Integer(heltal) 50

51 Lokala variabler deklarera med tilldelning public class LocalVariables1 // deklarera i med tilldelning int i = 5; namnet på den lokala variabeln int är en förkortning för Integer(heltal) 51

52 Lokala variabler deklarera med tilldelning public class LocalVariables1 // deklarera i med tilldelning int i = 5; tilldelningsoperator används för att spara ett värde i en variabel namnet på den lokala variabeln int är en förkortning för Integer(heltal) 52

53 Lokala variabler deklarera med tilldelning public class LocalVariables1 // deklarera i med tilldelning int i = 5; värdet man vill spara i variabeln tilldelningsoperator används för att spara ett värde i en variabel namnet på den lokala variabeln int är en förkortning för Integer(heltal) 53

54 Lokala variabler deklarera med tilldelning public class LocalVariables1 i 5 // deklarera i med tilldelning int i = 5; Avsluta satsen med ett ; värdet man vill spara i variabeln tilldelningsoperator används för att spara ett värde i en variabel namnet på den lokala variabeln int är en förkortning för Integer(heltal) 54

55 Lokala variabler Ändra värdet i en variabel public class LocalVariables2 // deklarera i med tilldelning int i = 5; // i tilldelas värde 4 i = 4; 55

56 Lokala variabler Ändra värdet i en variabel public class LocalVariables2 // deklarera i med tilldelning int i = 5; // i tilldelas värde 4 i = 4; 56

57 Lokala variabler Ändra värdet i en variabel public class LocalVariables2 i 5 // deklarera i med tilldelning int i = 5; // i tilldelas värde 4 i = 4; 57

58 Lokala variabler Ändra värdet i en variabel public class LocalVariables2 i 5 // deklarera i med tilldelning int i = 5; // i tilldelas värde 4 i = 4; 58

59 Lokala variabler Ändra värdet i en variabel public class LocalVariables2 i 5 // deklarera i med tilldelning int i = 5; // i tilldelas värde 4 i = 4; variabeln man vill spara värdet i 59

60 Lokala variabler Ändra värdet i en variabel public class LocalVariables2 i 5 // deklarera i med tilldelning int i = 5; // i tilldelas värde 4 i = 4; tilldelningsoperator variabeln man vill spara värdet i 60

61 Lokala variabler Ändra värdet i en variabel public class LocalVariables2 i 5 // deklarera i med tilldelning int i = 5; // i tilldelas värde 4 i = 4; det nya värdet man vill spara i variabeln tilldelningsoperator variabeln man vill spara värdet i 61

62 Lokala variabler Ändra värdet i en variabel public class LocalVariables2 i 5 // deklarera i med tilldelning int i = 5; // i tilldelas värde 4 i = 4; avsluta med semikolon(;) det nya värdet man vill spara i variabeln tilldelningsoperator variabeln man vill spara värdet i 62

63 Lokala variabler Ändra värdet i en variabel public class LocalVariables2 i 4 // deklarera i med tilldelning int i = 5; // i tilldelas värde 4 i = 4; avsluta med semikolon(;) det nya värdet man vill spara i variabeln tilldelningsoperator variabeln man vill spara värdet i 63

64 Lokala variabler Hämta värdet public class LocalVariables3 // deklarera i med tilldelning int i = 5; // deklara j med tilldelning int j = i; 64

65 Lokala variabler Hämta värdet public class LocalVariables3 // deklarera i med tilldelning int i = 5; // deklara j med tilldelning int j = i; 65

66 Lokala variabler Hämta värdet public class LocalVariables3 i 5 // deklarera i med tilldelning int i = 5; // deklara j med tilldelning int j = i; 66

67 Lokala variabler Hämta värdet public class LocalVariables3 i 5 // deklarera i med tilldelning int i = 5; ij // deklara j med tilldelning int j = i; 67

68 Lokala variabler Hämta värdet public class LocalVariables3 i 5 // deklarera i med tilldelning int i = 5; ij 5 // deklara j med tilldelning int j = i; 68

69 Lokala variabler Deklarera flera variabler public class LocalVariables4 // deklarera variabler på samma rad int i = 5, j = i; 69

70 Lokala variabler Deklarera flera variabler public class LocalVariables4 // deklarera variabler på samma rad int i = 5, j = i; 70

71 Lokala variabler Deklarera flera variabler public class LocalVariables4 i 5 // deklarera variabler på samma rad int i = 5, j = i; 71

72 Lokala variabler Deklarera flera variabler public class LocalVariables4 i 5 ij // deklarera variabler på samma rad int i = 5, j = i; 72

73 Lokala variabler Deklarera flera variabler public class LocalVariables4 i 5 ij 5 // deklarera variabler på samma rad int i = 5, j = i; 73

74 Lokala variabler Deklarera flera variabler public class LocalVariables5 // deklarera variabler på samma rad int i = 5, j = 9; 74

75 Lokala variabler Deklarera flera variabler public class LocalVariables5 // deklarera variabler på samma rad int i = 5, j = 9; 75

76 Lokala variabler Deklarera flera variabler public class LocalVariables5 i 5 // deklarera variabler på samma rad int i = 5, j = 9; 76

77 Lokala variabler Deklarera flera variabler public class LocalVariables5 i 5 ij 9 // deklarera variabler på samma rad int i = 5, j = 9; 77

78 Lokala variabler Fakta En variabel används för att spara undan värden som vi kan använda senare i programmet. En variabel skapas så här: Sats Exempel Förklaring typ namn; int i; Skapar en variabel av typen typ och med namnet namn typ namn = värde; int i = 5; Skapar en variabel av typen typ och med namnet namn och med värdet värde. 78

79 Lokala variabler Fakta En variabel används för att spara undan värden som vi kan använda senare i programmet. Flera variabler skapas så här: Sats Exempel Förklaring typ namn0, namn1; int i, j; Skapar två variabler av typen typ och med namnen i och j. typ namn0 = värde0, namn1 = värde; int i = 5, j = 7; Skapar två variabler av typen typ och med namnen i och j, i har värdet 5 och j har värdet 7. 79

80 Lokala variabler Fakta Så här tilldelar man en variabel ett nytt värde: Sats Exempel Förklaring namn = nyttvärde; i = 7; Värdet 7 sparas i variablen i. Värdet i en variabel hämtas så här: Del av sats Exempel Förklaring namn i Värdet i variablen i hämtas. 80

81 Vilka typer av variabler kan vi skapa? Primitiva datatyper Enkla datatyper som redan finns i programmeringsspråket. Heltal : int, byte, short, long, Flyttal : float, double Sanningsvärde : boolean Tecken : char 81

82 Vilka typer av variabler kan vi skapa? Abstrakta datatyper - Klasser Datatyper som innehåller värden och metoder man kan utföra på datatypen. Exempel: Klassen String innehåller en beskrivning av en sträng och saker man kan göra med strängen. // deklarera en sträng med som innehåller hej! String mystring = "Hej!"; // returnerar längden på strängen mystring.length(); 82

83 Primitiva Datatyper - Heltal Typ Minsta värde Högsta värde byte short int long Laboration del 2 Undersök vad som händer när man överskider gränserna: short i = 60000; System.out.println(i); 83

84 Primitiva datatyper - Flyttal Typ Minsta värde Högsta värde Noggrannhet float 7 siffror double 3, , , , siffror Laboration del 2 Undersök vad som händer när du adderar 0.1 flera gånger: double d = 0.1; System.out.println(d); d = d + 0.1; System.out.println(d); osv. 84

85 Primitiva datatyper - Sanningsvärden Typ Minsta värde Högsta värde boolean falskt sant 85

86 Primitiva datatyper - Tecken Typ: char Lagrar: tecken Exempel: // spara tecknet A i variabeln c char c = 'A'; 86

87 Aritmetiska Operatorer 87

88 Aritmetiska Operatorer - Fakta Aritmetiska operatorer ingår i uttryck och beskriver hur variabler och värden kan kombineras för att man ska få ett numeriskt resultat. Operator Exempel Förklaring Addition Substraktion * 2 * 2 Multiplikation / 4 / 2 Heltalsdivision om talen är heltal, annars vanlig division 88

89 Aritmetiska Operatorer - Exempel public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) j = 9 / 2; // Division (/) 89

90 Aritmetiska Operatorer - Exempel public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) j = 9 / 2; // Division (/) 90

91 Aritmetiska Operatorer - Exempel i 6 ij 5 public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) j = 9 / 2; // Division (/) 91

92 Aritmetiska Operatorer - Exempel i 6 ij 5 public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) j = 9 / 2; // Division (/) 92

93 Aritmetiska Operatorer - Exempel i 6 ij 5 public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) j = 9 / 2; // Division (/) 93

94 Aritmetiska Operatorer - Exempel i 6 ij 5 public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) j = 9 / 2; // Division (/) 6 94

95 Aritmetiska Operatorer - Exempel i 6 ij 5 public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) j = 9 / 2; // Division (/)

96 Aritmetiska Operatorer - Exempel i 6 ij 5 public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) j = 9 / 2; // Division (/)

97 i 6 ij 5 public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) j = 9 / 2; // Division (/) = 8 97

98 Aritmetiska Operatorer - Exempel i 8 ij 5 public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) j = 9 / 2; // Division (/) = 8 98

99 Aritmetiska Operatorer - Exempel i 8 ij 5 public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) j = 9 / 2; // Division (/) 99

100 Aritmetiska Operatorer - Exempel i 8 ij 5 public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) j = 9 / 2; // Division (/) 100

101 Aritmetiska Operatorer - Exempel i 8 ij 5 public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) j = 9 / 2; // Division (/) 5 101

102 Aritmetiska Operatorer - Exempel i 8 ij 5 public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) j = 9 / 2; // Division (/) 5 _ 102

103 Aritmetiska Operatorer - Exempel i 8 ij 5 public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) j = 9 / 2; // Division (/) 5 _ 103

104 Aritmetiska Operatorer - Exempel i 8 ij 5 public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) j = 9 / 2; // Division (/) 5 _ 8 104

105 Aritmetiska Operatorer - Exempel i 8 ij 5 public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) j = 9 / 2; // Division (/) 5 _ 8 =

106 Aritmetiska Operatorer - Exempel i 8 ij -3 public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) j = 9 / 2; // Division (/) 5 _ 8 =

107 Aritmetiska Operatorer - Exempel i 8 ij -3 public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) j = 9 / 2; // Division (/) 107

108 Aritmetiska Operatorer - Exempel i 8 ij -3 public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) j = 9 / 2; // Division (/) 108

109 Aritmetiska Operatorer - Exempel i 8 ij -3 public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) j = 9 / 2; // Division (/) 109

110 Aritmetiska Operatorer - Exempel i 8 ij -3 public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) j = 9 / 2; // Division (/)

111 Aritmetiska Operatorer - Exempel i 8 ij -3 public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) j = 9 / 2; // Division (/) -3 * 111

112 Aritmetiska Operatorer - Exempel i 8 ij -3 public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) j = 9 / 2; // Division (/) -3 *

113 Aritmetiska Operatorer - Exempel i 8 ij -3 public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) j = 9 / 2; // Division (/) -3 * -3 = 9 113

114 Aritmetiska Operatorer - Exempel i 9 ij -3 public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) j = 9 / 2; // Division (/) -3 * -3 = 9 114

115 Aritmetiska Operatorer - Exempel i 9 ij -3 public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) j = 9 / 2; // Division (/) -3 * -3 = 9 115

116 Aritmetiska Operatorer - Exempel i 9 ij -3 public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) j = 9 / 2; // Division (/) 116

117 Aritmetiska Operatorer - Exempel i 9 ij -3 public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) j = 9 / 2; // Division (/) 117

118 Aritmetiska Operatorer - Exempel i 9 ij -3 public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) j = 9 / 2; // Division (/) 9 118

119 Aritmetiska Operatorer - Exempel i 9 ij -3 public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) j = 9 / 2; // Division (/) 9 / 119

120 Aritmetiska Operatorer - Exempel i 9 ij -3 public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) j = 9 / 2; // Division (/) 9 / 2 120

121 Aritmetiska Operatorer - Exempel i 9 ij -3 public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) j = 9 / 2; // Division (/) 9 / 2 =

122 Aritmetiska Operatorer - Exempel i 9 ij? public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) j = 9 / 2; // Division (/) 9 / 2 =

123 Aritmetiska Operatorer - Exempel i 9 ij? public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) j = 9 / 2; // Division (/) Vi kan endast spara heltal(int) i j. 9 / 2 = 4.5 Vad händer när vi försöker lagra 4.5 i j? 123

124 Aritmetiska Operatorer - Exempel i 9 ij 4 public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) j = 9 / 2; // Division (/) Vi kan endast spara heltal(int) i j. 9 / 2 = 4.5 Vad händer när vi försöker lagra 4.5 i j? Svar: 4 sparas i j och.5 kastas bort. 124

125 Aritmetiska Operatorer - Exempel i 9 ij 4 public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) j = 9 / 2; // Division (/) Hur ska vi gå tillväga för att spara 4.5? 9 / 2 =

126 Aritmetiska Operatorer - Exempel i 9 ij 4 public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) j = 9 / 2; // Division (/) Hur ska vi gå tillväga för att spara 4.5? 9 / 2 = 4.5 Svar: Skapa en variabel som man kan spara flyttal i och spara 4.5 i den. 126

127 Aritmetiska Operatorer - Exempel i 9 ij 4 d 4 public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) double d = 9 / 2; // Division (/) Hur ska vi gå tillväga för att spara 4.5? 9 / 2 = 4.5 Svar: Skapa en variabel som man kan spara flyttal i och spara 4.5 i den. 127

128 Aritmetiska Operatorer - Exempel i 9 ij 4 d 4.0 public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) double d = 9 / 2; // Division (/) 9 / 2 = 4.5 Problem: Datorn kastar fortfarande bort.5 för den beräknar först 9 / 2 = 4 och därefter sparar den resultatet i d. 128

129 Aritmetiska Operatorer - Exempel i 9 ij 4 d 4.5 public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) double d = 9.0 / 2.0; // Division (/) Problem: Datorn kastar fortfarande bort.5 för den beräknar först 9 / 2 = 4 och därefter sparar den resultatet i d. 9 / 2 = 4.5 Lösning a: Skriv 9.0 /

130 Aritmetiska Operatorer - Exempel i 9 ij 4 d 4.5 public class OperatorsOnInteger // deklarera i och j med tilldelning int i = 1 + 5, j = 5; i = i + 2; // Addition (+) j = 5 i; // Substraktion(-) i = j *(-3); // Multiplikation (*) double d = (double)(9 / 2); // Division (/) Problem: Datorn kastar fortfarande bort.5 för den beräknar först 9 / 2 = 4 och därefter sparar den resultatet i d. 9 / 2 = 4.5 Lösning b: Skriv (double) (9 / 2) 130

131 Aritmetiska Operatorer Varför räknar datorn så här? Syntaxen för operatorerna ser ut så här: uttryck0 operator uttryck1 Operatorerna är typberoende, dvs resultatet har samma typ som uttryck0 och uttryck1. I vårt fall med exemplet 9/2, dividerade datorn två heltal (int)och den typ som returnerades var int. Detta kallas för heltalsdivision. Minnesregler: int operator int = int int operator double = double 131

132 Implicit Konvertering Varför sparades 4.0 i en double? Detta hände egentligen: 0. Först beräknades 9/2 = 4 ut. 1. Eftersom 9 och 2 är heltal (int) så trodde datorn att 4 skulle vara ett heltal (int). 2. Då vi ville spara resultatet i en double konverterades 4 automatiskt från int till double. Detta kallas för implicit konvertering. 132

133 Explicit Konvertering Varför fungerade (double) (9/2)? Detta hände egentligen: 0. Först beräknades 9/2= Eftersom vi hade skrivit (double) före (9/2) talade vi om för datorn att vi ville att resultatet skulle vara i double. Detta kallas för explicit konvertering. 133

134 Input / Output (I/O) 134

135 Input / Output (I/O) Input: Inläsning från inströmmen, till exempel inmatning från tangentbordet. Output: Utskrift till utströmmen, till exempel utskrift till skärmen 135

136 Input / Output (I/O) Skriva ut text Så hur skriver man ut text i Java: - Utskrift som avslutas med ny rad: System.out.println("Hello World!"); - Utskrift som inte avslutas med ny rad: System.out.print("Hello World!"); 136

137 Input / Output (I/O) Skriva ut variabel - För att skriva ut värdet i en variabel skriver man så här: System.out.println(variabelnsNamn); - Om man vill skriva text framför variablen, skriver man så här: System.out.println("text" + variabelnsnamn); 137

138 Input / Output (I/O) Exempel public class PrintVariable // deklarera i med tilldelning int i = 5; // Skrivet ut värdet i variabeln i System.out.println(i); System.out.print("Variabelns värde:" + i); 138

139 Input / Output (I/O) Exempel public class PrintVariable // deklarera i med tilldelning int i = 5; // Skrivet ut värdet i variabeln i System.out.println(i); System.out.print("Variabelns värde:" + i); 139

140 Input / Output (I/O) Exempel public class PrintVariable i 5 // deklarera i med tilldelning int i = 5; // Skrivet ut värdet i variabeln i System.out.println(i); System.out.print("Variabelns värde:" + i); 140

141 Input / Output (I/O) Exempel public class PrintVariable i 5 // deklarera i med tilldelning int i = 5; // Skrivet ut värdet i variabeln i System.out.println(i); System.out.print("Variabelns värde:" + i); 5 141

142 Input / Output (I/O) Exempel public class PrintVariable i 5 // deklarera i med tilldelning int i = 5; // Skrivet ut värdet i variabeln i System.out.println(i); System.out.print("Variabelns värde:" + i); 5 Variablens värde: 5 142

143 Input / Output (I/O) Det är enkelt att skriva ut saker i java men hur kan vi tillåta att en användare kan skriva något till programmet? Fungerar något av det här tro? System.in.readLine(); System.in.read(); System.in.getInput(); 143

144 Input / Output (I/O) Det är enkelt att skriva ut saker i java men hur kan vi tillåta att en användare kan skriva något till programmet? Fungerar något av det här tro? System.in.readLine(); System.in.read(); System.in.getInput(); Nej, det fungerar inte. Lösning: Vi behöver använda klassen Scanner. 144

145 Input / Output (I/O) Exempel // Så här skriver man för att importera // Scanner i programmet: import java.util.scanner; public class ReadInput 145

146 Input / Output (I/O) Exempel // Så här skriver man för att importera // Scanner i programmet: import java.util.scanner; public class ReadInput // Så här skapar man en scanner: Scanner myscanner = new Scanner(System.in); 146

147 Input / Output (I/O) Exempel // Så här skriver man för att importera // klassen Scanner import java.util.scanner; public class ReadInput // Så här skapar man en Scanner: Scanner myscanner = new Scanner(System.in); Klassens namn 147

148 Input / Output (I/O) Exempel // Så här skriver man för att importera // Scanner i programmet: import java.util.scanner; public class ReadInput // Så här skapar man en Scanner: Scanner myscanner = new Scanner(System.in); Variabelns namn Klassens namn 148

149 Input / Output (I/O) Exempel // Så här skriver man för att importera // Scanner i programmet: import java.util.scanner; public class ReadInput // Så här skapar man en Scanner: Scanner myscanner = new Scanner(System.in); Variabelns namn Klassens namn Tilldelningsoperator 149

150 Input / Output (I/O) Exempel // Så här skriver man för att importera // Scanner i programmet: import java.util.scanner; public class ReadInput // Så här skapar man en Scanner: Scanner myscanner = new Scanner(System.in); Så här skriver man för att skapa en instans av klassen Scanner som läser från input-strömmen. Variabelns namn Klassens namn Tilldelningsoperator 150

151 Input / Output (I/O) Exempel import import java.util.scanner; public class ReadInput Scanner myscanner = new Scanner(System.in); // Så här läser man in ett heltal int myinteger = myscanner.nextint(); 151

152 Input / Output (I/O) Exempel import import java.util.scanner; public class ReadInput Scanner myscanner = new Scanner(System.in); int myinteger = myscanner.nextint(); // Så här läser man in ett decimaltal double mydouble = myscanner.nextdouble(); 152

153 Input / Output (I/O) Exempel import import java.util.scanner; public class ReadInput Scanner myscanner = new Scanner(System.in); int myinteger = myscanner.nextint(); double mydouble = myscanner.nextdouble(); //Så här läser man in en sträng String mystring = myscanner.next(); 153

154 Input / Output (I/O) Exempel import import java.util.scanner; public class ReadInput Scanner myscanner = new Scanner(System.in); int myinteger = myscanner.nextint(); double mydouble = myscanner.nextdouble(); String mystring = myscanner.next(); // Så här skriver man ut variablerna System.out.println("Du skrev in följande:"); System.out.println("heltal: " + myinteger); System.out.println("decimaltal: " + mydouble); System.out.println("sträng: " + mystring); 154

155 Idag: Normalt programflöde sats; sats; sats; 155

156 Nästa gång: Villkorsflöde sats; sant? falskt sats; sats; sats; sats; sats; 156

Programmering för språkteknologer II, HT2011. Rum

Programmering för språkteknologer II, HT2011. Rum Programmering för språkteknologer II, HT2011 evelina.andersson@lingfil.uu.se Rum 9-2035 http://stp.ling.uu.se/~evelina/uv/uv11/pst2/ Kursplan Mål Efter avslutad kurs skall studenten för att förtjäna betyget

Läs mer

Objektorienterad Programmering (TDDC77)

Objektorienterad Programmering (TDDC77) Objektorienterad Programmering (TDDC77) Föreläsning II: utmatning, variabler, typer Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2016 Kompilera och köra programmet under terminal 2: I Skapa Hej.java

Läs mer

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

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 Kompilera och köra programmet Objektorienterad Programmering (TDDC77) Föreläsning II: utmatning, variabler, typer Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2016 under terminal 2: I Skapa Hej.java

Läs mer

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

Kompilering och exekvering. Föreläsning 1 Objektorienterad programmering DD1332. En kompilerbar och körbar java-kod. Kompilering och exekvering Föreläsning 1 Objektorienterad programmering DD1332 Introduktion till Java Kompilering, exekvering, variabler, styrstrukturer Kompilering och exekvering Ett program måste översättas till datorns språk

Läs mer

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

Programmering med Java. Grunderna. Programspråket Java. Programmering med Java. Källkodsexempel. Java API-exempel In- och utmatning. Programmering med Java Programmering med Java Programspråket Java Källkodsexempel Källkod Java API-exempel In- och utmatning Grunderna Ann Pan panda@nada.kth.se Rum 1445, plan 4 på Nada 08-7909690 Game.java

Läs mer

(Man brukar säga att) Java är... Denna föreläsning. Kompilering av Java. Historik: Java. enkelt. baserat på C/C++ Allmänt om Java

(Man brukar säga att) Java är... Denna föreläsning. Kompilering av Java. Historik: Java. enkelt. baserat på C/C++ Allmänt om Java (Man brukar säga att) Java är... Denna föreläsning Allmänt om Java Javas datatyper, arrayer, referenssemantik Klasser Strängar enkelt baserat på C/C++ objekt-orienterat från början dynamiskt utbyggbart

Läs mer

Objektorienterad Programmering (TDDC77)

Objektorienterad Programmering (TDDC77) Objektorienterad Programmering (TDDC77) Föreläsning II: utmatning, variabler, typer Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2017 Outline Java Språket Utmatning av Sträng litteraler Variabler

Läs mer

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

Vem är vem på kursen. Objektorienterad programvaruutveckling GU (DIT011) Kursbok Cay Horstmann: Big Java 3rd edition. Institutionen för Datavetenskap Göteborgs universitet HT2009 DIT011 Vem är vem på kursen Objektorienterad programvaruutveckling GU (DIT011) Kursansvarig : Katarina Blom, tel 772 10 60 Rum: 6126 (E-huset)

Läs mer

SMD 134 Objektorienterad programmering

SMD 134 Objektorienterad programmering SMD 134 Objektorienterad programmering Dagens agenda: Typer i Java: primitiva datatyperna, referenstyper Variabler och variabeltilldelningar med primitiva typer Konstanter av de olika typerna. Heltalsräkning

Läs mer

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

732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Felsökning. Datatyper. Referenstyper. Metoder / funktioner 732G11 Linköpings universitet 2011-01-21 1 2 3 4 5 6 Skapa program Kompilera: Källkod Kompilator bytekod Köra: Bytekod Virtuell maskin Ett riktigt program Hej.java class Hej { public static void main (

Läs mer

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

Datatyper och kontrollstrukturer. Skansholm: Kapitel 2) De åtta primitiva typerna. Typ Innehåll Defaultvärde Storlek De åtta primitiva typerna Java, datatyper, kontrollstrukturer Skansholm: Kapitel 2) Uppsala Universitet 11 mars 2005 Typ Innehåll Defaultvärde Storlek boolean true, false false 1 bit char Tecken \u000

Läs mer

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

Objektorienterad programmering i Java I. Uppgifter: 2 Beräknad tid: 5-8 timmar (OBS! Endast ett labbtillfälle) Att läsa: kapitel 5 6 Laboration 2 Objektorienterad programmering i Java I Uppgifter: 2 Beräknad tid: 5-8 timmar (OBS! Endast ett labbtillfälle) Att läsa: kapitel 5 6 Syfte: Att kunna använda sig av olika villkors- och kontrollflödeskonstruktioner

Läs mer

F4. programmeringsteknik och Matlab

F4. programmeringsteknik och Matlab 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

Läs mer

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

Programmering i C++ En manual för kursen Datavetenskaplig introduktionskurs 5p Programmering i C++ En manual för kursen Datavetenskaplig introduktionskurs 5p Skriven av Michael Andersson Introduktion Programmering I högnivåspråk fokuserar på själv problemet (algoritmen) istället

Läs mer

F2 Datatyper och variabler. ID1004 Objektorienterad programmering Fredrik Kilander

F2 Datatyper och variabler. ID1004 Objektorienterad programmering Fredrik Kilander F2 Datatyper och variabler ID1004 Objektorienterad programmering Fredrik Kilander fki@kth.se Datatyper Java är ett starkt typat språk Varje slags data har en datatyp Datatyp Javasyntax Exempel Teckensträng

Läs mer

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

ITK:P1 Föreläsning 1. Programmering. Programmeringsspråket Java. Stark typning Explicit typning Strukturerat Hög säkerhet ITK:P1 Föreläsning 1 Att programmera i språket Java DSV Peter Mozelius Programmering Olika typer av programmering som t ex: o Imperativ programmering (C, Pascal m fl) o Funktionell programmering (Lisp,

Läs mer

Föreläsning 1 & 2 INTRODUKTION

Föreläsning 1 & 2 INTRODUKTION Föreläsning 1 & 2 INTRODUKTION Denna föreläsning Vad händer under kursen? praktisk information Kursens mål vad är programmering? Skriva små program i programspråket Java Skriva program som använder färdiga

Läs mer

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

Programstruktur och terminologi. Programmet producerar följande utskrift i terminalfönstret: Ett Javaprogram består av en eller flera klasser // En första version av BankKonto-klassen class BankKonto { private String namn; private long nr; private double saldo; private double ränta; // Klassen TestaBankKonto // Klassens uppgift är att skapa

Läs mer

Föreläsning 1 & 2 INTRODUKTION

Föreläsning 1 & 2 INTRODUKTION Föreläsning 1 & 2 INTRODUKTION Denna föreläsning Vad händer under kursen? praktisk information Kursens mål vad är programmering? Skriva små program i programspråket Java Skriva program som använder färdiga

Läs mer

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

Idag. Javas datatyper, arrayer, referenssemantik. Arv, polymorfi, typregler, typkonvertering. Tänker inte säga nåt om det som är likadant som i C. Idag Javas datatyper, arrayer, referenssemantik Klasser Arv, polymorfi, typregler, typkonvertering Strängar Tänker inte säga nåt om det som är likadant som i C. Objectorienterad programmering Sida 1 Ett

Läs mer

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

EDAA20 Programmering och databaser. Mål komprimerat se kursplanen för detaljer. Checklista. Föreläsning 1-2 Innehåll. Programmering. EDAA20 Programmering och databaser Mål komprimerat se kursplanen för detaljer Läsperiod 1 7.5 hp anna.aelsson@cs.lth.se http://cs.lth.se/edaa20 Mer information finns på kursens webbsida samt på det utdelade

Läs mer

OOP Objekt-orienterad programmering

OOP Objekt-orienterad programmering OOP Objekt-orienterad programmering OOP F1:1 Delkursansvarig Epost Kursens webbsidor sm@fc.dsv.su.se http://people.dsv.su.se/~sm/oop/ Föreläsning 1 Introduktion till kursen OOP Vad är Java? Ett första

Läs mer

Programmering A. Johan Eliasson johane@cs.umu.se

Programmering A. Johan Eliasson johane@cs.umu.se Programmering A Johan Eliasson johane@cs.umu.se 1 Jag Undervisar mest grundläggande programmering på Institutionen för datavetensakap Applikationsutveckling för iphone Applikationsutveckling i Java Datastrukturer

Läs mer

Objektorienterad programmering i Java

Objektorienterad programmering i Java bild 1 Objektorienterad programmering i Java Föreläsning 1 Kapitel 1-3 i kursboken Java Software Solutions bild 2 Läsanvisningar Kapitel 1 är en repetition av det ni förväntas kunna sedan tidigare. Det

Läs mer

TDIU01 - Programmering i C++, grundkurs

TDIU01 - Programmering i C++, grundkurs TDIU01 - Programmering i C++, grundkurs Sammanfattning period 1 Eric Elfving Institutionen för datavetenskap 1 oktober 2013 Översikt Ett C++-programs uppbyggnad Variabler Datatyper Satser Uttryck Funktioner

Läs mer

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

Lektion Java Grunder. Javas historia. Programmeringsspråket Java. Skillnaderna mellan Java och C++ JVM (Javas Virtuella Maskin) Lektion Java Grunder Javas historia Ursprungligen utvecklades Java (1991) för att användas i olika typer av konsumentelektronik (mikrovågsugnar, videoapparater) av programmerare på Sun. Språket kallades

Läs mer

Anteckningar 1: Grundläggande saker

Anteckningar 1: Grundläggande saker UPPSALA UNIVERSITET Institutionen för lingvistik och filologi Mats Dahllöf http://stp.ling.uu.se/ matsd/uv/uv11/pst1/ Programmering för språkteknologer I Anteckningar 1: Grundläggande saker 1 Programmering

Läs mer

Hej Då, Karel! Programmering. Vårt första Javaprogram. hh.se/db2004. Java. Grundtyper, variabler och arrayer

Hej Då, Karel! Programmering. Vårt första Javaprogram. hh.se/db2004. Java. Grundtyper, variabler och arrayer Programmering hh.se/db2004 Föreläsning 3: Java. Grundtyper, variabler och arrayer Hej Då, Karel! Verónica Gaspes www2.hh.se/staff/vero www2.hh.se/staff/vero/programmering Center for Research on Embedded

Läs mer

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

TDDC30. Kursledning Kursledare: Jonas Lindgren. Labassistent: Jonas Lindgren Labassistent: Niklas Holma Labassistent: Erik Nilsson TDDC30 Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 1 Jonas Lindgren, Institutionen för Datavetenskap, LiU På denna föreläsning: Kursinformation Imperativa delen av

Läs mer

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

Dagens program. Programmeringsteknik och Matlab. Viktiga datum. Ett första exempel. Programmall, vad behöver vi i ett javaprogram? Programmeringsteknik och Matlab Övning 2 Dagens program Övningsgrupp 2 (Sal Q22/E32) Johannes Hjorth hjorth@nada.kth.se Rum 4538 på plan 5 i D-huset 08-790 69 02 Kurshemsida: http://www.nada.kth.se/kurser/kth/2d1312

Läs mer

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

Föreläsning 2 Programmeringsteknik och C DD1316. Mikael Djurfeldt Föreläsning 2 Programmeringsteknik och C DD1316 Mikael Djurfeldt Föreläsning 2 Programmeringsteknik och C Python introduktion Utskrift Inläsning Variabler Datatyp Aritmetiska operatorer Omvandling

Läs mer

Java: Utvecklingsverktyg, datatyper, kontrollstrukturer

Java: Utvecklingsverktyg, datatyper, kontrollstrukturer Java: Utvecklingsverktyg, datatyper, kontrollstrukturer Sven-Olof Nyström Uppsala Universitet 13 juni 2005 1 Utvecklingsverktyg för Java Vi rekommenderar Suns utvecklingsverktyg (SDK, tidigare JDK), se

Läs mer

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.

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. EDAA20 Programmering och databaser Mål komprimerat se kursplanen för detaljer Läsperiod 1 7.5 hp anna.axelsson@cs.lth.se http://cs.lth.se/edaa20 Mer information finns på kursens webbsida samt på det utdelade

Läs mer

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

Introduktion till Datalogi DD1339. Föreläsning 2 22 sept 2014 Introduktion till Datalogi DD1339 Föreläsning 2 22 sept 2014 Namn Fält1 Fält2 Fält3 Metod1 Metod2 Metod3 Metod4 public class { public class { Åtkomst, public betyder fullt tillgänglig utifrån public

Läs mer

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

TDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 1 Jonas Lindgren, Institutionen för Datavetenskap, LiU TDDC30 Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 1 Jonas Lindgren, Institutionen för Datavetenskap, LiU På denna föreläsning: Kursinformation Imperativa delen av

Läs mer

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

Mer källkod. Styrstrukturer Val Slingor Operatorer Källkodsexempel med minne. Erik Forslin. Rum 1445, plan 4 på Nada Mer källkod Styrstrukturer Val Slingor Operatorer Källkodsexempel med minne Erik Forslin efo@nada.kth.se Rum 1445, plan 4 på Nada 08-7909690 1 Styrstrukturer i Java En styrstruktur är något som påverkar

Läs mer

DD1314 Programmeringsteknik

DD1314 Programmeringsteknik Skolan för Datavetenskap och kommunikation DD1314 Programmeringsteknik Föreläsning 1 o print o variabler o reserverade ord o input o kommentarer o beräkningar o datatyper o if-satser Kursinformation Programmering:

Läs mer

TDDC77 Objektorienterad Programmering

TDDC77 Objektorienterad Programmering TDDC77 Objektorienterad Programmering Föreläsning 2 Sahand Sadjadee IDA, Linköpings Universitet Hösttermin, 2018 Outline Emacs Introduktion till Objektorienterad Programmering Introduktion till Java Variabler

Läs mer

Kompilera och exekvera Javakod

Kompilera och exekvera Javakod Kompilera och exekvera Javakod Förberedelser För att kunna göra dessa övningar måste du ha installerat Java Development Kit, JDK, som bland annat innehåller Java kompilatorn, javac. Hur du installerar

Läs mer

2D1311 Programmeringsteknik för Bio1 och Bio2, vt 2003 Fiktivt prov På flervalsfrågorna är endast ett svar rätt om inget annat anges i frågan! Det rik

2D1311 Programmeringsteknik för Bio1 och Bio2, vt 2003 Fiktivt prov På flervalsfrågorna är endast ett svar rätt om inget annat anges i frågan! Det rik 2D1311 Programmeringsteknik för Bio1 och Bio2, vt 2003 Fiktivt prov På flervalsfrågorna är endast ett svar rätt om inget annat anges i frågan! Det riktiga provet tar 45 minuter (en lektionstimme) och det

Läs mer

Övning2. Variabler. Data typer

Övning2. Variabler. Data typer Vahid 28 okt 2002 prgk02 Övning2 -Repetition -Variabler -Primitiva typer (+ boolean) -Operatörer +, ++, --, -Typ konvertering -Wrapper klasser -Jämförelse operatörer,(==, =, ,!=,!) -String hur man

Läs mer

TDDC77 Objektorienterad Programmering

TDDC77 Objektorienterad Programmering TDDC77 Objektorienterad Programmering Föreläsning 3 Sahand Sadjadee IDA, Linköpings Universitet Hösttermin 2018 Outline Operatorer Java Standard Library Inmatning Operatorer operatorer En operator är en

Läs mer

Tentamen OOP 2015-03-14

Tentamen OOP 2015-03-14 Tentamen OOP 2015-03-14 Anvisningar Fråga 1 och 2 besvaras på det särskilt utdelade formuläret. Du får gärna skriva på bägge sidorna av svarsbladen, men påbörja varje uppgift på ett nytt blad. Vid inlämning

Läs mer

Föreläsning 1-2 innehåll

Föreläsning 1-2 innehåll Föreläsning 1-2 innehåll Om kursen Kursens mål och innehåll Praktisk information om kursen Programmering program, algoritmer variabler, datatyper och tilldelningssatser läsa in värden från tangentbordet,

Läs mer

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

Grundkurs i programmering, 6 hp (725G61) Dugga 2 tillfälle 2 AID-nummer: Datum: 2014-12-18 Kurskod: 725G61 Provkod: LAB1 Grundkurs i programmering, 6 hp (725G61) Dugga 2 tillfälle 2 Skrivningstid: 2014-12-18 klockan 8.00-10.00. Hjälpmedel: Inga. För varje fråga

Läs mer

[] Arrayer = Indexerad variabel

[] Arrayer = Indexerad variabel [] Arrayer = Indexerad variabel Lagra många värden i en variabel Jmfr inom matematiken, variabler x 0, x 1, x 2, I detta dokument tas upp hur man skapar och hanterar sådana variabler i java. Dessa kallas

Läs mer

Föreläsning 5&6 LOGISKA VARIABLER; IMPLEMENTERA KLASSER; MER ALGORITMER

Föreläsning 5&6 LOGISKA VARIABLER; IMPLEMENTERA KLASSER; MER ALGORITMER Föreläsning 5&6 LOGISKA VARIABLER; IMPLEMENTERA KLASSER; MER ALGORITMER Logiska uttryck datatypen boolean Logiska uttryck kan ha två möjliga värden, true eller false. Variabler av typen boolean kan tilldelas

Läs mer

Grundläggande programmering med C# 7,5 högskolepoäng

Grundläggande programmering med C# 7,5 högskolepoäng Grundläggande programmering med C# 7,5 högskolepoäng Provmoment: TEN1 Ladokkod: NGC011 Tentamen ges för: Omtentamen DE13, IMIT13 och SYST13 samt öppen för alla (Ifylles av student) (Ifylles av student)

Läs mer

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

DD1310/DD1314/DA3009 Programmeringsteknik LÄRANDEMÅL... Vilka läser kursen? ...FLER LÄRANDEMÅL. Föreläsning 1 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

Läs mer

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 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 10 Datalogi 1 DA2001 python introduktion Variabler Datatyp Aritmetiska operatorer av typer Reserverade ord logiska operatorer If-sats kommentarer på skärmen print( Hej ) print( Hur är det?

Läs mer

Objektorienterad Programmering (TDDC77)

Objektorienterad Programmering (TDDC77) Objektorienterad Programmering (TDDC77) Föreläsning V: arrayer, metoder, räckvidd (scope), eclipse Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2016 Outline Arrayer Metoder Räckvidd (Scope) Eclipse

Läs mer

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

Att skriva till och läsa från terminalfönstret Att skriva till och läsa från terminalfönstret Oftast används grafiska komponenter i Java för att kommunicera med användaren (användargränssnitt), men det finns objekt i standardbiblioteken för de tillfällen

Läs mer

Grundläggande programmering DVG A08 & ISG A04. Allmän information. Å vem är jag då. Karlstads Universitet, Johan Öfverberg 1

Grundläggande programmering DVG A08 & ISG A04. Allmän information. Å vem är jag då. Karlstads Universitet, Johan Öfverberg 1 Grundläggande programmering DVG A08 & ISG A04 Allmän information Grupp C och D slås ihop Schemat är ändrat Kurs i programmering utan förkunskaper Hjälp oss med detta Lita inte på era klasskamrater De ställer

Läs mer

Föreläsning 2 Objektorienterad programmering DD1332. Typomvandling

Föreläsning 2 Objektorienterad programmering DD1332. Typomvandling metoder Föreläsning 2 Objektorienterad programmering DD1332 Array [modifierare] String metodnamn (String parameter) Returtyp (utdata typ) i detta fall String Indata typ i detta fall String 1 De får man

Läs mer

Användarhandledning Version 1.2

Användarhandledning Version 1.2 Användarhandledning Version 1.2 Innehåll Bakgrund... 2 Börja programmera i Xtat... 3 Allmänna tips... 3 Grunderna... 3 Kommentarer i språket... 4 Variabler... 4 Matematik... 5 Arrayer... 5 på skärmen...

Läs mer

TDDC77 Objektorienterad Programmering

TDDC77 Objektorienterad Programmering TDDC77 Objektorienterad Programmering Föreläsning 5 Sahand Sadjadee IDA, Linköpings Universitet Hösttermin 2018 Outline Arrayer Metoder Räckvidd och Livslängd Arrayer Vända om inlästa värdena Vända om

Läs mer

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

Föreläsning 2 Programmeringsteknik och C DD1316. Programmering. Programspråk Föreläsning 2 steknik och C DD1316 python introduktion Variabler Datatyp Aritmetiska operatorer av typer Reserverade ord logiska operatorer If-sats kommentarer betyder att instruera en dator Ett program

Läs mer

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

Programmera i C Varför programmera i C när det finns språk som Simula och Pascal?? Programmera i C Varför programmera i C när det finns språk som Simula och Pascal?? C är ett språk på relativt låg nivå vilket gör det möjligt att konstruera effektiva kompilatorer, samt att komma nära

Läs mer

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

Dagens föreläsning. Repetition. Repetition - Programmering i C. Repetition - Vad C består av. Repetition Ett första C-program Dagens föreläsning Programmeringsteknik för Ingenjörer VT05 Föreläsning 3-4 Repetition Datatyper Uttryck Operatorer Satser Algoritmer Programmeringsteknik VT05 2 Repetition Repetition - Programmering i

Läs mer

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

1/15/2013. DD1310/DD1314/DA3009 Programmeringsteknik. Lärandemål... Vilka läser kursen? ...fler lärandemål VARFÖR? Föreläsning 1 Skolan för Datavetenskap och kommunikation DD1310/DD1314/DA3009 Programmeringsteknik Föreläsning 1 Kursinfo Diagnostiskt prov Python-intro: print variabler reserverade ord input kommentarer beräkningar

Läs mer

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

Föreläsning 2 Programmeringsteknik DD1310. Programmering. Programspråk Föreläsning 2 steknik DD1310 python introduktion Variabler Datatyp Aritmetiska operatorer av typer Reserverade ord logiska operatorer If-sats kommentarer funktioner betyder att instruera en dator Ett program

Läs mer

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

1 Datorn som miniräknare. 1.1 Räkneoperationer. 1.2 Variabler 1 Datorn som miniräknare I detta avsnitt tas upp hur man kan skriva program som utför enkla räkneoperationer och skriver resultat på skärmen. Syftet är i huvudsak att se hur flera satser kan bygga upp

Läs mer

TDDD78, TDDE30, 729A Introduktion till Java -- för Pythonprogrammerare

TDDD78, TDDE30, 729A Introduktion till Java -- för Pythonprogrammerare TDDD78, TDDE30, 729A85 jonas.kvarnstrom@liu.se 2018 Introduktion till Java -- för Pythonprogrammerare Historia: C, C++ 3 Historia: Oak 1 4 1990: Sun Microsystems påbörjade projekt StarSeven Avancerad

Läs mer

Tentamen. Datalogi I, grundkurs med Java 10p, 2D4112, Lördagen den 30 november 2002 kl , salar E33, E34

Tentamen. Datalogi I, grundkurs med Java 10p, 2D4112, Lördagen den 30 november 2002 kl , salar E33, E34 Tentamen Datalogi I, grundkurs med Java 10p, 2D4112, 2002-2003 Lördagen den 30 november 2002 kl 9.00 14.00, salar E33, E34 Inga hjälpmedel 30 poäng ger säkert godkänt, 40 poäng ger betyg 4 50 poäng ger

Läs mer

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

Föreläsning 2. Täcker material från lektion 1, 2, 3 och 4: (22 januari 2016 F2.1 ) Föreläsning 2 Täcker material från lektion 1, 2, 3 och 4: Datatyper Aritmetik Tecken och strängar Klasser, Objekt Metoder Villkor, villkorssatser och iterationer main-metoden Kodstandard

Läs mer

TDDE10 TDDE11, 725G90. Gemensam kurswebsida på:

TDDE10 TDDE11, 725G90. Gemensam kurswebsida på: TDDE10 TDDE11, 725G90 Objektorienterad programmering i Java, Föreläsning 1 Erik Nilsson, Institutionen för Datavetenskap, LiU På denna föreläsning: Kursinformation Imperativa delen av Java Hello World!

Läs mer

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

Föreläsning 2. Variabler, tilldelning och kodblock{} if-satsen Logiska operatorer Andra operatorer Att programmera Föreläsning 2 Variabler, tilldelning och kodblock if-satsen Logiska operatorer Andra operatorer Att programmera Variabler Det är i variabler som all data (information) lagras. Genom att ändra värde på

Läs mer

System.out.println("Jaså du har "+ antalhusdjur+ " husdjur"); if ( antalhusdjur > 5 ) System.out.println("Oj det var många);

System.out.println(Jaså du har + antalhusdjur+  husdjur); if ( antalhusdjur > 5 ) System.out.println(Oj det var många); 1 Villkor och styrsatser I de program vi sett tidigare har programkörning inneburit att sats efter sats utförts i den ordning de skrivits i källkoden. Vi har inte kunna ändra programmets uppförande beroende

Läs mer

Klassdeklaration. Metoddeklaration. Parameteröverföring

Klassdeklaration. Metoddeklaration. Parameteröverföring Syntax: Class Declaration Modifier Class Body Basic Class Member Klassdeklaration class Class Member Field Declaration Constructor Declaration Method Declaration Identifier Class Associations Motsvarar

Läs mer

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

Föreläsning 3: Typomvandling, villkor och val, samt textsträngar Föreläsning 3: Typomvandling, villkor och val, samt textsträngar Camilla Kirkegaard camilla.kirkegaard@liu.se Linköpings universitet Sweden October 14, 2013 1 Innehåll n n n n n Repetition Typomvandlingar

Läs mer

Laboration 1. "kompilera"-ikonen "exekvera"-ikonen

Laboration 1. kompilera-ikonen exekvera-ikonen Programmerade system I1 Syfte Laboration 1. Syftet med denna laboration är dels att göra dej bekant med de verktyg som kan vara aktuella i programmeringsarbetet, dels ge en första inblick i att skriva

Läs mer

Tentamen ID1004 Objektorienterad programmering October 29, 2013

Tentamen ID1004 Objektorienterad programmering October 29, 2013 Tentamen för ID1004 Objektorienterad programmering (vilande kurs), 29 oktober 2013, 9-13 Denna tentamen examinerar 3.5 högskolepoäng av kursen. Inga hjälpmedel är tillåtna. Tentamen består av tre sektioner.

Läs mer

TENTAMEN OOP

TENTAMEN OOP TENTAMEN OOP 2014-03-15 ANVISNINGAR Påbörja varje ny uppgift på nytt blad. Skriv endast på ena sidan av bladen. Skriv tydligt - oläsbara svar beaktas ej. BETYGSÄTTNING Max antal poäng är 30. För att bli

Läs mer

Innehållsförteckning

Innehållsförteckning Innehållsförteckning Ämne Sida Program Hur ska man lära sig programmering med Java? 11 Kapitel 1 Introduktion till programmering 13 1.1 Vad är programmering? 14 1.2 Vad är en algoritm? 16 1.3 Olika sätt

Läs mer

"if"-satsen. Inledande programmering med C# (1DV402)

if-satsen. Inledande programmering med C# (1DV402) "if"-satsen Upphovsrätt för detta verk Detta verk är framtaget i anslutning till kursen Inledande programmering med C# vid Linnéuniversitetet. Du får använda detta verk så här: Allt innehåll i verket if-satsen

Läs mer

Föreläsningsmaterial (Syntax och variabler)

Föreläsningsmaterial (Syntax och variabler) Föreläsningsmaterial (Syntax och variabler) Scenario Ett företag inom gruvindustrin som tillverkar järnpellets upplever en ojämnhet i produktionskvaliteten. Problemet yttrar sig genom att pelletskulorna

Läs mer

Lite mer om Javas stöd för fält. Programmering. Exempel: vad är det största talet? hh.se/db2004. Fält samt Input/Output

Lite mer om Javas stöd för fält. Programmering. Exempel: vad är det största talet? hh.se/db2004. Fält samt Input/Output Programmering hh.se/db2004 Föreläsning 5: Fält samt Input/Output Verónica Gaspes www2.hh.se/staff/vero www2.hh.se/staff/vero/programmering Lite mer om Javas stöd för fält Hur många element har ett fält?

Läs mer

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

Föreläsning 2 Programmeringsteknik DD1310. Programmering. Programspråk Föreläsning 2 steknik DD1310 Python introduktion Variabler Datatyper Aritmetiska operatorer av typer Reserverade ord logiska operatorer If-sats kommentarer betyder att instruera en dator Ett program är

Läs mer

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

Inledande programmering med C# (1DV402) 27+15=42 1 (22) 27+15=42 1 (22) Variabler Upphovsrätt för detta verk Detta verk är framtaget i anslutning till kursen Inledande programmering med C# vid Linnéuniversitetet. Du får använda detta verk så här: Allt innehåll

Läs mer

Grundläggande programmering, STS 1, VT Sven Sandberg. Föreläsning 12

Grundläggande programmering, STS 1, VT Sven Sandberg. Föreläsning 12 Grundläggande programmering, STS 1, VT 2007. Sven Sandberg Föreläsning 12 I torsdags: Klassen TelefonKostnad Exemplifierar objektorienterad design, metoder, konstruktorer static Standardklassen Math Matematiska

Läs mer

Outline. I Vi kan lätt göra samma sak för fyra variabler... I Hur gör vi för 400 inlästa värden? I Ofta behöver man flera likadana variabler

Outline. I Vi kan lätt göra samma sak för fyra variabler... I Hur gör vi för 400 inlästa värden? I Ofta behöver man flera likadana variabler Outline Objektorienterad Programmering (TDDC77) Föreläsning V: arrayer, metoder, räckvidd (scope), eclipse Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2016 Vända om inlästa värden Vända om inlästa

Läs mer

Klasser i Java kan ha metoder och egenskaper. Metoder beskriver funktioner som klassen kan utföra. Egenskaper beskriver innehållet i klassen.

Klasser i Java kan ha metoder och egenskaper. Metoder beskriver funktioner som klassen kan utföra. Egenskaper beskriver innehållet i klassen. TT Kapitel 3. Husdjur & Fisk Javaklasser Translation by Leif Lourié Java program består av klasser som beskriver saker (objekt) som finns på riktigt. Även om det finns många olika sätt att skriva program

Läs mer

JAVAUTVECKLING LEKTION 7

JAVAUTVECKLING LEKTION 7 JAVAUTVECKLING LEKTION 7 2016 Mahmud Al Hakim mahmud.al.hakim@nackademin.se www.alhakim.se AGENDA Olika språkversioner (Klassen Locale) Utskrift i kommandofönster Inläsning via kommandofönster Standardklassen

Läs mer

TENTAMEN OOP

TENTAMEN OOP TENTAMEN OOP 2013-08-08 ANVISNINGAR Påbörja varje ny uppgift på nytt blad. Skriv endast på ena sidan av bladen. Skriv tydligt - oläsbara svar beaktas ej. BETYGSÄTTNING Max antal poäng är 30. För att bli

Läs mer

Typkonvertering. Java versus C

Typkonvertering. Java versus C Typer Objektorienterad programmering E Typkonvertering Typkonvertering Satser: while, for, if Objekt Föreläsning 2 Implicit konvertering Antag att vi i ett program deklarerat int n=3; double x = 5.2; Då

Läs mer

Objektorienterad programmering i Java I

Objektorienterad programmering i Java I Laboration 0 Objektorienterad programmering i Java I Uppgifter: 2 Beräknad tid: ca 2 3 timmar Att läsa: sidan 45 52 Syfte: Att ladda hem och installera utvecklingsmiljön Att skriva ditt första Javaprogram

Läs mer

Undervisning. Examination

Undervisning. Examination Kursinfo Objektorienterad programmering Undervisning Föreläsning 1 Kursinformation Allmänt om programmering Java - några inledande exampel Grundbegrepp: variabler, uttryck, satser, typer. Föreläsningar

Läs mer

Chapter 3: Using Classes and Objects

Chapter 3: Using Classes and Objects Chapter 3: Using Classes and Objects I dessa uppgifter kommer du att lära dig om hur man använder klasser och metoder från java biblioteket. Du kommer inte att förstå allt som händer bakom metod anrop

Läs mer

Personal Objektorienterad programmeringsmetodik 5DV081 5DV109

Personal Objektorienterad programmeringsmetodik 5DV081 5DV109 Personal Objektorienterad programmeringsmetodik 5DV081 5DV109 VT-10 Lärare Johan Eliasson (johane@cs.umu.se) Handledare Thomas Johansson Mikael Öhman Lucas Lindström 1 2 Här sitter vi MIT-huset våning

Läs mer

Föreläsning 2 sept 05 (Onsdag v 36). DD Chapter 2.

Föreläsning 2 sept 05 (Onsdag v 36). DD Chapter 2. Föreläsning 2 sept 05 (Onsdag v 36). DD Chapter 2. Hur vi jobbar med ett program. 1. Vad vi skriver (med hjälp av redigeringsprogrammet Emacs) på datorn: // Fig. 2.1: Welcome1.java // A first program in

Läs mer

Undervisning. Examination

Undervisning. Examination Kursinfo Objektorienterad programmering Undervisning Föreläsning 1 Kursinformation Allmänt om programmering Java - några inledande exampel Grundbegrepp: variabler, uttryck, satser, typer. Föreläsningar

Läs mer

Design av interaktiv multimedia. Läs i förväg om det som övningarna kommer att beröra. Träna hemma både före och efter övningarna.

Design av interaktiv multimedia. Läs i förväg om det som övningarna kommer att beröra. Träna hemma både före och efter övningarna. Använd olika lager. Döp lagren! Organisera era bibliotek! Design av interaktiv multimedia Ge era symboler instansnamn för att hitta dem med AS. Nytt för denna kurs: Ingen ActionScript-kod i.fla-filen!

Läs mer

1 Uppgift 1. a) Skapar ett Company-objekt med hjälp av den överlagrade konstruktorn. Du kan själv välja värden på instansvariablerna.

1 Uppgift 1. a) Skapar ett Company-objekt med hjälp av den överlagrade konstruktorn. Du kan själv välja värden på instansvariablerna. 1 Uppgift 1 Klassen Company Banken FinanceTrust som tidigare bara haft privatpersoner som kunder vill nu bygga ut sitt datasystem så att även företag kan registreras som kunder. Skriv klassen Company som

Läs mer

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

732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Strukturdiagram. Styra. Algoritmer. Val 732G11 Linköpings universitet 2011-01-26 1 2 3 4 Program recept 1 spaghetti = 100; 2 salt = 1; 3 olja = 5; 4 köttbullar = 8; 5 ketchup = 0,5; 6 koka(salt, spaghetti); 7 micra(köttbullar); 8 Om(micron ==

Läs mer

Tentamen , Introduktion till Java, dtaa98, dtea53

Tentamen , Introduktion till Java, dtaa98, dtea53 Mittuniversitetet 2007-09-01 Institutionen för informationsteknologi och medier Sid:1(3) dtaa98, dtea53 Martin Kjellqvist; Linda Karlsson, Ulf Reiman Lösningsansatser Tentamen 2007-09-01, Introduktion

Läs mer

Programmering, grundkurs, 8.0 hp, Elektro, KTH, hösten 2010. Programmering: att instruera en maskin att utföra en uppgift, kräver olika språk:

Programmering, grundkurs, 8.0 hp, Elektro, KTH, hösten 2010. Programmering: att instruera en maskin att utföra en uppgift, kräver olika språk: Föreläsning 1 OH: Övergripande information Programmering: att instruera en maskin att utföra en uppgift, kräver olika språk: * maskinspråk = ettor och nollor, kan bara en maskin förstå. * programmeringsspråk

Läs mer

OBS! All teori i detta och följande dokument kompletteras med genomgångar på lektionerna. Så det är viktigt att närvara och göra egna anteckningar.

OBS! All teori i detta och följande dokument kompletteras med genomgångar på lektionerna. Så det är viktigt att närvara och göra egna anteckningar. Värmdö Gymnasium Programmering A 110123 Lektion C1 Grunder Att programmera handlar mycket om att lära sig att analysera det problem eller den funktion man vill att programmet ska ha, och översätta det

Läs mer

OOP Objekt-orienterad programmering

OOP Objekt-orienterad programmering OOP F2:1 OOP Objekt-orienterad programmering Föreläsning 2 Deklaration och tilldelning Programsatser Tilldelning Input/Output Selektion Deklaration och tilldelning OOP F2:2 int x; double d; char ch; boolean

Läs mer

Föreläsning 3-4 Innehåll

Föreläsning 3-4 Innehåll Föreläsning 3-4 Innehåll Skriva egna metoder Logiska uttryck Algoritm för att beräkna min och max Vektorer Datavetenskap (LTH) Föreläsning 3-4 HT 2017 1 / 36 Diskutera Vad gör programmet programmet? Föreslå

Läs mer

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

Läsanvisning: Dessa OH bilder samt kap 1-3 f1pt F 2 Läsanvisning: Dessa OH bilder samt kap 1-3! typer, variabler och tilldelning! primitiva typer, fördefinierade primitiva typer! uttryck, operatorer, prioritet, typomvandling,! Javas API, klassen

Läs mer