JAVA - Methoden

Ähnliche Dokumente
JAVA - Methoden - Rekursion

Arbeitsblätter für die Lehrveranstaltung OOP JAVA 1

Implementieren von Klassen

Klassenvariablen, Klassenmethoden

Beispiele für Ausdrücke. Der imperative Kern. Der imperative Kern. Imperativer Kern - Kontrollstrukturen. Deklarationen mit Initialisierung

Methoden und Wrapperklassen

Martin Unold INFORMATIK. Geoinformatik und Vermessung

Folienpaket 7 Themenschwerpunkte: Methoden in OOP /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

4. Vererbung Die Klasse Object. Die Klasse Object

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch)

CoMa 04. Java II. Paul Boeck. 7. Mai Humboldt Universität zu Berlin Institut für Mathematik. Paul Boeck CoMa 04 7.

2 Programmieren in Java I noch ohne Nachbearbeitung

Einführung in die Programmierung für NF. Zuweisungen, main- Methode und Kommentare

1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays)

Algorithmen und Datenstrukturen II

Martin Unold INFORMATIK. Geoinformatik und Vermessung

Javakurs für Anfänger

Vorsichtige Programmierer verwenden Inkrement- Operatoren nicht in komplizierteren Ausdrücken

Methoden. Gerd Bohlender. Einstieg in die Informatik mit Java, Vorlesung vom

Einstieg in die Informatik mit Java

2. Unterprogramme und Methoden

Themen der Übung. Methoden und Wrapperklassen. Vorteile von Methoden. Methoden. Grundlagen

Lösung der Übungsaufgabenserie 12 Grundlagen der Informatik und Numerik

Erste Java-Programme (Scopes und Rekursion)

Methoden und Klassen. Silke Trißl Wissensmanagement in der Bioinformatik

Einführung in die Programmierung für NF. Zuweisungen, main- Methode und Kommentare

Silke Trißl, Prof. Ulf Leser Wissensmanagement in der Bioinformatik. Jede Applikation braucht eine Klasse mit einer main-methode

Institut für Programmierung und Reaktive Systeme. Java 2. Markus Reschke

Java Einführung Methoden. Kapitel 6

Einstieg in die Informatik mit Java

Kapitel 13. Abstrakte Methoden und Interfaces. Fachgebiet Knowledge Engineering Prof. Dr. Johannes Fürnkranz

Grundelemente objektorientierter Sprachen (1)

Grundelemente objektorientierter Sprachen (1)

Martin Unold INFORMATIK. Geoinformatik und Vermessung

Tag 5. Repetitorium Informatik (Java) Dozent: Marius Kamp Lehrstuhl für Informatik 2 (Programmiersysteme)

Einstieg in die Informatik mit Java

Ein String ist in Java eigentlich eine Klasse, wir können ihn aber zunächst als Datentyp betrachten, der zur Speicherung von Zeichenketten dient.

Martin Unold INFORMATIK. Geoinformatik und Vermessung

Java Methoden. Informatik 1 für Nebenfachstudierende Grundmodul. Kai-Steffen Hielscher Folienversion: 1. Februar 2017

Dr. Lars Hildebrand Fakultät für Informatik Technische Universität Dortmund

Klassen und Objekte. Klassen sind Vorlagen für Objekte. Objekte haben. Attribute. Konstruktoren. Methoden. Merkblatt

Institut für Programmierung und Reaktive Systeme 2. Februar Programmieren I. Übungsklausur

Vorkurs Informatik WiSe 16/17

Programmiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny

Neben der Verwendung von Klassen ist Vererbung ein wichtiges Merkmal objektorientierter

JAVA für Nichtinformatiker - Probeklausur -

Objektorientierung (OO)

Informatik Funktionen

Javakurs für Anfänger

Martin Unold INFORMATIK. Geoinformatik und Vermessung

Tag 8 Repetitorium Informatik (Java)

Prozeduren vs. Funktionen

Repetitorium Informatik (Java)

System.out.println("TEXT");

Intensivübung zu Algorithmen und Datenstrukturen

Wiederholung Wozu Methoden? Methoden Schreiben Methoden Benutzen Rekursion?! Methoden. Javakurs 2012, 3. Vorlesung

Variablenarten. Gerd Bohlender. Institut für Angewandte und Numerische Mathematik. Vorlesung: Einstieg in die Informatik mit Java

Objektorientiertes Programmieren (Java)

Einstieg in die Informatik mit Java

Einführung in das Programmieren Probeklausur Lösungen

Software Entwicklung 1. Rekursion. Beispiel: Fibonacci-Folge I. Motivation. Annette Bieniusa / Arnd Poetzsch-Heffter

Konstruktor. public Rational(int i) { Zaehler = i; Nenner = 1; }

Test-Klausuraufgaben Softwaretechnik Fachbereich BW, für WINFO

7. Übung Informatik II - Objektorientierte Programmierung

Einstieg in die Informatik mit Java

Programmieren I + II Regeln der Code-Formatierung

