24
1 Övning2 programmeringsteknik och Matlab 2D1312/ 2D1305 Kompilering, exekvering, variabler, styrstrukturer

Övning2 programmeringsteknik och Matlab 2D1312/ 2D1305

Embed Size (px)

DESCRIPTION

Övning2 programmeringsteknik och Matlab 2D1312/ 2D1305. Kompilering, exekvering, variabler, styrstrukturer. En körbar java-kod. class ProgEtt { public static void main(String[] args ){ System.out.println( ” java är enkel ” ); } }. Kompileringsfel. - PowerPoint PPT Presentation

Citation preview

Page 1: Övning2  programmeringsteknik och Matlab 2D1312/ 2D1305

1

Övning2 programmeringsteknik och

Matlab 2D1312/ 2D1305Kompilering, exekvering, variabler, styrstrukturer

Page 2: Övning2  programmeringsteknik och Matlab 2D1312/ 2D1305

2

En körbar java-kod

class ProgEtt{ public static void main(String[] args){ System.out.println(”java är enkel”); }}

Page 3: Övning2  programmeringsteknik och Matlab 2D1312/ 2D1305

3

Kompileringsfel

Följande program ger följande kompileringsfel

class ProgEtt{ public static void main(String[] args){ String mening=”java är enkel”; System.out.println(mining); }}

ProgEtt.java:4: cannot find symbolsymbol : variable mininglocation: class ProgEtt

System.out.println(mining); ^

1 error

Page 4: Övning2  programmeringsteknik och Matlab 2D1312/ 2D1305

4

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.

Page 5: Övning2  programmeringsteknik och Matlab 2D1312/ 2D1305

5

Primitiva datatyper Klasser

byte

short

int

long

double

float

char

boolean

String

Scanner

System

Integer

Double

Boolean

Datatyper

Page 6: Övning2  programmeringsteknik och Matlab 2D1312/ 2D1305

6

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 efteråt

Page 7: Övning2  programmeringsteknik och Matlab 2D1312/ 2D1305

7

Reserverade ord• Följande ord är reserverad och får

(ska) inte användas som identifierare.

abstractbooleanbreakbyte(byvalue)case(cast)catchcharclass(const)continue

defaultdodoubleelseextendsfalsefinalfinallyfloatfor(future)(generic)

(goto)ifimplementsimport(inner)instanceofintinterfacelongnativenewnull

(operator)(outer)packageprivateprotectedpublic(rest)returnshortstaticsuperswitch

synchronizedthisthrowthrowstransienttruetry(var)voidvolatilewhile

Page 8: Övning2  programmeringsteknik och Matlab 2D1312/ 2D1305

8

Inläsning från tangentbord

import java.util.Scanner;

class FintNamn{ public static void main(String[] args){ Scanner tgb = new Scanner(System.in); System.out.print(”Vad heter du? ”); String namnet = tgb.nextLine(); System.out.println(namnet +” är ett fint namn”);

}}

Page 9: Övning2  programmeringsteknik och Matlab 2D1312/ 2D1305

9

+ x+y += x+=2, x+=y

- y-x -= x-=3, x-=y

* x*y ! !isEmpty

/ x/y *= x*=2, x*=y

++ x++ eller ++x /= x/=2, x/=y

-- y-- eller --y > x>y, x>10

% x%y < x<y, x<5

== x==y >= x>=y, x>=4

!= x!=y <= x<=y, x<=4

Op Exempel Op Exempel

Operatorer

Page 10: Övning2  programmeringsteknik och Matlab 2D1312/ 2D1305

10

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

Page 11: Övning2  programmeringsteknik och Matlab 2D1312/ 2D1305

11

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:-

Page 12: Övning2  programmeringsteknik och Matlab 2D1312/ 2D1305

12

modell

Kolla om bokPris>500

Skriv ut ”dyr bok, ingen affär”

Kod efter if-satsen ...

falskt

sant

Page 13: Övning2  programmeringsteknik och Matlab 2D1312/ 2D1305

13

if-else

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”

Page 14: Övning2  programmeringsteknik och Matlab 2D1312/ 2D1305

14

modell

bokPris>500

System.out.println(”dyr…”);

Kod efter if-else...

falskt

sant System.out.println(”billig…”);

Page 15: Övning2  programmeringsteknik och Matlab 2D1312/ 2D1305

15

Slinga (loop)

• Slingor eller loop används då man vill en sak ska upprepas ett antal gånger.

• I java finns det for-slingor och while-slingor för detta ändamål

Page 16: Övning2  programmeringsteknik och Matlab 2D1312/ 2D1305

16

for-sats består av följande delar1.for2.(A;B;C)A är oftast deklaraton och initiering av veriabelB är ett villkor-sats (Condition)C oftast är en stegning-sats3. uttryck (statement)

For-sats

for ( int i=0 ; i< 10; i++) {

System.out.println(”Java är enkel”);}

Page 17: Övning2  programmeringsteknik och Matlab 2D1312/ 2D1305

17

while-sats består av följande delar:1. while2. Villkor-sats (condition)3. uttryck (statement)

while sats

int i=0;while (i<10) { System.out.println(”programmering är kul”); i++;}

Page 18: Övning2  programmeringsteknik och Matlab 2D1312/ 2D1305

18

Modell för for- och while-sats

falskt

sant

Villkor

uttryck

... kod före for eller while

Kod efter for eller while...

Page 19: Övning2  programmeringsteknik och Matlab 2D1312/ 2D1305

19

Modelll för loop

falskt

Kod efter for eller while...

i<10

System.out.println(”hej”);i++;

int i=0;

sant

Page 20: Övning2  programmeringsteknik och Matlab 2D1312/ 2D1305

20

while-sats består av följande delar:1. do 2. uttryck 3.while 4.Villkor-sats (condition)

do-while sats

int i=0;

do { System.out.println(”programmering är kul”); i--;} while (i>10);

Page 21: Övning2  programmeringsteknik och Matlab 2D1312/ 2D1305

21

Modell för do-while sats

falskt

sant

kod efter do-while ...

Villkor

uttryck

... kod för do-while

Page 22: Övning2  programmeringsteknik och Matlab 2D1312/ 2D1305

22

Uppgifter

Skriv följande program med hjälp av for-sats och/eller while-sats

1. Skriv ett program som skriver ut ”hej” 100 gånger.

2. Skriv ett program som skriver ut alla heltal från 0 upp till 100.

3. Skriv ett program som skriver ut heltal mellan -1 och 101 med intervall 4. (d.v.s. 0, 4, 8, 12,…,100)

Page 23: Övning2  programmeringsteknik och Matlab 2D1312/ 2D1305

23

Uppgifter

4. Skriv ett program som frågar användaren om ett tal och skriver ut ”hej” lika många gånger som inmatade talet.

5. Skriv ett program som frågar om två tal och skriver ut alla tal mellan de två talen (obs användaren ska mata in minsta talet först)

6. Skriv ett program som löser uppgift 5 utan någon krav om att minsta talet ska matas in först.

Page 24: Övning2  programmeringsteknik och Matlab 2D1312/ 2D1305

24

Uppgifter

7. Skriv ett program som skriver ut multiplikationstabellen för 1-5.

1 2 3 4 5

2 4 6 8 10

3 6 9 12 15

4 8 12 16 20

5 10 15 20 25