Ideen für vertiefende Übungen

Aus diversen Gesprächen mit Euch wissen wir, dass viele gerne noch ein wenig mehr Übungsmaterial hätten, um anhand von kleinen Aufgaben den Vorlesungstoff vertiefen zu können.

Deshalb geben wir Euch nachstehend einige Vorschläge für Aufgaben, mit denen Ihr Euch freiwillig beschäftigen könnt.

Diese Aufgaben werden im Rahmen des Repetitoriums, das wir voraussichtlich am Donnerstag, dem 10.06.2010 im Anschluß an die Übungen anbieten, besprochen.

Bitte beachtet: Hilfestellungen und Lösungen stellen wir für diese Aufgaben nicht zur Verfügung, da wir uns wünschen, dass Ihr Euch gegenseitig helft und unterstützt. Von der daraus resultierenden Diskussion unter Euch erwarten wir für Euch positive Lerneffekte.

Aufgabenvorschlag 1: Mulitplikation durch Addition

Schreibt ein Programm, das von der Standardeingabe zwei ganze Zahlen (a und b) liest. Das Programm soll dann durch b-faches Addieren von a das Produkt von a und b errechnen und ausgeben.

Aufgabenvorschlag 2: Buchstabenhäufigkeit bestimmen

Schreibt ein Programm, das von der Standardeingabe ein Wort (d.h. einen String) sowie ein einzelnes Zeichen einliest. Dann soll das Programm ermitteln und ausgeben, wie oft das Zeichen im eingelesenen String vorhanden ist. (Beispiel: Die Eingabe "Mississippi" und 's' führt zur Ausgabe von 4, da im Wort Mississippi der Buchstabe 's' 4-mal vorkommt.)

Aufgabenvorschlag 3: Umsetzung eines gegebenen Algorithmus in Java

Gegeben ist folgender umgangssprachlich beschriebener Algorithmus:

  1. Zu Beginn werden in die Variablen x und y zwei ganze Zahlen eingelesen. Sollte eine der beiden oder auch beide Zahlen kleiner oder gleich Null sein, so wird der Algorithmus beendet; ansonsten wird weitergemacht.
  2. Jetzt wird die Differenz zwischen der ersten (x) und der zweiten Zahl (y) gebildet und in der Variablen d abgelegt.
  3. Solange diese Differenz (also Wert der Variablen d) ungleich Null ist, wird entweder der Wert von x oder der von y nach folgender Maßgabe neu belegt:
    • wenn x > y, so wird x mit dem Wert von d belegt,
    • ansonsten wird y mit dem Produkt aus d und -1 neu belegt (kurz: y = -d)
    Danach wird der Wert von d wie in 2) erneut berechnet.

Schreiben Sie ein Java-Programm, das diesen Algorithmus umsetzt!

Aufgabenvorschlag 4: Ein kleines Programm für das EVA-Prinzip

Schreiben Sie ein Java-Programm, das eine beliebige Anzahl ganzer Zahlen einliest, jede davon sofort wieder ausgibt mit der Zusatzinformation "gerade" oder "ungerade", je nachdem ob die Zahl eine gerade oder ungerade Zahl ist. Hinweis: der Modulo-Operator (%) koennte hilfreich sein!

Aufgabenvorschlag 5: Potenzrechnung

Die Berechnung der n-ten (n > 0, ganzzahlig) Potenz einer reellen Zahl a kann nach folgendem Algorithmus berechnet werden:

  1. man setze p = 1;
  2. solange n groesser als 0 ist:
    • wenn n ungerade, so setze man p = p * a, n = n - 1,
    • ansonsten setze man a = a * a, n = n / 2;
In p ist nun das Ergebnis a hoch n enthalten!

Schreibt ein Programm, das diesen Algorithmus umsetzt.

Aufgabenvorschlag 6: Zinsrechnung I

Schreiben Sie ein Java-Programm, das ein Kapital (double) sowie einen Zinssatz in Prozent von Hundert (double) sowie eine ganze positive Zahl (Anzahl von Jahren) einliest. Berechnen Sie das Kapital, das bei jaehrlicher Verzinsung des eingegebenen Kapitals zum angegebenen Zinssatz nach der angegebenen Zahl von Jahren entsteht! Die jeweiligen Zinsen werden dem Kapital zugeschlagen, der Zinssatz bleibt unveraendert!

Aufgabenvorschlag 7: Zinsrechnung II

Schreiben Sie ein Java-Programm, das ein Kapital (double) sowie einen Zinssatz in Prozent von Hundert (double) sowie eine ganze positive Zahl (Anzahl von Jahren) einliest. Berechnen Sie das Kapital, das angelegt werden muss, damit bei jaehrlicher Verzinsung das eingegebene Kapital zum angegebenen Zinssatz nach der angegebenen Zahl von Jahren entsteht! Die jeweiligen Zinsen werden dem Kapital zugeschlagen, der Zinssatz bleibt unveraendert!

Aufgabenvorschlag 8: Kleinstes gemeinsames Vielfaches

Schreiben Sie ein Java-Programm, dass das kleinste gemeinsame Vielfache zweier ganzer, positiver Zahlen bestimmt.

Aufgabenvorschlag 9

In einem Text sind zwei und mehr aufeinanderfolgende Grossbuchstaben enthalten. Erstellen Sie ein Java-Programm, dass die Anzahl dieser Folgen bestimmt!

Aufgabenvorschlag 10

In einem Text sind Ziffernfolgen enthalten. Schreiben Sie ein Java-Programm, das die Laenge der laengsten dieser Folgen bestimmt!