Java Übung. Übung 3. Werner Gaulke. 2. Mai Universität Duisburg-Essen Kommedia, Übung EinPro SS06, Einführung in Java - Übung.

Programmieren I + II Regeln der Code-Formatierung

Vorkurs Informatik WiSe 17/18

Schwerpunkte. 10. Felder (Arrays) Grundprinzip von Arrays. Klassifikation von Typen in Programmiersprachen

Einstieg in die Informatik mit Java

Grundelemente objektorientierter Sprachen (1)

Javakurs für Anfänger

Einführung in die Programmierung I. 3.0 Funktionen. Thomas R. Gross. Department Informatik ETH Zürich

Software Entwicklung 1

Silke Trißl Wissensmanagement in der Bioinformatik. Objektorientierte Programmierung (OOP) Vorstellung wie in der realen Welt: Farbe Hubraum Tank...

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch)

Einstieg in die Informatik mit Java

AuD-Tafelübung T-B5b

Grundlagen der Programmierung Prof. H. Mössenböck. 6. Methoden

Elementare Konzepte von

Methoden und Funktionen

Praktische Informatik I Wintersemester 2005/2006 Abgabe: 23. November 2005

1 Klassen und Objekte

C# - Einführung in die Programmiersprache Methoden. Leibniz Universität IT Services

3. Anweisungen und Kontrollstrukturen

Einführung in die Programmierung

Propädeutikum Programmierung in der Bioinformatik

1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays)

Kapitel 10 Delegationsvariablen

Übung Informatik I - Programmierung - Blatt 2

Programmieren 2 Java Überblick

Kapitel 9. Programmierkurs. Attribute von Klassen, Methoden und Variablen. 9.1 Attribute von Klassen, Methoden und Variablen

PK-Einstufungstest. 1. Allgemeine Multiple-Choice-Aufgaben. Aufgabe 1.1. Alle Aufgaben beziehen sich auf Java.

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch)

7 Funktionen. 7.1 Definition. Prototyp-Syntax: {Speicherklasse} {Typ} Name ({formale Parameter});

Klassen mit Instanzmethoden

Transkript:

Übungen Informatik I JAVA - http://www.fbi-lkt.fh-karlsruhe.de/lab/info01/tutorial Übungen Informatik 1 Folie 1

