i

Testaufgaben

Beachte wieder die allgemeinen Hinweise zu Programmtests, die du unter dieser Seitefindest.

Aufgabe 1: Teiler finden

Entwickle ein Programm, bei dem der Benutzer eine natürliche Zahl $n>1$ eingibt und das Programm anschließend nacheinander alle Zahlen ausgibt, die Teiler von $n$ sind. Beachte dabei, dass die 1 und $n$ selbst auch Teiler von $n$ sind.

Hier kannst du deinen Code testen:

Aufgabe 2: Logarithmus berechnen

Entwickle ein Programm, welches den Logarithmus einer natürlichen Zahl $x$ zu einer natürlichen Basis $b$ berechnet. $x$ und $b$ werden in dieser Reihenfolge vom Benutzer eingegeben. Der gesuchte Logarithmus ist somit die größte natürliche Zahl $n$, sodass $b^n \leq x$. Du kannst davon ausgehen, dass der Benutzer kein $b \leq 1$ und kein $x \lt 1$ eingibt. Nach Berechnung des Logarithmus soll $n$ als ganze Zahl ausgegeben werden. Verwende als mathematische Operationen in deinem Programm ausschließlich die Addition und die Multiplikation.

Hier kannst du deinen Code testen:

Aufgabe 3: Eine besondere Zahlenfolge

Für eine natürliche Zahl $n$ wende nacheinander folgende Regeln an:

  1. Ist $n$ durch 3 teilbar, dann erhöhe $n$ um 4.
  2. Ist $n$ nicht durch 3, aber durch 4 teilbar, dann halbiere $n$.
  3. Ist $n$ weder durch 3 noch durch 4 teilbar, dann verringere $n$ um 1.
Diese Regeln sollen solange angewandt werden, bis $n$ gleich 0 ist.

Beispiel: Für $n=5$ ergeben sich folgende Schritte: $5 \rightarrow 4 \rightarrow 2 \rightarrow 1 \rightarrow 0$. Insgesamt werden hier 4 Schritte benötigt.

Entwickle ein Programm, welches vom Benutzer eine untere Grenze $a$ und eine obere Grenze $b$ als Eingabe bekommt und für jedes $n$ von $a$ bis $b$ die Anzahl der Schritte bestimmt und zusammen mit dem jeweiligen $n$ ausgibt.

Beispiel: Die Eingabe

1
5
führt zur Ausgabe
1 -> 1
2 -> 2
3 -> 12
4 -> 3
5 -> 4

Hier kannst du deinen Code testen:

Aufgabe 4: Warteschlange in der Caféteria

Du sollst ein Programm entwickeln, um die Länge der Warteschlange in der Schulcaféteria während der großen Pause zu simulieren. Hierfür verwenden wir Zufallszahlen, die notwendigen Informationen findest du hier.

Zur Vereinfachung der Simulation machen wir folgende Annahmen:

  1. Pro Minute werden 5 Essen ausgegeben.
  2. Schüler kommen nur zu jeder vollen Minute an, nicht dazwischen.
  3. Die Anzahl der hinzukommenden Schüler nimmt konstant ab: Am Anfang stellen sich 15 Schüler an, nach einer Minute 14, nach zwei Minuten 13, ...
  4. Zu Beginn der Pause ist die Schlange leer.

(a) Schreibe ein Programm, das die Länge der Schlange über eine Zeit von 20 Minuten simuliert. Nach jeder Minute soll die Anzahl der anstehenden Schüler in folgender Form ausgegeben werden:

Minute 1 : 24 Schüler
Minute 2 : 32 Schüler
        ...

Hier kannst du deinen Code testen:

(b) Modifiziere dein Programm aus (a) so, dass der Benutzer beim Start nacheinander folgende Eingaben tätigen kann:

  1. Die Zeit (in Minuten), die simuliert werden soll
  2. Die Geschwindigkeit der Essensausgabe (Essen pro Minute)
  3. Die Anzahl der Schüler, die sich nach der ersten Minute anstellen
  4. Die Rate, um wie viel die Anzahl der anstellenden Schüler pro Minute abnimmt (in (a) beträgt diese 1)
Die Ausgabe soll nach dem gleichen Muster erfolgen wie zuvor. Beachte, dass es im Sinne der Simulation keinen Sinn macht, wenn die Anzahl hinzukommender Schüler negativ wird. Diesen Fall musst du entsprechend behandeln. Eine negative Schlangenlänge (wenn mehr Essen ausgegeben werden als Schüler in der Schlange stehen) ist hingegen erlaubt.

Hier kannst du deinen Code testen:

Suche

v
2.4.2.5.5
www.inf-schule.de/programmierung/imperativeprogrammierung/konzepteimp/wiederholungen/test
www.inf-schule.de/2.4.2.5.5

Rückmeldung geben