Betreutes Programmieren. 4-Gewinnt
|
|
- Ida Kranz
- vor 7 Jahren
- Abrufe
Transkript
1 WS 2011/2012 Fakultät Angewandte Informatik Programmierung verteilter Systeme Prof. Dr. Bernhard Bauer Betreutes Programmieren Programmieraufwand für geübte Programmierer: max. 40 min. Programmieraufwand für ungeübte Programmierer: min. Musterlösung: 94 Codezeilen 1 Forderung: Beschriebene Funktionalitäten ohne Zusatzaufgaben. Grundsätzliches: API 4-Gewinnt Alle von Java unterstützten Funktionen und Klassen finden Sie in der dazugehörigen API (Applications Program Interface). Dazu sollte man wissen, dass alle Funktionen bestimmten Klassen zugeordnet sind. Hinzu kommt noch, dass diese Klassen wiederum in Paketen enthalten sind allerdings ist dies für die Lösung der Aufgabe irrelevant und wird im Laufe des Semesters vertieft. Dennoch sollten Sie sofort damit anfangen, sich mit der API zu beschäftigen: Java-API: 1: Alle Pakete; 2: Alle im gerade gewählten Paket enthaltenen Klassen; 3: Alle in der gewählten Klasse enthaltenen Funktionen 1 Orientierung: Keine Leerzeilen; keine Kommentare; in eigenen Zeilen (34x); Klammer auch um 1-Zeilen Blocks; keine?-operatoren; 1 Anweisung pro Zeile, außer bei Deklarationen gleichen Typs: int a, b, c=0,...;
2 Eclipse (Schnellstart für CIP-Pool) Starten Sie Eclipse unter C:\Program Files\eclipse\eclipse.exe Richten Sie sich einen geeigneten Workspace ein. Als Default wird Ihnen C:\Users\<name>\workspace empfohlen. In diesem Ordner werden alle Ihre Programme gespeichert. Wählen Sie nun rechts das Symbol "Workbench Go to the Workbench" Gehen Sie nun auf File -> New -> Project wobei Sie das 2. Project wählen Wählen Sie nun unter Java -> Java Project, anschließend Next Wählen Sie nun einen Projektnamen, wie z.b. "Betreutes Programmieren 2" und wählen Sie Finish. Die anschließende Frage können sie mit Yes beantworten Markieren Sie nun im linken Fenster unter Betreutes Programmieren 2 den src - Ordner Anmerkung: Per Konvention ist es üblich, dass jede Java-Klasse sich in einem Paket befindet. Diesen Standard wollen wir uns angewöhnen. Rechtsklick auf src und wählen Sie New->Package und wählen Sie einen geeigneten Namen, wie "main" (Paketnamen werden nach Konvention immer mit Kleinbuchstaben am Anfang geschrieben) Rechtsklick auf main und wählen Sie New->Class und nennen Sie diese "VierGewinnt" Es öffnet sich nun im rechten Teil ein Dokument in dem Sie Ihren Code schreiben können Ausgeführt wird der Code über den weißen Pfeil auf grünem Grund zwischen dem Käfer und dem analogen Pfeil mit einem kleinen roten Koffer darunter oder mit Run->Run oder Strg+F11 oder Rechtsklick auf VierGewinnt->RunAs-> JavaApplication Kommandozeilenparameter kann man übergeben via: Run->Open Run Dialog->(x)=Arguments->Programm arguments: Das ist ein test dies ist das gleich wie die Eingabe java VierGewinnt Das ist ein test in der Eingabeaufforderung und übergibt damit dem Programm die vier Parameter args[0]=das args[1]=ist args[2]=ein args[3]=test
3 4-Gewinnt: Beim 4-Gewinnt gibt es ein Spielfeld aus BREITE vielen Schächten, die je HOEHE viele Steinen fassen. Zwei Spieler werfen abwechselnd einen ihrer Steine von oben in einen Schacht ihrer Wahl, wobei der Stein soweit wie möglich nach unten fällt.gewinner ist derjenige, der als erster 4 Steine oder mehr nebeneinander in einer Reihe platzieren kann, wobei hier alle Richtungen (horizontal, vertikal und diagonal) zählen. Zur Veranschaulichung dient folgende Grafik, bei der der Spieler mit den X-Steinen gewonnen hat: X X O X O X X O O O X Aufgabe: Schreiben Sie ein Kommandozeilen-basiertes 4-Gewinnt Spiel. Dabei soll der Mensch gegen die Maschine antreten. Der Einfachheit halber wird auf die automatische Überprüfung, wer gewonnen hat, verzichtet. Schreiben Sie sich eine Klasse VierGewinnt, in der sich auch die Main-Methode befindet. Die Feldgröße (HOEHE, BREITE) wird beim Starten des Programms via Kommandozeilenparameter festgelegt und die Werte als globale Variablen private static int HOEHE und private static int BREITE gespeichert. Dabei soll die Anzahl der übergebenen Parameter überprüft und eine entspr. Fehlermeldung ausgegeben werden. Außerdem legen zwei weitere globale Variablen vom Typ private static char die Spielsteine von SPIELER und RECHNER fest. Plausibilitätstests der Spielfeldabmessungen sind Ihnen freigestellt. In der Main-Methode wird das Spielfeld als ein 2-dimensionales char-array feld realisiert, welches zu Beginn mit Leerzeichen initialisiert wird. Anschließend wird in einer Endlosschleife zunächst das Spielfeld ausgegeben, der Benutzer zu einer Eingabe aufgefordert, das Spielfeld abermals ausgegeben und die Eingabe des Rechners verarbeitet. Dann startet die Schleife von vorn. Die Ausgabe des Feldes soll mit einer Methode private static void malefeld(char feld[][]) geschehen. Eine weitere Methode private static lesekoordinate() fordert den Benutzer solange zu einer Eingabe auf, bis dieser entweder einen Wert zwischen 1 und BREITE eingibt oder mit 0 anzeigt, dass er das Programm beenden möchten. Die dritte Methode private static boolean trageein(char feld[][], int schacht, char stein) trägt in den vom Benutzer oder Rechner gewählten schacht dessen Spielstein stein (globale Variable) in das Spielfeld feld ein und liefert als Rückgabewert, ob das geklappt hat oder nicht. Sollte dies nicht geklappt haben, wird der entsprechende Spieler in der Main-Methode solange wieder zu einer Eingabe aufgefordert, bis ein passender Schacht gewählt wurde, so dass das Eintragen klappt. Der Schacht des Rechners wird berechnet, indem man sich mit einer passenden Funktion der java.lang.math-klasse eine Zufallszahl aus [0,1[ generieren lässt, diese auf das Intervall [0,BREITE-1[ streckt und anschließend zum nächstgelegenen int rundet (ebenfalls durch geeignete Funktion der Math-Klasse): eingabe = (int) Math.RUNDEN((BREITE-1) * Math.ZUFALL); (RUNDEN und ZUFALL sind dabei passend zu ersetzen) Da es sich um eine Endlosschleife handelt, muss das Programm unter Umständen mit Strg+C beendet werden. Nach Ihrem bisherigen Wissensstand dürfte es kein Problem darstellen, dieses Programm in C zu schreiben. Wenn Sie sich in Java bereits sicher fühlen oder Erfahrung haben, versuchen Sie, die Aufgabe nach obiger Aufgabenstellung zu lösen. Andernfalls erhalten Sie nun im Folgenden eine Schritt für Schritt Anleitung mit Vergleichen, wie es in C gemacht werden würde, und was für Elemente gerade behandelt werden. Anleitung: Bevor Sie mit der Arbeit beginnen, öffnen Sie die API, scrollen Sie im linken oberen Frame (1) zum Paket java.lang und klicken es an. java.lang ist das Standardpaket und ist immer eingebunden. Im unteren Frame (2) öffnet sich nun eine Übersicht über alle Interfaces, Klassen, Aufzählungen,... wobei vorerst die Klassen das einzig Interessante für uns sind. Klicken Sie nun auf eine Klasse, z.b. Math, erhalten Sie im rechten Frame (3) eine Übersicht über diese Klasse, bestehend aus Beschreibung, Konstantenübersicht, Methodenübersicht, Detaillierte Konstanten, Detaillierte Methoden. Die Methodenübersicht teilt Ihnen in der ersten Spalte mit, welche Modifikatoren die einzelnen Funktionen haben (diese spielen die ersten paar Wochen keine Rolle) und welchen Rückgabetyp und -wert. In der zweiten Spalte steht dann der Funktionsname mit Eingabeparameterliste und einer kurzen Beschreibung: static double abs (double a) ist eine statische Methode, die den Absolutbetrag einer double-zahl als double zurückliefert. 1) Wir wollen mit der Main-Funktion starten. Bevor man aber in Java die Main-Funktion, oder irgendeine andere Funktion, benutzen kann, benötigt man eine Klasse, die diese und weitere Funktionen umschließt. Daher definieren wir uns also eine Klasse mit einem sprechenden Namen: - Per Konvention schreibt man Klassennamen immer groß. - public ist ein Modifikator, der dafür sorgt, dass die Klasse von überall aus erreichbar ist. Mehr dazu im Laufe des Semesters. Speichern Sie die Datei auch unbedingt unter dem Klassennamen ab, da es sonst nicht möglich ist, das Programm zu kompilieren. In diesem Fall muss Ihre Datei also VierGewinnt.java heißen. Alle Funktionen werden in dieser Klasse zusammengefasst, also erhalten wir: // Hier kommen Funktionen hin 2) Während es in C verschiedene Signaturen der Main-Funktion gibt, hat Java nur eine: public static void main (String args[]), die ein wenig an int main (int argc, char* argv[]) erinnert. - public und static sind Modifikatoren, die für die ersten paar Wochen des Semesters einfach akzeptiert werden sollten ;)
4 - Im Gegensatz zur C-Main gibt die Java-Main keinen Wert zurück und ist somit void. - Sowohl in Java, als auch in C werden die Argumente als Strings übergeben, allerdings wird in Java kein int argc benötigt, da man die Länge des String-Arrays args mittels args.length abfragen kann und args[0] beinhaltet nicht den Programmnamen, sondern den ersten Kommandozeilenparameter sofern vorhanden. Wir erhalten also: public static void main (String args[]) 3) Nutzt man in C globale Variablen, so müssen diese vor deren Benutzung in der Funktion deklariert werden, Java hingegen sieht eine Klasse als abgeschlossenes System und lässt Deklarationen überall zwischen den Funktionen zu. Dennoch wollen wir uns an die Konventionen halten und globale Variablen am Anfang der Klassendeklaration vor der ersten Funktion deklarieren: // Platz für globale Variablen public static void main (String args[]) Für das Programm benötigen wir 4 globale Variablen: int HOEHE, int BREITE für die Spielfeldabmessungen und char SPIELER und char RECHNER, wobei der Spieler mit dem Stein 'X' und der Rechner mit den Stein 'O' spielen soll. Als Modifikatoren benötigen die Variablen außerdem noch private static. So könnten also zwei der vier Variablen private static int HOEHE; private static char SPIELER='X'; lauten (die anderen beiden schaffen Sie selbst). 4) Gut, der Rahmen wäre also geschaffen. Da die Feldgröße entscheidend für das Spiel ist und über Kommandozeilenparameter eingegeben werden soll, wird dies der erste Schritt sein. Aus C kennen Sie das Vorgehen: if(argc<3) printf("zu wenig Parameter. Bitte geben Sie Höhe und Breite an."); return 1; if(argc>3) printf("zu viele Parameter. Bitte geben Sie nur Höhe und Breite an."); return 2; Übersetzung: Wie Sie aus dem HelloWorld - Programm der Vorlesung bereits wissen, können Sie in Java mittels System.out.println("") Text auf der Konsole ausgeben. Was argc in Java heißt, wurde bereits in 2) geklärt, und einen Programmabbruch erzeugt man mit der exit() - Methode der Klasse System 2, also mittels System.exit(0). 5) Nun, da wir wissen, dass wir die richtige Anzahl an Parametern bekommen haben, können wir diese verarbeiten. Allerdings gibt es dabei noch ein kleines Hindernis: args ist ein String-Array und die globalen Variablen BREITE und HOEHE, in denen die Abmessungen gespeichert werden sollen, sind vom Typ int, d.h. wir müssen noch den int-wert parsen. Dies wird mit der Methode parseint() der Hüll-Klasse Integer gemacht: HOEHE = Integer.parseInt(args[0]); (BREITE analog mit args[1]) Achtung: Im Gegensatz zu C wird in Java die Fehlerbehandlung nicht unbedingt über Rückgabewerte geregelt. Würden Sie in diesem Fall einen String parsen, der nicht ausschließlich aus Integer besteht (und ggf. noch dem Minus-Zeichen), so würde eine sog. NumberFormatException geschmissen werden. Dazu erfahren Sie im Laufe des Semesters noch mehr und dies soll hier nur als Ausblick erwähnt werden. Daher ergeben auch Plausibilitätstests der Variablen an dieser Stelle wenig Sinn und können somit weggelassen werden. 6) Zu Testzwecken können wir mal den ersten Testlauf machen und uns dabei die über die Kommandozeile übergebenen Parameter ausgeben lassen. In C wurde dies mittels printf("eingegeben wurden HOEHE %i und BREITE %i", HOEHE, BREITE) gemacht. In Java ist es möglich Strings, oder Variablen anderen Datentyps und Strings mit + zu verbinden: "Das ist ein Test "+4 würde "Das ist ein Test 4" liefern. Oder wenn man eine Variable int anzahl hat, so könnte man den Satz System.out.println("Sie haben "+anzahl+" gelbe Bananen bestellt") ausgeben lassen. Machen Sie dies für HOEHE und BREITE. Um das Programm auszuführen, müssen Sie es zunächst kompilieren: javac VierGewinnt.java Anschließend führen Sie es mit java VierGewinnt 4 7 oder anderen Parametern aus und Sie sollten ihre Ausgabe ähnlich "HOEHE: 4, BREITE: 7" 2 System enthält einige Methoden des laufenden Systems, also der Java Virtual Machine. Schauen Sie sich bei Zeiten mal die Methode gc() genauer an und versuchen Sie sich dadurch zu erklären, warum es in Java keine free() Methode gibt.
5 erhalten. 7) Als nächstes definieren wir uns ein Spielfeld, das aus einem 2-dimensionalen char-array besteht. Während dies in C dynamische Speicherreservierung mittels malloc() bedeutete, ist dies in Java wesentlich einfacher zu lösen. Wir erinnern uns: War die Array-Größe bereits zur Kompilierzeit bekannt, so konnte man in C ein 2-dim Array mittels char feld [BREITE][HOEHE] deklarieren. Java ermöglicht dies auch zur Laufzeit, allerdings werden Arrays und andere Objekte mit new erzeugt, was man mit der dynamischen Speicherreservierung vergleichen kann. So erhält man: char feld[][] = new char[breite][hoehe] Initialisieren Sie nun mit einer doppelten for-schleife (o.ä.) das Spielfeld mit Leerzeichen ' '. Merke: Alle mit new erzeugten Objekte verhalten sich wie Pointer in C, folgen also in Funktionen dem Call by Reference Prinzip! 8) Um das Spiel zu realisieren, lagern wir die restlichen Aufgaben in drei Funktionen aus: private static void malefeld (char feld[][]) private static int lesekoordinate() private static boolean trageein(char feld[][], int schacht, char stein) anders als in C ist es nicht nötig, Prototypen der Funktionen am Anfang der Klasse zu deklarieren. Wir haben jetzt also // Globale Variablen public static void main (String args[]) // args-prüfung // feld-deklaration + Initialisierung private static void malefeld (char feld[][]) private static int lesekoordinate() private static boolean trageein(char feld[][], int schacht, char stein) 9) Als erstes widmen wir uns der malefeld() Funktion: private static void malefeld (char feld[][]) Dabei soll das übergebene feld Zeile für Zeile durchlaufen werden. Die Funktion ist void, d.h. sie gibt nichts zurück. Die Abmessungen von feld sind durch HOEHE und BREITE gegeben. 3 Weiter sei noch gesagt, dass System.out.println() die Ausgabe mit einem '\n' abschließt, System.out.print() hingegen nicht. Sie können an die Funktionen Strings mit "" übergeben oder einzelne Character / Steuerzeichen mit einfachen Hochkommata ''. Wie bei printf eben auch. Ansonsten müssen Sie nur mit einer for-schleife feld durchlaufen und den Inhalt (angemessen formatiert, z.b. so wie in der Beschreibung zu Anfang) ausgeben. In Java ist auch die Deklaration von Variablen in der for-schleifen-definition erlaubt: for (int i=0;i<bla;i++). Ansonsten ist die Aufgabe analog zu C lösbar. Bemerkung: Geben Sie das Feld besser von HOEHE-1 bis 0 aus, so dass auch tatsächlich die Felder von unten nach oben befüllt werden. Ansonsten würde ja die 0te Zeile zuerst, dann die 1., die 2. usw. ausgegeben, sodass obige Abbildung auf dem Kopf stünde. Anmerkung: Auch in Java gäbe es printf. 10) Die zweite Funktion ist lesekoordinate(): private static int lesekoordinate() Sie soll den Benutzer so lange zu einer Eingabe auffordern, bis dieser eine gültige Eingabe liefert und diese dann zurückgeben. Gültige Eingabe bedeutet, dass die eingegebene Zahl in [1;BREITE] liegen soll. Definieren Sie 0 als Eingabe für den Abbruch des Programms. In C haben Sie gelernt: int lesekoordinate() int x=-1; do printf("bitte eine Zahl zwischen 1 und %i eingeben",breite); x = getchar(); while(getchar()!='\n' && x!='\n'); while(y-48<0 y-48>breite)) if(y-48==0) exit(0); return y-48; Eine der Möglichkeiten, um in Java von Kommandozeile einzulesen ist die System.in.read() Methode. Diese liest das erste Zeichen des Eingabestroms aus, bei nochmaligen Aufruf das zweite usw. Diese Methode ist also analog zu getchar(). Leider ist es hier aufgrund des Exception-Handlings in Java notwendig eine von System.in.read() geschmissene Exception abzufangen. Ohne sich weiter darüber Gedanken zu machen, können Sie die Methode wie folgt aufbauen: private static int lesekoordinate() int y = -1; 3 Eigentlich etwas unsauber. Man kann die Länge der Felder auch mit feld.length und feld[0].length abfragen.
6 try // Code Ihrer Funktion catch(exception e) return y; Ansonsten ist die Aufgabe analog zu C lösbar. Auch hier muss der Eingabestrom geleert werden. 11) Die letzte Funktion ist trageein(): private static boolean trageein(char feld[][], int schacht, char stein) Dabei werden Sie mit dem neuen Datentyp boolean vertraut gemacht. Dieser hat als Wertemenge lediglich true,false. In der Funktion soll versucht werden, den Spielstein stein in den durch schacht festgelegten Schacht des Spielfelds feld einzutragen. Da ja von oben in das Spielfeld geworfen wird, muss überprüft werden, ob in diesem Schacht überhaupt noch Platz ist und falls ja, muss der Stein auf dem derzeit höchsten Stein des Schachts platziert werden. Ist das Eintragen erfolgreich verlaufen, soll true zurückgegeben werden, ansonsten false. In C wäre das... int i=0; while(i<hoehe && feld[schacht][i]!=' ') i++; if(i<hoehe) feld[schacht][i] = zeichen; return 1; return 0; 12) Nachdem wir nun alle Funktionen be- und geschrieben haben, können wir zur Main-Funktion zurückkehren. Deklarieren Sie sich dort eine Variable boolean gewonnen und initialisieren Sie diese mit false, sowie eine Variable int eingabe. Fügen Sie in den bisherigen Code eine Endlosschleife while(!gewonnen) // hier den restlichen Code ein. In dieser Endlosschleife soll nun abwechselnd das gleiche passieren: - geben Sie das Spielfeld mittels des Aufrufs malefeld(feld) aus. - in einer do-while-schleife soll nun der Rückgabewert von lesekoordinate() in eingabe gespeichert werden. Als Abbruchbedingung wählen Sie den Rückgabewert true der Funktion trageein(feld,eingabe,spieler). Beachten Sie, dass der Spieler Zahlen aus [1;BREITE] eingibt, das Array feld allerdings die Schächte [0;BREITE-1] besitzt: do eingabe=...; while(trageein(...)==false); - anschließend wird wieder feld ausgegeben. - nun folgt eine weitere do-while-schleife, in der der Rechner seinen Zug macht. eingabe wird dabei mittels der Rundung zum nächsten Integer einer double Zufallszahl berechnet. Hier dürfen Sie etwas die Arbeit mit der API üben. Die Klasse Math in java.lang bietet eine Vielzahl an mathematischen Funktionen. Eine Funktion liefert eine double-zufallszahl zwischen 0 und 1, eine andere Funktion rundet ein double zum nächstgelegenen Integer und gibt diese Zahl als double zurück. Sie muss folgerichtig gecastet werden. Haben Sie die beiden Funktionen gefunden, können Sie diese hier einsetzen (wobei Math. benötigt wird): eingabe = (int) Math.RUNDEN((BREITE-1) * Math.ZUFALLSZAHL); Diese do-while-schleife hat dieselbe Abbruchbedingung wie die vorhergehende. Anschließend beginnt die Endlosschleife von vorn. Damit ist das Programm abgeschlossen. Die Endlosschleife kann mittels Strg+C abgebrochen werden. Freiwillige Zusatzaufgaben: Schreiben Sie eine Funktion private static boolean istvoll(char feld[][]), die überprüft, ob ein Spielfeld bereits voll ist. Implementieren Sie eine Funktion private static boolean hatgewonnen(char feld[][]), die überprüft, ob ein Spieler gewonnen hat. Dabei muss überprüft werden, ob waagerecht, senkrecht oder diagonal 4 oder mehr Steine vom gleichen Typ in einer Reihe liegen. Es empfiehlt sich diese Überprüfungen wiederum in eigene Funktionen auszulagern (testewaag, testesenk, testediag). Außerdem spart man sich Arbeit, wenn man nur vom aktuell gesetzten Stein aus prüft und nicht das ganze Feld. Der Zufallsgenerator ist als Gegner keine Herausforderung. Überlegen Sie sich eine lustige künstliche Intelligenz public static int ki()
Programmieren I + II Regeln der Code-Formatierung
Technische Universität Braunschweig Dr. Werner Struckmann Institut für Programmierung und Reaktive Systeme WS 2016/2017, SS 2017 Programmieren I + II Regeln der Code-Formatierung In diesem Dokument finden
MehrDieses Dokument enthält alle Teilaufgaben zur Java-Pflichtaufgabe für das Sommersemester Aufgabe 1 (Vier Gewinnt 1. Teil)
Vier Gewinnt Dieses Dokument enthält alle Teilaufgaben zur Java-Pflichtaufgabe für das Sommersemester 2008. Aufgabe 1 (Vier Gewinnt 1. Teil) Implementieren Sie eine Java-Klasse VierGewinnt1, mit einer
MehrProgrammierkurs Java
Programmierkurs Java Dr. Dietrich Boles Aufgaben zu UE16-Rekursion (Stand 09.12.2011) Aufgabe 1: Implementieren Sie in Java ein Programm, das solange einzelne Zeichen vom Terminal einliest, bis ein #-Zeichen
MehrAutor: Michael Spahn Version: 1.0 1/10 Vertraulichkeit: öffentlich Status: Final Metaways Infosystems GmbH
Java Einleitung - Handout Kurzbeschreibung: Eine kleine Einführung in die Programmierung mit Java. Dokument: Autor: Michael Spahn Version 1.0 Status: Final Datum: 23.10.2012 Vertraulichkeit: öffentlich
MehrJavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML.
JavaScript JavaScript wird direkt in HTML-Dokumente eingebunden. Gib folgende Zeilen mit einem Texteditor (Notepad) ein: (Falls der Editor nicht gefunden wird, öffne im Browser eine Datei mit der Endung
MehrPIWIN 1 Übung Blatt 5
Fakultät für Informatik Wintersemester 2008 André Gronemeier, LS 2, OH 14 Raum 307, andre.gronemeier@cs.uni-dortmund.de PIWIN 1 Übung Blatt 5 Ausgabedatum: 19.12.2008 Übungen: 12.1.2009-22.1.2009 Abgabe:
MehrEinstieg in die Informatik mit Java
Vorlesung vom 18.4.07, Grundlagen Übersicht 1 Kommentare 2 Bezeichner für Klassen, Methoden, Variablen 3 White Space Zeichen 4 Wortsymbole 5 Interpunktionszeichen 6 Operatoren 7 import Anweisungen 8 Form
MehrRepetitorium Informatik (Java)
Repetitorium Informatik (Java) Tag 6 Lehrstuhl für Informatik 2 (Programmiersysteme) Übersicht 1 Klassen und Objekte Objektorientierung Begrifflichkeiten Deklaration von Klassen Instanzmethoden/-variablen
MehrEinführung Datentypen Verzweigung Schleifen. Java Crashkurs. Kim-Manuel Klein May 4, 2015
Java Crashkurs Kim-Manuel Klein (kmk@informatik.uni-kiel.de) May 4, 2015 Quellen und Editoren Internet Tutorial: z.b. http://www.java-tutorial.org Editoren Normaler Texteditor (Gedit, Scite oder ähnliche)
MehrÜbersicht. Informatik 2 Teil 3 Anwendungsbeispiel für objektorientierte Programmierung
Übersicht 3.1 Modell Konto 3.2 Modell Konto - Erläuterungen 3.3 Benutzer Ein- und Ausgabe mit Dialogfenster I 3.4 Benutzer Ein- und Ausgabe mit Dialogfenster II 3.5 Klassen- und Objekteigenschaften des
MehrJava Programmierung auf der Konsole / unter Eclipse
Fakultät Informatik, HFU Brückenkurs Programmieren 1 Java Programmierung auf der Konsole / unter Eclipse Allgemeine Begriffe Programmiersprache: künstliche Sprache zur Notation von Programmen Programm:
MehrEinführung in den Einsatz von Objekt-Orientierung mit C++ I
Einführung in den Einsatz von Objekt-Orientierung mit C++ I ADV-Seminar Leiter: Mag. Michael Hahsler Syntax von C++ Grundlagen Übersetzung Formale Syntaxüberprüfung Ausgabe/Eingabe Funktion main() Variablen
MehrII. Grundlagen der Programmierung. 9. Datenstrukturen. Daten zusammenfassen. In Java (Forts.): In Java:
Technische Informatik für Ingenieure (TIfI) WS 2005/2006, Vorlesung 9 II. Grundlagen der Programmierung Ekkart Kindler Funktionen und Prozeduren Datenstrukturen 9. Datenstrukturen Daten zusammenfassen
MehrProbeklausur: Programmierung WS04/05
Probeklausur: Programmierung WS04/05 Name: Hinweise zur Bearbeitung Nimm Dir für diese Klausur ausreichend Zeit, und sorge dafür, dass Du nicht gestört wirst. Die Klausur ist für 90 Minuten angesetzt,
MehrProgrammiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny
Programmiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny 7. Funktionen Einleitung Nach dem Prinzip Divide and Conquer bietet es sich an, größere Aufgaben in kleinere Teile zu unterteilen. Anweisungsblöcke,
MehrDistributed Computing Group
JAVA TUTORIAL Distributed Computing Group Vernetzte Systeme - SS 06 Übersicht Warum Java? Interoperabilität grosse und gut dokumentierte Library weit verbreitet Syntax sehr nahe an C Erfahrung: Java wird
MehrAuD-Tafelübung T-B5b
6. Übung Sichtbarkeiten, Rekursion, Javadoc Di, 29.11.2011 1 Blatt 5 2 OOP Klassen Static vs. Instanzen Sichtbarkeit 3 Stack und Heap Stack Heap 4 Blatt 6 1 Blatt 5 2 OOP Klassen Static vs. Instanzen Sichtbarkeit
MehrWiederholung Wozu Methoden? Methoden Schreiben Methoden Benutzen Rekursion?! Methoden. Javakurs 2012, 3. Vorlesung
Wiederholung Wozu? Schreiben Benutzen Rekursion?! Javakurs 2012, 3. Vorlesung maggyrz@freitagsrunde.org 5. März 2013 Wiederholung Wozu? Schreiben Benutzen Rekursion?! 1 Wiederholung 2 Wozu? 3 Schreiben
MehrKapitel 3: Variablen
Kapitel 3: Variablen Thema: Programmieren Seite: 1 Kapitel 3: Variablen Im letzten Kapitel haben wir gelernt, bestimmte Ereignisse zu wiederholen solange eine Bedingung erfüllt ist. Nun möchten wir aber
MehrInformatik B von Adrian Neumann
Musterlösung zum 7. Aufgabenblatt vom Montag, den 25. Mai 2009 zur Vorlesung Informatik B von Adrian Neumann 1. Java I Schreiben Sie ein Java Programm, das alle positiven ganzen Zahlen 0 < a < b < 1000
MehrDr. Monika Meiler. Inhalt
Inhalt 5 Referenzdatentypen - Felder... 5-2 5.1 Eindimensionale Felder - Vektoren... 5-3 5.1.1 Vereinbarung... 5-3 5.1.2 Referenzen sind keine Felder... 5-4 5.1.3 Kopieren eindimensionaler Felder... 5-6
MehrEinführung in die Java- Programmierung
Einführung in die Java- Programmierung Dr. Volker Riediger Tassilo Horn riediger horn@uni-koblenz.de WiSe 2012/13 1 Wichtig... Mittags keine Pommes... Praktikum A 230 C 207 (Madeleine + Esma) F 112 F 113
MehrJavakurs für Anfänger
Javakurs für Anfänger Einheit 03: Wiederholung und Nutzereingaben Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Wiederholung Klassen, Objekte, Attribute und Methoden
MehrBeispiel: Methode mit einem Fehler. Diese Methode wird problematisch, wenn von außen eine Dauer von 0 Sekunden angegeben wird, etwa im Aufruf
16 Exceptions Zur Behandlung unerwarteter Situationen bietet Java Unterstützung in Form von Exceptions oder Ausnahmen. Den Sinn von Exceptions können wir Ihnen an einem kleinen Beispiel klarmachen. Nehmen
MehrJAVA - Methoden - Rekursion
Übungen Informatik I JAVA - Methoden - Rekursion http://www.fbi-lkt.fh-karlsruhe.de/lab/info01/tutorial Übungen Informatik 1 1 Methoden Methoden sind eine Zusammenfassung von Deklarationen und Anweisungen
Mehr3. Anweisungen und Kontrollstrukturen
3. Kontrollstrukturen Anweisungen und Blöcke 3. Anweisungen und Kontrollstrukturen Mit Kontrollstrukturen können wir den Ablauf eines Programmes beeinflussen, z.b. ob oder in welcher Reihenfolge Anweisungen
MehrEinführung Datentypen Verzweigung Schleifen Funktionen Dynamische Datenstrukturen. Java Crashkurs. Kim-Manuel Klein (kmk@informatik.uni-kiel.
Java Crashkurs Kim-Manuel Klein (kmk@informatik.uni-kiel.de) May 7, 2015 Quellen und Editoren Internet Tutorial: z.b. http://www.java-tutorial.org Editoren Normaler Texteditor (Gedit, Scite oder ähnliche)
MehrII.1.1. Erste Schritte - 1 -
! 1. Grundelemente der Programmierung! 2. Objekte, Klassen und Methoden! 3. Rekursion und dynamische Datenstrukturen! 4. Erweiterung von Klassen und fortgeschrittene Konzepte II.1.1. Erste Schritte - 1
MehrDas erste Programm soll einen Text zum Bildschirm schicken. Es kann mit jedem beliebigen Texteditor erstellt werden.
Einfache Ein- und Ausgabe mit Java 1. Hallo-Welt! Das erste Programm soll einen Text zum Bildschirm schicken. Es kann mit jedem beliebigen Texteditor erstellt werden. /** Die Klasse hello sendet einen
MehrÜbungen zur Vorlesung EidP (WS 2015/16) Blatt 6
Andre Droschinsky Ingo Schulz Dortmund, den 0. Dezember 2015 Übungen zur Vorlesung EidP (WS 2015/16) Blatt 6 Block rot Es können 4 + 1 Punkte erreicht werden. Abgabedatum: 10. Dezember 2015 2:59 Uhr Hinweise
MehrDie Programmiersprache C99: Zusammenfassung
Die Programmiersprache C99: Zusammenfassung Jörn Loviscach Versionsstand: 7. Dezember 2010, 19:30 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen in der Vorlesung. Videos dazu: http://www.youtube.com/joernloviscach
MehrJava 8. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Oktober 2014 JAV8
Java 8 Elmar Fuchs Grundlagen Programmierung 1. Ausgabe, Oktober 2014 JAV8 5 Java 8 - Grundlagen Programmierung 5 Kontrollstrukturen In diesem Kapitel erfahren Sie wie Sie die Ausführung von von Bedingungen
MehrInformatik I. Übung 2 : Programmieren in Eclipse. 5. März Daniel Hentzen
Informatik I Übung 2 : Programmieren in Eclipse 5. März 2014 Daniel Hentzen dhentzen@student.ethz.ch Downloads : http://n.ethz.ch/~dhentzen/download/ Heute 1. Nachbesprechung Übung 1 2. Theorie 3. Vorbesprechung
MehrPraktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2015/16. Vorbereitende Aufgaben
Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2015/16 Fakultät für Informatik Lehrstuhl 14 Lars Hildebrand, Marcel Preuß, Iman Kamehkhosh, Marc Bury, Diana Howey Übungsblatt
MehrModul Entscheidungsunterstützung in der Logistik. Einführung in die Programmierung mit C++ Übung 2
Fakultät Verkehrswissenschaften Friedrich List, Professur für Verkehrsbetriebslehre und Logistik Modul Entscheidungsunterstützung in der Logistik Einführung in die Programmierung mit C++ Übung 2 SS 2016
MehrRO-Tutorien 3 / 6 / 12
RO-Tutorien 3 / 6 / 12 Tutorien zur Vorlesung Rechnerorganisation Christian A. Mandery WOCHE 2 AM 06./07.05.2013 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft
Mehr620.900 Propädeutikum zur Programmierung
620.900 Propädeutikum zur Programmierung Andreas Bollin Institute für Informatik Systeme Universität Klagenfurt Andreas.Bollin@uni-klu.ac.at Tel: 0463 / 2700-3516 Arrays Wiederholung (1/5) Array = GEORDNETE
MehrJava Einführung Klassendefinitionen
Java Einführung Klassendefinitionen Inhalt dieser Einheit Java-Syntax Klassen definieren Objekte instanziieren Instanzvariable deklarieren Klassenvariable deklarieren 2 Klassen definieren In der Problemanalyse
MehrProgrammierung mit C Zeiger
Programmierung mit C Zeiger Zeiger (Pointer)... ist eine Variable, die die Adresse eines Speicherbereichs enthält. Der Speicherbereich kann... kann den Wert einer Variablen enthalten oder... dynamisch
Mehr5.4 Klassen und Objekte
5.4 Klassen und Objekte Zusammenfassung: Projekt Figuren und Zeichner Figuren stellt Basisklassen für geometrische Figuren zur Verfügung Zeichner bietet eine übergeordnete Klasse Zeichner, welche die Dienstleistungen
MehrFür die Erstellung von Javaprogrammen sind eventuell zwei Komponenten nötig. 1. Das Java-Develepment-Kit (JDK) und die 2. Java Runtime Engine (JRE)
Schritt 1: Installation des Javacompilers JDK. Der erste Start mit Eclipse Für die Erstellung von Javaprogrammen sind eventuell zwei Komponenten nötig. 1. Das Java-Develepment-Kit (JDK) und die 2. Java
MehrAccess [basics] Programmieren mit Arrays. Beispieldatenbank. Arrays. Eindimensionale Arrays. VBA-Grundlagen Programmieren mit Arrays
Dass Sie unter Access Daten in Tabellen speichern und gezielt darauf zugreifen können, wissen Sie als Access [basics]-leser schon längst. Aber was, wenn Sie nur ein paar gleichartige Daten zwischenspeichern
MehrJAVA - Methoden
Ü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
MehrBetreutes Programmieren Vorlesung Informatik II, Blatt 7 Musterlösung
SS 2011 Fakultät für Angewandte Informatik Lehrprofessur für Informatik 15.06.2011 Prof. Dr. Robert Lorenz Betreutes Programmieren Vorlesung Informatik II, Blatt 7 Musterlösung Programmieraufwand für geübte
MehrEinführung in die Java- Programmierung
Einführung in die Java- Programmierung Dr. Volker Riediger Tassilo Horn riediger horn@uni-koblenz.de WiSe 2012/13 1 Rückblick Schleifen while do-while for Methoden Verfahren: Intervallschachtelung 2 Wo
MehrHochschule Niederrhein Grundlagen der Prof. Dr. Nitsche Fachbereich 03 Java Programmierung Bachelor Informatik SS 2015 Übung 1. Grundlagen von Java
Grundlagen von Java Aufgabe 1: Typen und Zuweisungen in Java Welche der folgenden Java-Anweisungen sind fehlerhaft? Handelt es sich um einen Compiler- oder einen Laufzeitfehler? Anmerkung: Folgefehler
MehrEinführung in die Programmierung 1
Einführung in die Programmierung 1 Einführung (S.2) Einrichten von Eclipse (S.4) Mein Erstes Programm (S.5) Hallo Welt!? Programm Der Mensch (S.11) Klassen (S.12) Einführung Wie Funktioniert Code? Geschriebener
MehrProgrammiersprachen Einführung in C. Unser erstes C-Programm. Unser erstes C-Programm. Unser erstes C-Programm. Unser erstes C-Programm
Programmiersprachen Einführung in C Teil 2: Prof. Dr. int main (int argc, char *argv[]) int sum = 0; for (i = 0; i
MehrObjektorientierte Programmierung OOP Programmieren mit Java
Übungen: 6 Schleifen Objektorientierte Programmierung OOP Programmieren mit Java 1. do-schleife 2. while-schleife 3. a) c) Verschiedene for-schleifen 6 Schleifen Übungen 4. for-schleife: halber Tannenbaum
MehrElementare Datentypen in C++
Elementare Datentypen in C++ bool signed/unsigned char signed/unsigned short int signed/unsigned int signed/unsigned long int (signed/unsigned long long int) float double long double void enum char Der
MehrFachgebiet Informationssysteme Prof. Dr.-Ing. N. Fuhr. Programmierung Prof. Dr.-Ing. Nobert Fuhr. Übungsblatt Nr. 10
Gudrun Fischer Sascha Kriewel programmierung@is.informatik.uni-duisburg.de Übungsblatt Nr. 10 Aufgabe 20: Code Verständnis Löse diese Aufgabe selbständig als Vorbereitung zur Übung auf dem Papier. a) Gib
MehrÜbungspaket 29 Dynamische Speicherverwaltung: malloc() und free()
Übungspaket 29 Dynamische Speicherverwaltung malloc() und free() Übungsziele Skript In diesem Übungspaket üben wir das dynamische Alloziieren 1. und Freigeben von Speicherbereichen 2. von Zeichenketten
MehrEs ist für die Lösung der Programmieraufgabe nicht nötig, den mathematischen Hintergrund zu verstehen, es kann aber beim Verständnis helfen.
Ziele sind das Arbeiten mit Funktionen und dem Aufzählungstyp (enum), sowie - einfache Verzweigung (if else) - Alternativen switch case - einfache Schleifen (while oder do while) Aufgabe 3: Diese Aufgabe
MehrEinstieg in die Informatik mit Java
Vorlesung vom 18.4.07, Vordefinierte Datentypen Übersicht 1 Ganzzahlige Typen 2 Boolscher Typ 3 Gleitkommatypen 4 Referenztypen 5 void Typ 6 Implizite und explizite Typumwandlungen Ganzzahlige Typen Die
MehrAufgabenblatt 1: - Präsenzübung für die Übungen Do Mi Ausgabe Mi
Grundlagen der Programmierung 1 WS 2012/2013 Prof. Dr. Stefan Böttcher Aufgabenblatt 1: - Präsenzübung für die Übungen Do. 11.10.- Mi. 17.10.2012 Ausgabe Mi. 10.10.2012 1.1. Zahlen vertauschen mit wenigen
MehrCEN1112 Labor Software-Entwicklung
Dipl.-Ing. (FH) Peter Bitterlich M.Sc. Joachim Storz Fakultät für Technik STUDIENGANG MEDIZINTECHNIK CEN1112 Labor Software-Entwicklung Vorbereitungsaufgaben zu Versuch 3 C-Programmierung Vertiefung Wintersemester
MehrArbeiten mit JavaKara
Arbeiten mit JavaKara 1. Programmierumgebung Möchte man ein neues Programm erstellen, so wird einem ein Programmeditor zur Verfügung gestellt, der bereits eine vorgefertigte Schablone darstellt. In der
MehrKapitel 9: Klassen und höhere Datentypen. Klassen und höhere. Objekte, Felder, Methoden. Küchlin/Weber: Einführung in die Informatik
Klassen und höhere Datentypen Objekte, Felder, Methoden Küchlin/Weber: Einführung in die Informatik Klassen Klasse (class) stellt einen (i.a. benutzerdefinierten) Verbund-Datentyp dar Objekte sind Instanzen
MehrEine Einführung in C-Funktionen
Eine Einführung in C-Funktionen CGK-Proseminar 2014 Philip Gawehn 04.07.2014, Hamburg Inhaltsverzeichnis 1 Einleitung 2 2 Grundlagen 2 2.1 Der Aufbau einer Funktion....................... 2 2.2 Schlüsselwörter.............................
MehrEclipse Tutorial.doc
Berner Fachhochschule Hochschule für Technik und Informatik, HTI Fachbereich Elektro- und Kommunikationstechnik Labor für Technische Informatik Eclipse Tutorial 2005, HTI Burgdorf R. Weber Dateiname: Eclipse
Mehr5. Tutorium zu Programmieren
5. Tutorium zu Programmieren Dennis Ewert Gruppe 6 Universität Karlsruhe Institut für Programmstrukturen und Datenorganisation (IPD) Lehrstuhl Programmierparadigmen WS 2008/2009 c 2008 by IPD Snelting
MehrVorlesung Informatik II
Vorlesung Informatik II Universität Augsburg Wintersemester 2011/2012 Prof. Dr. Bernhard Bauer Folien von: Prof. Dr. Robert Lorenz Lehrprofessur für Informatik 02. JAVA: Erstes Programm 1 Das erste Java-Programm
MehrPHP Code Konventionen Um einen einheitlichen Code zu generieren, der von jedem gelesen werden kann, müssen folgende Konventionen eingehalten werden.
PHP Code Konventionen Um einen einheitlichen Code zu generieren, der von jedem gelesen werden kann, müssen folgende Konventionen eingehalten werden. Allgemein Ein Einzug sollte aus 4 Leerzeichen bestehen.
MehrGreenfoot: Verzweigungen
Greenfoot: Verzweigungen Nicolas Ruh und Dieter Koch Betrachten wir die act()-methode des Wombats aus dem Wombats-Szenario: Wie interpretieren Sie diesen Code? (einfach übersetzen) Falls der Wombat ein
MehrS. d. I.: Programieren in C Folie 4-1. im Gegensatz zu Pascal gibt es in C kein Schlüsselwort "then"
S. d. I.: Programieren in C Folie 4-1 4 Anweisungen 4.1 if-anweisung 1) if (Ausdruck) 2) if (Ausdruck) } else im Gegensatz zu Pascal gibt es in C kein Schlüsselwort "then" es wird nur der numerische Wert
MehrJava Einführung Methoden. Kapitel 6
Java Einführung Methoden Kapitel 6 Inhalt Deklaration und Aufruf von Methoden Lokale und globale Namen (Bezeichner) Sichtbarkeit und Lebensdauer von Variablen in Methoden Überladen von Methoden 2 Methoden
MehrEine Einführung in. für mathematisch- technische Assistenten / Informatik (IHK)
Eine Einführung in für mathematisch- technische Assistenten / Informatik (IHK) Autor: Michael Wiedau Version vom 30. August 2006 Inhaltsverzeichnis 1. Den Workspace wählen... 3 2. Ein neues Projekt erstellen...
MehrEinführung in die C-Programmierung
Einführung in die C-Programmierung Warum C? Sehr stark verbreitet (Praxisnähe) Höhere Programmiersprache Objektorientierte Erweiterung: C++ Aber auch hardwarenahe Programmierung möglich (z.b. Mikrokontroller).
Mehr1 Polymorphie (Vielgestaltigkeit)
1 Polymorphie (Vielgestaltigkeit) Problem: Unsere Datenstrukturen List, Stack und Queue können einzig und allein int-werte aufnehmen. Wollen wir String-Objekte, andere Arten von Zahlen oder andere Objekttypen
MehrFH D. Objektorientierte Programmierung in Java FH D FH D. Prof. Dr. Ing. André Stuhlsatz. Blöcke. Beispiel: Variablen in Blöcken
4 Objektorientierte Programmierung in Java Prof. Dr. Ing. André Stuhlsatz Blöcke Blöcke erweitern einzelne Anweisungen, etwa bei Kontrollstrukturen später Beispiel: Einzelne Anweisung: anweisung; Erweiterung
MehrM. Graefenhan 2000-12-07. Übungen zu C. Blatt 3. Musterlösung
M. Graefenhan 2000-12-07 Aufgabe Lösungsweg Übungen zu C Blatt 3 Musterlösung Schreiben Sie ein Programm, das die Häufigkeit von Zeichen in einem eingelesenen String feststellt. Benutzen Sie dazu ein zweidimensionales
MehrProbeklausur: Programmierung WS04/05
Probeklausur: Programmierung WS04/05 Name: Hinweise zur Bearbeitung Nimm Dir für diese Klausur ausreichend Zeit, und sorge dafür, dass Du nicht gestört wirst. Die Klausur ist für 90 Minuten angesetzt,
MehrGliederung. Tutorium zur Vorlesung. Gliederung. Gliederung. 1. Gliederung der Informatik. 1. Gliederung der Informatik. 1. Gliederung der Informatik
Informatik I WS 2012/13 Tutorium zur Vorlesung 1. Alexander Zietlow zietlow@informatik.uni-tuebingen.de Wilhelm-Schickard-Institut für Informatik Eberhard Karls Universität Tübingen 11.02.2013 1. 2. 1.
MehrKonstruktoren, Packages und Scopes
Universität Bayreuth Lehrstuhl für Angewandte Informatik IV Datenbanken und Informationssysteme Prof. Dr.-Ing. Jablonski Konstruktoren, Packages und Scopes Dipl. Inf. Manuel Götz Lehrstuhl für Angewandte
MehrHochschule Darmstadt Informatik-Praktikum (INF 1) WS 2014/2015 Wirtschaftsingenieur Bachelor 4. Aufgabe Datenstruktur, Dateieingabe und -ausgabe
Aufgabenstellung Für ein Baumkataster sollen für maximal 500 Bäume Informationen gespeichert werden, die alle nach der gleichen Weise wie folgt strukturiert sind: Nummer Bauminfo Baumart Hoehe Baum Umfang
MehrTest zu Grundlagen der Programmierung Leitung: Michael Hahsler. 21. November 2003
Test zu Grundlagen der Programmierung Leitung: Michael Hahsler 1. November 00 Name Martrikelnummer Unterschrift Bitte kreuzen Sie das Studium an, für das Sie diese Prüfung ablegen: O Bakkalaureat Wirtschaftsinformatik
MehrFH München, FB 03 FA WS 06/07. Ingenieurinformatik. Name Vorname Matrikelnummer Sem.Gr.: Hörsaal Platz
FH München, FB 03 FA WS 06/07 Ingenieurinformatik Name Vorname Matrikelnummer Sem.Gr.: Hörsaal Platz Zulassung geprüft vom Aufgabensteller: Teil I Aufg. 2 Aufg. 3 Aufg. 4 Aufg. 5 Summe Note Aufgabensteller:
MehrProf.Dr. Alfred Irber Dies ist keine Musterprüfung, sondern eine Sammlung von Aufgaben aus früheren Prüfungen "Programmieren"
Prof.Dr. Alfred Irber 7.6.2012 Dies ist keine Musterprüfung, sondern eine Sammlung von Aufgaben aus früheren Prüfungen "Programmieren" Textformatierung (30 Punkte) Schreiben Sie ein komplettes C-Programm,
MehrInformatik. Studiengang Chemische Technologie. Michael Roth WS 2012/2013. michael.roth@h-da.de. Hochschule Darmstadt -Fachbereich Informatik-
Informatik Studiengang Chemische Technologie Michael Roth michael.roth@h-da.de Hochschule Darmstadt -Fachbereich Informatik- WS 2012/2013 Inhalt Teil VII Einstieg in Java I Michael Roth (h_da) Informatik
MehrÜbungen zur Vorlesung Wissenschaftliches Rechnen I. Grundelemente von Java. Eine Anweisung. wird mit dem Wertzuweisungsoperator = geschrieben.
Eine Anweisung wird mit dem Wertzuweisungsoperator = geschrieben. Eine Anweisung wird mit dem Wertzuweisungsoperator = geschrieben. Daher ist y = x + 5.6; keine Gleichung, sondern die Anweisung den Wert
MehrSoftware Engineering Klassendiagramme Einführung
Software Engineering Klassendiagramme Einführung Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Aufgabe Erstellen Sie eine Klasse Person in Java. Jede Person verfügt
MehrJavakurs für Anfänger
Javakurs für Anfänger Einheit 07: Mehr zu Arrays Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Weitere Übungen zu Arrays Arrays und Objekte (Wetterstation) 2-Dimensionale
MehrDeklarationen in C. Prof. Dr. Margarita Esponda
Deklarationen in C 1 Deklarationen Deklarationen spielen eine zentrale Rolle in der C-Programmiersprache. Deklarationen Variablen Funktionen Die Deklarationen von Variablen und Funktionen haben viele Gemeinsamkeiten.
Mehr1 Vom Problem zum Programm
Hintergrundinformationen zur Vorlesung GRUNDLAGEN DER INFORMATIK I Studiengang Elektrotechnik WS 02/03 AG Betriebssysteme FB3 Kirsten Berkenkötter 1 Vom Problem zum Programm Aufgabenstellung analysieren
MehrKapitel 8. Programmierkurs. Methoden. 8.1 Methoden
Kapitel 8 Programmierkurs Birgit Engels Anna Schulze Zentrum für Angewandte Informatik Köln Objektorientierte Programmierung Methoden Überladen von Methoden Der this-zeiger Konstruktoren Vererbung WS 07/08
MehrObjektorientierte Programmierung. Objektorientierte Programmierung. Klasse. Objekt. Beispiel: Sportfest1. Methode. Eine Einführung mit BlueJ
Objektorientierte Programmierung Objektorientierte Programmierung Eine Einführung mit BlueJ stellt die Daten, ihre Struktur und ihre Beziehungen zueinander in den Vordergrund. Weniger im Blickpunkt: die
MehrAufgabenblatt Nr. 5 Generizität und TicTacToe
Aufgabenblatt Nr. 5 Generizität und TicTacToe 1 Generische Sortier-Methode 1.1 Aufgabe: Entwickeln einer generischen Sortiermethode für Objekte mit der Schnittstelle Comparable Ihnen ist aus der Vorlesung
MehrAKTUEL ZU JAVA 8 PROGRAMMIEREN IN JAVA. 7. Auflage. Im Internet: Alle Beispielprogramme und Lösungen
L AKTUEL ZU fritz JOBST JAVA 8 PROGRAMMIEREN IN JAVA 7. Auflage Im Internet: Alle Beispielprogramme und Lösungen 4 1 Der Einstieg in Java keinem Fall zulässig. Die Schreibweisen Hello.java für den Namen
MehrJava Kurzreferenz Für Fortgeschrittene
Java Kurzreferenz Für Fortgeschrittene 1. Initialisierung von Applets: Die Methode init Wenn ein Applet gestartet wird, werden immer zwei Methoden aufgerufen. Diese heissen init und start. Um gewisse Berechnungen
MehrWelche Informatik-Kenntnisse bringen Sie mit?
Welche Informatik-Kenntnisse bringen Sie mit? So gehen Sie vor! Lösen Sie die Aufgaben der Reihe nach von 1 bis 20, ohne das Lösungsblatt zur Hilfe zu nehmen. Der Schwierigkeitsgrad der Aufgaben nimmt
MehrProgrammieren I. Dokumentation mit Javadoc Heusch 10.4 Ratz Institut für Angewandte Informatik
Programmieren I Dokumentation mit Javadoc Heusch 10.4 Ratz 4.1.1 KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu Automatische Dokumentation Java bietet standardmäßig das Dokumentationssystem
MehrAlgorithmen und Programmierung II
Algorithmen und Programmierung II Vererbung Prof. Dr. Margarita Esponda SS 2012 1 Imperative Grundbestandteile Parameterübergabe String-Klasse Array-Klasse Konzepte objektorientierter Programmierung Vererbung
MehrPrimitive Datentypen
Primitive Datentypen 2 Arten von Datentypen: primitive Datentypen (heute) Objekte (später) Java ist streng typisiert, d.h. für jede Variable muß angegeben werden was für eine Art von Wert sie aufnimmt.
MehrSoftwareentwicklung Schrittweise Verfeinerung, Programmieren üben: Tic-Tac-Toe in Raten
Mag. iur. Dr. techn. Michael Sonntag Softwareentwicklung Schrittweise Verfeinerung, Programmieren üben: Tic-Tac-Toe in Raten E-Mail: sonntag@fim.uni-linz.ac.at http://www.fim.uni-linz.ac.at/staff/sonntag.htm
MehrVorlesung Programmieren
Vorlesung Programmieren 3. Kontrollstrukturen 04.11.2015 Prof. Dr. Ralf H. Reussner Version 1.1 LEHRSTUHL FÜR SOFTWARE-DESIGN UND QUALITÄT (SDQ) INSTITUT FÜR PROGRAMMSTRUKTUREN UND DATENORGANISATION (IPD),
MehrInformatik. Studiengang Chemische Technologie. Michael Roth Hochschule Darmstadt -Fachbereich Informatik- WS 2012/2013.
Informatik Studiengang Chemische Technologie Michael Roth michael.roth@h-da.de Hochschule Darmstadt -Fachbereich Informatik- WS 2012/2013 Inhalt Teil VIII Einstieg in Java II Michael Roth (h_da) Informatik
MehrJava Einführung Methoden in Klassen
Java Einführung Methoden in Klassen Lehrziel der Einheit Methoden Signatur (=Deklaration) einer Methode Zugriff/Sichtbarkeit Rückgabewerte Parameter Aufruf von Methoden (Nachrichten) Information Hiding
MehrUniversität Augsburg, Institut für Informatik Sommersemester 2005 Prof. Dr. Werner Kießling 15. Oktober 2005 Dr. Alfons Huhn, Timotheus Preisinger
Universität Augsburg, Institut für Informatik Sommersemester 2005 Prof. Dr. Werner Kießling 15. Oktober 2005 Dr. Alfons Huhn, Timotheus Preisinger Informatik II Hinweise: Die Bearbeitungszeit beträgt 90
MehrHochschule Darmstadt Informatik-Praktikum (INF 1) WS 2015/2016 Wirtschaftsingenieur Bachelor 5. Aufgabe Datenstruktur, Dateieingabe und -ausgabe
Aufgabenstellung Für eine Hausverwaltung sollen für maximal 500 Wohnungen Informationen gespeichert werden, die alle nach der gleichen Weise wie folgt strukturiert sind: Art Baujahr Wohnung Whnginfo Nebenkosten
MehrÜbersicht. Schleifen. Schleifeninvarianten. Referenztypen, Wrapperklassen und API. 9. November 2009 CoMa I WS 08/09 1/15
Übersicht Schleifen Schleifeninvarianten Referenztypen, Wrapperklassen und API CoMa I WS 08/09 1/15 CoMa I Programmierziele Linux bedienen Code umschreiben strukturierte Datentypen Anweisungen und Kontrollstrukturen
Mehr