16
Sequenzen: Lineare Programme

Sequenzen: Lineare Programme. Das EVA-Prinzip Ausgabe Eingabe Verarbeitung Rezept, Zutaten Topf, Ofen (Hardware) Kochen (Software) Lecker

Embed Size (px)

Citation preview

Page 1: Sequenzen: Lineare Programme. Das EVA-Prinzip Ausgabe Eingabe Verarbeitung Rezept, Zutaten Topf, Ofen (Hardware) Kochen (Software) Lecker

Sequenzen:Lineare Programme

Page 2: Sequenzen: Lineare Programme. Das EVA-Prinzip Ausgabe Eingabe Verarbeitung Rezept, Zutaten Topf, Ofen (Hardware) Kochen (Software) Lecker

Das EVA-Prinzip

Ausgabe

Eingabe

Verarbeitung

Rezept, Zutaten

Topf, Ofen (Hardware)Kochen (Software)

Lecker

Page 3: Sequenzen: Lineare Programme. Das EVA-Prinzip Ausgabe Eingabe Verarbeitung Rezept, Zutaten Topf, Ofen (Hardware) Kochen (Software) Lecker

Beispiel Lineares Programm: Brutto berechnen

Bruttonetto einlesen

prozent einlesen

steuern = netto * prozent / 100

brutto = netto + steuern

brutto ausgeben

Page 4: Sequenzen: Lineare Programme. Das EVA-Prinzip Ausgabe Eingabe Verarbeitung Rezept, Zutaten Topf, Ofen (Hardware) Kochen (Software) Lecker

Ein- und Ausgabe

Page 5: Sequenzen: Lineare Programme. Das EVA-Prinzip Ausgabe Eingabe Verarbeitung Rezept, Zutaten Topf, Ofen (Hardware) Kochen (Software) Lecker

Ausgabe in Java

System.out.println("Hallo"); // Ausgabe von Hallo und System.out.println("Welt"); // springt in die nächste Zeile

Ausgabe:HalloWelt

System.out.print("Hallo"); // Ausgabe von Hallo und System.out.println("Welt"); // bleibt in der gleichen Zeile

Ausgabe: HalloWelt

String text="Hallo";int zahl=5;System.out.println(text+"Welt"+zahl+ "! ");

Ausgabe: HalloWelt5!

Page 6: Sequenzen: Lineare Programme. Das EVA-Prinzip Ausgabe Eingabe Verarbeitung Rezept, Zutaten Topf, Ofen (Hardware) Kochen (Software) Lecker

Eingabe in Java: Die Scanner-Klasse

Definiert die Eingabe über die Tastatur

Einlesen eines Strings

Einlesen einer Integer

Pfad zu der Scanner-Klasse angeben

Page 7: Sequenzen: Lineare Programme. Das EVA-Prinzip Ausgabe Eingabe Verarbeitung Rezept, Zutaten Topf, Ofen (Hardware) Kochen (Software) Lecker

Arbeitsauftrag

Schreiben Sie das Java-Programm

zum Struktogramm „Brutto“

Page 8: Sequenzen: Lineare Programme. Das EVA-Prinzip Ausgabe Eingabe Verarbeitung Rezept, Zutaten Topf, Ofen (Hardware) Kochen (Software) Lecker

Ein- und Ausgabe mit der JOptionPane

Ausgabe eines Strings

Fehlermeldung

Einlesen eines Strings

Page 9: Sequenzen: Lineare Programme. Das EVA-Prinzip Ausgabe Eingabe Verarbeitung Rezept, Zutaten Topf, Ofen (Hardware) Kochen (Software) Lecker

Arbeitsauftrag

Entwickeln Sie ein Struktogramm, das den Abstand von zwei

Punkten in der Ebene ermittelt.

Page 10: Sequenzen: Lineare Programme. Das EVA-Prinzip Ausgabe Eingabe Verarbeitung Rezept, Zutaten Topf, Ofen (Hardware) Kochen (Software) Lecker

