Praktikum Informatik - 1

Werbung
Hochschule der Medien Stuttgart
Studiengang Audiovisuelle Medien
Praktikum Informatik - 1
Aufgabensammlung
Prof. Uwe Schulz, Prof. Dr. Simon Wiest
Sommersemester 2011
Organisation des Informatik Praktikums
1. Die Teilnahme am Praktikum ist Pflicht! Sie müssen an 80% der Termine Anwesend sein, bei 13 Terminen im
Sommersemester dürfen Sie also nur zweimal unentschuldigt fehlen.
2.
Sie können ab dem 3. Termin in jedem Praktikum den Dozenten eine Programmieraufgabe des letzten
Aufgabenblatts abgeben. Die Abnahme der Übungen erfolgt in einem kurzen Fachgespräch von jeweils ca. 10
Minuten Dauer. Für die abgegebene Übung und das Gespräch erhalten Sie eine Note.
3.
Im Laufe des Semesters werden zwei kurze Tests geschrieben. Die Note für das Praktikum ist das Mittel der drei
Einzelnoten.
4.
Vergessen Sie nicht, das Praktikum als Prüfungsleistung anzumelden! Dies geschieht online gegen Mitte des
Semesters, gemeinsam mit der Anmeldung zu den anderen Prüfungen.
Hinweise zur Installation der Programme für die Übungen
Unter www.hdm-stuttgart.de/schulz/lehre/software finden Sie die Links zu den folgenden Programmen, die Sie
benötigen, um die Übungen am eigenen Rechner durchzuführen:
Java Developer Kit JDK: Java Compiler, API Bibliothek und VM . Aktuell ist die Version 6.
www.oracle.com/technetwork/java/
Eclipse
komfortable Entwicklungsumgebung: www.eclipse.org
jdk-6-doc.zip
auch unter java.sun.com zu finden. Enthält die Dokumentation zu den standard JavaKlassen. Entpacken Sie diese Dateien auf die Festplatte, z. B. in das Verzeichnis
c:\dokumentation\javadoc, öffnen Sie die Datei index.html in einem Browser bzw. merken
Sie sich die Adresse in Ihren Favoriten (Bookmarks).
Guido Krügers Java Buch: laden Sie sich die .zip-Datei von www.javabuch.de herunter, entpacken Sie sie in ein
Verzeichnis auf Ihrem Rechner und setzen Sie in Ihrem Browser ein Lesezeichen auf die
Datei index.html im Verzeichnis html.
HDM Stuttgart, Audiovisuelle Medien
Aufgabensammlung Informatik 1, Sommer 2011
Bitte lösen Sie Aufgaben 1-6 bis zum 27.3.2011
Aufgabe 1
Lernen Sie nebenstehendes Java
Programm auswendig!
Achten Sie dabei besonders auf die Fehler,
die Ihnen unterlaufen. Häufige Fehler sind:
 fehlendes Semikolon,
 falsche Klammer, z. B. ( statt { .
public class Aufgabe1 {
public static void main (String x[ ] ) {
System.out.println(Hallo);
System.out.println (wie geht es);
}
}
Um dieses Programm auf dem Rechner zu implementieren, brauchen wir einen Java-Compiler, eine
Java-Virtual Machine (JVM) sowie eine Software zum Bearbeiten (Editieren) des Programmtextes.
Obwohl ein einfacher Text-Editor dazu völlig ausreicht, benutzen wir von Anfang an die professionelle
Entwicklungsumgebung Eclipse, die sich in den letzen Jahren stark verbreitet hat.
Das Java Develope Kit und Eclipse sind auf den Rechnern in den Übungesräumen vorinstalliert, Sie
können die Software aber auch auf Ihrem privaten Rechner zuhause nutzen.
Führen Sie jetzt die folgenden Schritte durch (zuhause beginnen Sie bei Schritt 3):
1. Melden Sie sich am System an Achtung: Im Laufe des Anmeldevorgangs erscheint ein
Fenster mit schwarzem Hintergrund (MS-DOS Eingabeaufforderung), hier muss das
Passwort nochmals eingegeben werden, ansonsten fehlt Ihre H-Disk (s. Schritt 2)!
Wer noch keinen Account besitzt setzt sich zu jemand anderem dazu.
2. Starten Sie den Windows Datei-Explorer und stellen Sie fest, ob eine Disk H: existiert (wenn
nicht: abmelden und nochmals anmelden, s. Schritt 1).
3. Starten Sie Eclipse (Start ->Programme->Eclipse)
4. Klicken Sie die „Welcome to Eclipse“-Seite weg.
5. Legen Sie ein neues Java-Projekt an (auf File->New->JavaProject oder auf File->New->Project
klicken und dort Java Project auswählen). Nennen Sie das Projekt informatik1. Falls Sie in den
Übungsräumen der Hochschule sind, gibt’s es im Verzeichnis H:\eclipse jetzt das
Unterverzeichnis informatik1.
6. Um die Klasse Aufgabe1 zu erzeugen, klicken Sie auf File->New->Class und geben Sie als
Name der Klasse Aufgabe1 ein.
7. Tippen Sie in das Eingabefenster das obige Programm ein.
8. Speichern Sie das Programm ab (File->Save oder die Tastenkombination Strg-s). Dabei wird es
übersetzt und eventuelle Fehler werden angezeigt. Fehlermeldungen erscheinen im unteren
Fenster von Eclipse unter Problems. Beseitigen Sie alle Fehler in Ihrem Programm.
9. Führen Sie das Programm aus. Dazu klicken Sie entweder auf die Schaltfläche mit dem weißen
Dreieck im grünen Kreis oder Sie rufen mit der rehten Maustaste das kontextmenü auf und
wählen „Run as  Java Application“. Ihr Programm wird sofort ausgeführt. Es öffnet sich ein
Fenster mit dem Titel Console in dem die Ausgabe Ihres Programmes erscheint:
Hallo
wie geht es
Gratulation: Sie haben soeben Ihr erstes Java-Programm geschrieben und ausgeführt!
10. Wenn Sie Ihr Programm nochmals ausführen wollen, müssen Sei nur auf die Schaltfläche mit
dem weißen Dreieck im grünen Kreis Klicken. Das zuletzt ausgeführte Programm wird dabei
wieder gestartet.
2
HDM Stuttgart, Audiovisuelle Medien
Aufgabensammlung Informatik 1, Sommer 2011
11. Öffnen Sie die Java Dokumentation im Web Browser (java.sun.com/javase/6/docs/api). Diese
Dokumentation können Sie sich auch auf Ihren Rechnre herunterladen um sie jederzeit lesen zu
können (Details finden Sie auf meiner Homepage).
12. Versuchen Sie herauszufinden, von welchem Typ das Objekt System.out ist.
Hinweis: Sie können entweder out in der der Klasse System, oder über den Index der API
Beschreibung die Methoden print() und println() suchen.
Aufgabe 2
Finden Sie die Fehler in untenstehendem Java Programm und führen Sie es aus.
Was ist die Bedeutung der Zeichenfolge \n?
Schauen Sie in der Java API Dokumentation nach, was die Methoden print() und println() machen und
was der Unterschied zwischen println() und print() ist.
Um das Programm zu starten, führen Sie die Schritte 9 bzw. 10 aus Aufgabe 1 erneut durch.
public class Aufgabe2 {
public static void main (String x ) {
System.out.println(Hallo);
System.out.print (wie \ngeht \nes)
}
}
Aufgabe 3
die Klasse String
Testen Sie folgendes Java Programm.
Von welchem Typ ist die Variable tier?
Was bewirkt der Operator + bei Strings?
Lesen Sie die Einleitung zur Klasse String in der Java API Dokumentation aufmerksam durch und lesen
public class Aufgabe3 {
public static void main (String x[] ) {
String tier = "Die Kuh";
System.out.println(tier + " ist uebern Fence gejumpt\n");
System.out.print("und hat dabei den Benz gerammt\n");
}
}
3
HDM Stuttgart, Audiovisuelle Medien
Aufgabensammlung Informatik 1, Sommer 2011
Aufgabe 4
Schreiben Sie ein Java Programm, welches als Ausgabe das Java Programm aus Aufgabe 1 erzeugt. Die
Schwierigkeit liegt darin, ein Hochkomma (")auszugeben! Schlagen Sie z. B. im Javabuch von Guido
Krüger (www.javabuch.de) in Kapitel 4.2.2 nach, wie man ein Hochkomma innerhalb eines Strings
angibt.
Aufgabe 5
Schreiben Sie eine Java Klasse, welche zusätzlich zur Methode main die statische
Methode zeichneDreieck(), enthält.. Diese Methode soll die nebenstehende
Ausgabe erzeugen, (durch vier Aufrufe der Methode System.out.println). Rufen
Sie die Methode zeichneDreieck in main.
Rufen Sie die Methode zeichneDreieck mehrfach auf, um mehrere Dreiecke
hintereinander zu zeichnen.
|
*
| ***
| *****
| *******
Aufgabe 6
Programme, die nur Text ausgeben sind nicht zeitgemäß. Wir schreiben deshalb Windows-basierte
Programme, wie sie heute üblich sind. Das ist zwar anspruchsvoller, macht aber mehr Spaß.
Geben Sie folgendes Programm ein, übersetzen Sie es und führen sie es aus:
/ erstes Java Swing-Beispiel
import javax.swing.*;
import java.awt.*;
public class Aufgabe6 extends JFrame{
public static void main(String[] args) {
new Aufgabe6();
}
public Aufgabe6(){
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
this.setTitle("Hello World");
this.setSize(200,150);
this.setVisible(true);
}
}
Dieses Programm erzeugt ein Objekte vom Typ Aufgabe6, der von JFrame abgeleitet ist und legt einige
Eigenschaften dieses Ojekts fest.
Wichtig: Schlagen Sie die Klasse JFrame und dort die Methoden setTitle, setSize und setVisible nach und
versuchen Sie, deren Funktion so weit wie zur Zeit möglich zu verstehen.
b) Fügen Sie folgende Zeilen vor this.setVisible() ein und führen Sie Ihr Programm aus:
JButton knopf = new JButton("Do not push!");
Container cp = this.getContentPane();
cp.add(knopf);
4
|
|
|
|
HDM Stuttgart, Audiovisuelle Medien
Aufgabensammlung Informatik 1, Sommer 2011
Was Sie nach der zweiten Semesterwoche wissen sollten

Ein Java Programm ist ein Text, der mit einem Editor bearbeitet und in einer Datei mit der
Endung .java abgespeichert wird.

Der Java Compiler liest diesen Text und erzeugt daraus Dateien mit der Endung .class. Der
Java Compiler ist Teil des Java SDK (Software Development Kit).

Der Java Interpreter (Java Virtual Machine) führt diese Dateien aus. Der Interpreter ist Teil des
JRE (Java Runtime Environment). Ein Mini-JRE ist in jedem Web-Browser enthalten.

In einer .java Datei stehen eine oder mehrere Klassen. Genau eine dieser Klassen ist öffentlich
(public) und heißt so wie der Dateiname (ohne die Endung .java). Vor den Klassen stehen
eventuell noch import Anweisungen, die eine verkürzte Schreibweise für Klassen ermöglichen.

In einer Klasse stehen eine oder mehrere Methoden. Enthält die öffentliche Klasse in einer .java
Datei die Methode main, kann die Datei mit dem Interpreter ausgeführt werden. Der Kopf der
Methode main muss exakt "public static void main(String[ ] ...)" heißen.

Die Anweisungen im main Programm werden in ihrer Reihenfolge (von oben nach unten)
ausgeführt. Eine Folge von Anweisungen, die nacheinander ausgeführt werden nennt man
Sequenz. Später werden wir noch die Schleife und die Verzweigung als weitere
Kontrollstrukturen kennen lernen.

Eine Methode besteht aus mehreren Anweisungen, die nacheinander ausgeführt werden. Die
Ausführung einer Anwendung beginnt mit der ersten ausführbaren Anweisung der Methode
main.

Das Java Software Developer Kit (JDK) bietet
sehr viele Standardklassen im sogenannten
Application Programmers Interface (API). Die
(englische) Beschreibung dieser Klassen gehört
zu den wichtigsten Unterlagen beim
Programmieren mit Java. Sie finden sie unter
http://java.sun.com/javase/6/docs/api/

Mit new wird ein neues Objekt erzeugt, dabei
wird ein Konstruktor der Klasse gerufen.
Die Anweisung JFrame f = new
JFrame(); erzeugt somit ein neues Objekt vom Typ javax.swing.JFrame.

Lassen Sie sich durch die komplizierte API Beschreibung und durch die Tatsache, dass Sie vieles
noch nicht verstehen, nicht entmutigen!
5
Herunterladen