Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Anweisungen und Datentypen Folie 1 Uwe Lämmel Einführung in die Programmierung Anweisungen und Datentypen Uwe Lämmel Fakultät für Wirtschaftswissenschaften.

Ähnliche Präsentationen


Präsentation zum Thema: "Anweisungen und Datentypen Folie 1 Uwe Lämmel Einführung in die Programmierung Anweisungen und Datentypen Uwe Lämmel Fakultät für Wirtschaftswissenschaften."—  Präsentation transkript:

1 Anweisungen und Datentypen Folie 1 Uwe Lämmel Einführung in die Programmierung Anweisungen und Datentypen Uwe Lämmel Fakultät für Wirtschaftswissenschaften

2 Anweisungen und Datentypen Folie 2 Uwe Lämmel Anweisungen und Daten Algorithmus = Handlungsanweisung Unsere Weltsicht: Dinge + Handlungen Begriffswelt der Informatik: Daten + Algorithmen public void taktsignalGeben( ) { minuten.erhoehen( ); if (minuten.gibWert( ) == 0) { // Limit wurde erreicht! stunden.erhoehen( ); } //if anzeigeAktualisieren(); } //taktsignalGeben Methoden-Körper = Algorithmus

3 Anweisungen und Datentypen Folie 3 Uwe Lämmel Anweisungen Anweisungen: einfache Anweisungen: –Zuweisung: wert=0; name=neuName ;... –return-Anweisung: return umsatz/anzahl; return name;... –Methodenaufruf: stunden.setzeWert(neu);... strukturierte Anweisungen –Sequenz (Klammerung): { name=neuName; wert=0; } –Alternative (IF-Anweisung) Unsere Weltsicht: Dinge + Handlungen Begriffswelt der Informatik: Daten + Algorithmen

4 Anweisungen und Datentypen Folie 4 Uwe Lämmel Alternative: if-Anweisung if (Bedingung) { Anweisungen // Dann-Fall, wenn Bedingung true ist } else { Anweisungen // Sonst-Fall, Bedingung ist false } if ( z % 2 == 0) { System.out.println( "gerade Zahl") ; } else { System.out.println("ungerade Zahl"); }

5 Anweisungen und Datentypen Folie 5 Uwe Lämmel if-Anweisung: Interpretation Bedingung muss vom Typ boolean sein. Besteht Anweisungen nur aus einer Anweisung, k ö nnen Klammern entfallen else-Teil kann entfallen Interpretation: Wenn Bedingung den Wert true liefert, wird (nur) nachfolgende Anweisung abgearbeitet; liefert Bedingung false, wird (nur) Anweisung des else-Teils abgearbeitet. if (Bedingung) { Anweisungen } else { Anweisungen }

6 Anweisungen und Datentypen Folie 6 Uwe Lämmel Bedingung einer if-Anweisung ist logischer Ausdruck: –gleich ==a == 0 –ungleich !=a != 0 –größer >a > 10 –größer gleich>=a >=0 –kleiner< –kleiner gleich<= –und&&00 | | a==0 –nicht!! (a==0) logische Variable/Konstante: –boolean b1;b1!b1

7 Anweisungen und Datentypen Folie 7 Uwe Lämmel Entscheidungsbaum Rot? Röhren? ? ? nicht möglich Warnungessbar essbar?

8 Anweisungen und Datentypen Folie 8 Uwe Lämmel Pilze if (rot) { if (roehren) { ergebnis= "nicht moeglich"; } else { ergebnis= "giftig!"; } } else { if (roehren) { ergebnis= "essbar";} else { ergebnis= "vielleicht essbar";} class Pilz { private String name; private boolean rot;// Wahrheitswert: true / false private boolean roehren; public Pilz(String pname, boolean istRot, boolean hatRoehren){ name = pname; rot = istRot; roehren = hatRoehren; } //Pilz public String pilzIst() { String ergebnis; if (rot) { if (roehren) { ergebnis= "nicht moeglich"; } else { ergebnis= "giftig!"; } } else { if (roehren) { ergebnis= "essbar";} else { ergebnis= "vielleicht essbar";} } //if return ergebnis; } //pilzIst

9 Anweisungen und Datentypen Folie 9 Uwe Lämmel Entscheidungsbaum - Aufgabe ArtikelNummerMWSt in % Leitungswasser10007 Brot10107 Butter10207 Bier Buch20007 Fahrkarte-Nahverker31007 Fahrkarte-Fernverkehr Miete41000 Arzthonorar42000 Bekleidung Geräte Nutzen Sie Vergleiche für die Entscheidungen!

10 Anweisungen und Datentypen Folie 10 Uwe Lämmel Daten – Interpretation Maschinencode natürliche Sprache Compiler Programmierung Programm Programmiersprache

11 Anweisungen und Datentypen Folie 11 Uwe Lämmel Daten class Person { //-- Datenfelder, Merkmale, Attribute private String name; private int geboren; //-- Geburtsjahr! public Person(String nachname, int jahr) { name = nachname; geboren = jahr; } //Person public int getAlter(int jahr ) { int alter = jahr – geboren; return alter; } //getAlter } // Person … Person p1 = new Person("Meier",1980); Instanz-Variablen formale Parameter lokale Variable Referenz und Objekt aktuelle Parameter

12 Anweisungen und Datentypen Folie 12 Uwe Lämmel Variable: Name + Typ + Wert Name = Handgriff Typ liefert Interpretation des Wertes 435 a (Ein Person- Objekt) p1 A4CB890 Ein Person- Objekt new int a; Person p1;

13 Anweisungen und Datentypen Folie 13 Uwe Lämmel Variable = Speicherplatz Byte short char ASCII 87 ASCII 73 W I = 5* *16²+4*16+9 = (26 A4 6B 30): Interpreation als … Angabe des Typs einer Variablen erforderlich

14 Anweisungen und Datentypen Folie 14 Uwe Lämmel Variable und einfache Datentypen int a = 435; int b = a; a = 4711; 435 a b 4711 a 435 b

15 Anweisungen und Datentypen Folie 15 Uwe Lämmel Einfache Datentypen booleanlogischer Wert: true/false1 Byte charZeichen2 Byte byteGanzzahl – Byte shortGanzzahl2 Byte intGanzzahl4 Byte longGanzzahl8 Byte floatFließpunktzahl 4 Byte doubleFließpunktzahl8 Byte

16 Anweisungen und Datentypen Folie 16 Uwe Lämmel Objekt-Datentypen vordefiniert (siehe Java-API): String selbst entwickelt: TicketAutomat Nummernanzeige Uhrenanzeige Student Unternehmen … Objekte stets mittels Konstruktor erzeugen: new

17 Anweisungen und Datentypen Folie 17 Uwe Lämmel Variable, die auf Objekte zeigen Person p1; p1 = new Person("Katz",1979); Person p2; p2 =p1; p2.setName(Hund); Was liefert p1.getName() ? p1 Person Objekt: "Katz" p1 Person Objekt: "Katz" p1 p2 // Was bewirkt: Person p3 = new Person(); p3 = p1; Vorsicht bei Objekt-Variablen!

18 Anweisungen und Datentypen Folie 18 Uwe Lämmel Variable, die auf Objekte zeigen? String s = "Anton"; String s1 = new String("Anton"); Uhrenanzeige wecker = new Uhrenanzeige(); Datumsanzeige kalender; Kalender = new Datumsanzeige();

19 Anweisungen und Datentypen Folie 19 Uwe Lämmel class Person { private String name; … public String getName() { return name; } … Instanzen-Variablen – privat Sicherheit Stabile Schnittstelle (Wartbarkeit) –Geheimnisprinzip Schutz vor unerwünschter Veränderung name geboren Zugriffsmethoden Programm-Entwicklung: Instanzen-Variablen: private Zugriff über public-Methoden

20 Anweisungen und Datentypen Folie 20 Uwe Lämmel Daten und Anweisungen class TestPerson { public static void main(String[ ] args) { Person p1 = new Person("Berg", 1978); Person p2 = new Person("Tal", 1990); int limit = 18; int imJahr = 2007; if (p1.getAlter(imJahr)>=limit) { System.out.println("Kredit fuer "+p1.getName()+ ": JA"); } else System.out.println("Kredit fuer "+p1.getName()+ ": NEIN"); … }

21 Anweisungen und Datentypen Folie 21 Uwe Lämmel Zusammenfassung Dinge + Handlungen => Daten und Algorithmen Algorithmen = Folge von Anweisungen einfache <> strukturierte Anweisungen Zuweisung, return, Methoden-Aufruf Sequenz, Alternative (if-Anweisung) einfache Datentypen (int, double, boolean, …) Referenz-Datentypen (Objekt-Typen) Speicherverwendung und Datentypen

22 Anweisungen und Datentypen Folie 22 Uwe Lämmel Ende

23 Anweisungen und Datentypen Folie 23 Uwe Lämmel Entscheidungsbaum Neuer Monat Monat 30? tag=31? neuer Monat Februar? Schaltjahr? tag=30? neuer Monat tag=29? neuer Monat tag=0? neuer Monat


Herunterladen ppt "Anweisungen und Datentypen Folie 1 Uwe Lämmel Einführung in die Programmierung Anweisungen und Datentypen Uwe Lämmel Fakultät für Wirtschaftswissenschaften."

Ähnliche Präsentationen


Google-Anzeigen