Grundbegriffe

Maschinensprache, Programmiersprachen, Algorithmus, Compiler, Interpreter, JavaVirtualMachine, java, javac

Variablen und Datentypen

Bezeichner, Datentypen, Definition, Wertzuweisung

Operatoren

Arithmetische Operatoren, Modulo, Vergleichsoperatoren, Logische Operatoren

Ein-/Ausgabe

print / println, “Hallo”+name, Scanner

Programme

Struktogramm, Java-Prg

Themen Klassenarbeit

Page 11: Sequenzen: Lineare Programme. Das EVA-Prinzip Ausgabe Eingabe Verarbeitung Rezept, Zutaten Topf, Ofen (Hardware) Kochen (Software) Lecker

Typumwandlungen(Typecasting)

Page 12: Sequenzen: Lineare Programme. Das EVA-Prinzip Ausgabe Eingabe Verarbeitung Rezept, Zutaten Topf, Ofen (Hardware) Kochen (Software) Lecker

Implizites und explizites Typecasting

int long

int iZahl=1000;long loZahl=1000000;loZahl=iZahl; // funktioniert implizit

long int

iZahl = (int) loZahl; // explizit durch den Typecast-Operator

float double

float fZahl=3.14f;double dZahl=77.7;dZahl = fZahl; // funktioniert implizit

double float

fZahl = (float) dZahl; // explizit durch den Typecast-Operator

Page 13: Sequenzen: Lineare Programme. Das EVA-Prinzip Ausgabe Eingabe Verarbeitung Rezept, Zutaten Topf, Ofen (Hardware) Kochen (Software) Lecker

Explizites Typecasting zwischen verschiedenen Datentypen

int float

Int iZahl1=5;float fZahl1=10.8f;

fZahl1 = (float) iZahl1;iZahl1 = (int) fZahl1; // danach hat iZahl1 den Wert 10

String int, String float

String sZahl1="56";int iZahl1=5;float fZahl1=10.8f;

iZahl1 = Integer.valueOf(sZahl1);sZahl1 = String.valueOf(iZahl1); fZahl1 = Float.valueOf(sZahl1);sZahl1 = String.valueOf(fZahl1);

Page 14: Sequenzen: Lineare Programme. Das EVA-Prinzip Ausgabe Eingabe Verarbeitung Rezept, Zutaten Topf, Ofen (Hardware) Kochen (Software) Lecker

Typecasting Beispiele 1

iZahl = (int) fZahl1 * (int) fZahl2;oderiZahl = (int) (fZahl1 * fZahl2); // Klammern sind hier wichtig!

dZahl2 = fZahl1; // geht implizit

fZahl = (float)(iZahl1 + iZahl2); // expliziter Typecast-Operator

sZahl1 = String.valueOf(loZahl1 + (long) iZahl1);

fZahl1= 45.765f;iZahl1= (int) fZahl1; // erhält nur den ganzteiligen Anteil, also 45

Page 15: Sequenzen: Lineare Programme. Das EVA-Prinzip Ausgabe Eingabe Verarbeitung Rezept, Zutaten Topf, Ofen (Hardware) Kochen (Software) Lecker

Typecasting Beispiele 2

Runden einer float-Zahl

float fZahl1=45.49f;int iZahl1 = (int) (fZahl1+0.5f);

Runden auf 3 Kommastellen

float fZahl1=45.123456f;float fZahl3 = (int)(fZahl1*1000+0.5f)/1000f;

Zufallszahlen

Math.random() liefert eine double-Zahl zwischen 0 und 1.

Gesucht: Integer-Zufallszahl im Bereich 1…n

int n=10;int meineZufallszahl = (int) (n * Math.random())+1;

Page 16: Sequenzen: Lineare Programme. Das EVA-Prinzip Ausgabe Eingabe Verarbeitung Rezept, Zutaten Topf, Ofen (Hardware) Kochen (Software) Lecker

Arbeitsauftrag

Würfel-Simulation schreiben