sind eine Zusammenfassung von Deklarationen und Anweisungen haben einen Namen und können unter diesem aufgerufen werden Syntax einer Methode: Modifikator - Return-Typ Name Parameter public static void hallo () return-type method-name (param-type1 param-name1,..., param-typen param-namen ){ // code aufruf: method-name (param1,..., paramn); Übungen Informatik 1 Folie 2

Zugriffsrechte Klassen, Attribute und können Zugriffsrechte erhalten. public: öffentliche Methode,d.h, die Methode kann in anderen Klassen verwendet werden. public static String hallo() private: Methode ist nur in der eigenen Klasse sichtbar, und kann nur dort verwendet werden. private static String hallo() final,protected: relevant bei einer Vererbung kommt im 2. Semester final String hallo() protected String hallo() ohne Modifikator: Methode ist in der Klasse und im Package sichtbar (wie protected) static: Klassenmethode d.h. sie kann aufgerufen werden, ohne eine Instanzen der Klasse erzeugen zu müssen, die Methode gehört zu einer Klasse, nicht zu einem Objekt static String hallo() void: die Methode liefert keinen Wert zurück public static void hallo() Übungen Informatik 1 Folie 3

Rückgabewerte, die keinen Rückgabewert liefern, sind mit void deklariert. fehlt das void liefert die Methode in der Anweisung return einen Rückgabewert. public class Methode1 { public static void main (String [] args ) { System.out.println ( hallo() ); static String hallo() { // String legt den Typ für den return "Hallo"; // Rückgabewert fest die Klasse Methode1 enthält Methode main() liefert keinen Rückgabewert, da vom Typ void Methode hallo() liefert einen Rückgabewert vom Typ String Übungen Informatik 1 Folie 4

Beispiel public class Druck{ public static void drucken (String satz) { System.out.println(satz); public static void main(string[] args) { System.out.print("\nMit 'print' und 'println' kann"); System.out.println(" man schreiben\nund rechnen:"); drucken ("6 * 7 = \t" + 6 * 7); Methode drucken kann direkt aufgerufen werden, d.h nur Name mit ( ); -ohne new- weil die Definition der Methode zur Klasse gehört, in der sie verwendet wird. Syntax für Aufruf der Methode drucken in anderen Klassen: Druck.drucken(..), vgl. System.out.println(); Übungen Informatik 1 Folie 5

formale Parameter können Werte als Parameter übernehmen. Parameter werden in der Deklaration als formale Parameter in runden Klammern festgelegt. - jeder formale Parameter muss separat als Variable mit Typ und Bezeichnung deklariert werden - formale Parameter sind innerhalb der Methode lokale Variablen static boolean gueltigesjahr (int minmumjahr, double maximumjahr) { if (minimumjahr>=1500 && maximumjahr<=2004) { return true; else { return false; Die Methode gueltigesjahr arbeitet mit dem integer-wert minimumjahr und dem double-wert maximumjahr minimumjahr und maximumjahr sind formale Parameter. Die Methode gueltigesjahr liefert einen boolschen Wert (Typ der Methode) zurück Das erfordert eine Zuweisung in der return-anweisung der Methode. der Rückgabewert der Methode steht hinter der return-anweisung gueltigesjahr (2,1800)? IO.print( ok ):IO.print( nein ); Übungen Informatik 1 Folie 6

Rückgabewerte Beispiel1: Berechne die Summe zweier Integer Werte public class Summe { static int summe (int a, int b) { // Klassenmethode (static) return a+b; // lokale Variablen public static void main (String [] args ) { System.out.println (" 1 + 1 ="+summe(1,1) ); System.out.println (" 1 + 2 ="+summe(1,2) ); System.out.println (" 11 + 23 ="+summe(11,23) ); Übungen Informatik 1 Folie 7

Rückgabewerte Beispiel2: Berechne die Mehrwertsteuer class Mehrwertsteuer{ public static double addmwst (double wert, double prozent){ double mwstbetrag; mwstbetrag = wert + wert / 100 * prozent; return mwstbetrag; public static void main(string[] args) { System.out.println( addmwst(150,16) ); andere Lösung der Methode addmwst: public static double addmwst(double wert,double prozent){ return wert / 100 * prozent + wert; Übungen Informatik 1 Folie 8

Regeln Zusammenfassung müssen innerhalb einer Klasse definiert werden Eine Methode kann an beliebiger Stelle mit Hilfe der Anweisung return verlassen werden. Ist keine return-anweisung vorhanden, wird die Methode an der schließenden geschweiften Klammer verlassen. Liefert die Methode einen Wert zurück, wird return-anweisung nötig. Rückgabewert: hinter der return-anweisung. Argumente einer Methode stehen in der in Parameterliste (Variablendeklaration mit Typ und Name - für jeden Parameter). Hat die Methode keine Parameter, ist die Parameterliste leer Übungen Informatik 1 Folie 9

Mathematische Berechnungen Klasse java.lang.math s. API: für Mathematische Berechnungen, für die kein Operator zur Verfügung steht z.b.: - Potenzrechnung - Bestimmung von Minimum und Maximum - Winkelfunktion - Quadratwurzelberechnung Übungen Informatik 1 Folie 10

mathematische Berechnung public class math { static double kreisflaeche(int radius) { double flaeche; return flaeche = Math.pow(radius, 2) * Math.PI; public static void main(string[] args) { double wurzel2; System.out.println("Kreisfläche mit radius 10 = " + kreisflaeche(10)); System.out.println(Math.min( 300, kreisflaeche(100) )); wurzel2 = Math.sqrt(2); System.out.println( "Wurzel von 2 = " + wurzel2); System.out.println( "Wurzel von 2 (abgeschn.) = " + Math.floor(wurzel2)); verwendete : Math.pow Quadrat des Radius (Math.pow(a,b) = a hoch b) Math.max,Math.min Maximum, Minimum von 2 Zahlen bestimmen Math.abs Absolutwert (ohne Vorzeichen) einer Zahl Math.sqrt Quadratwurzel Math.floor schneidet die Nachkommastellen ab. Math.PI gibt den Wert von PI = 3.141592653589793 zurück Übungen Informatik 1 Folie 11

Berechne Sinus im Bogenmass Objekt Math.sin braucht den Winkel im Bogenmass (s. APIs) (Bogenmass eines Winkels = Länge des Kreisbogens um den Winkel : Umrechnung Winkel => Bogenmass: x = PI / 180 * alpha) public class Sinus { public static void main (String argv[]) { final int MAX_GRAD = 360; int grad; double r; for (grad=0; grad <= MAX_GRAD; grad++) { r = Math.sin (grad * Math.PI / 180); switch (grad) { case 46: case 91: case 136: case 181: case 226: case 271: case 316: { char a = IO.readChar("Schluss jetzt? Dann bitte ein s eingeben: "); if (a == 's') grad = MAX_GRAD; // Ende switch IO.println("sin("+grad + "Grad) = " + r); // Ende for // Ende main // Ende class Übungen Informatik 1 Folie 12

Aufgabe n-te Wurzel von z f (x) = x n z f (x) = nx (n-1) entspricht der Steigung m y n x 0 z x 1 Tangente t(x) = mx + b t(x) = mx + ( f(x) x 0 *f (x) ) = n*x 0 (n-1) x + x 0n -z -x 0 nx 0 (n-1) = n*x (n-1) 0 x + x 0n -z-nx n 0! = n*x (n-1) 0 x + (1-n)x 0n - z = 0 f(x) f(x 0 ) -z b Tangente t(x) x 0 m 1 f'(x 0 )*x 0 x z + (n-1) x n x i+1 = i Iteration n x n-1 i Start: x 0 = 1, z und n einsetzten Ergebnis x 1 Fehler g x i x i-1 möglichst klein Übungen Informatik 1 Folie 13