Lehrzeit

Schule & Informatik

Kategorie: Aufgaben (Seite 2 von 32)

Programmieraufgabe 91

Wie versprochen kommt hier nun eine Programmieraufgabe MIT Lösung – wobei ich schon gar nicht mehr weiß, ob ich diese Aufgabe nicht schon mal gestellt habe..

Aufgabe

Erstelle ein Programm zur Verwaltung der Fahrzeuge auf einer Fähre mit Hilfe der Datenstruktur  Warteschlange. Benutze bei der Implementierung das Kompositum-Entwurfsmuster – keine ArrayLists oä. Achte auf eine Trennung von Struktur und Inhalt.

Weiter soll es eine Methoden geben, die das Gesamtgewicht aller Fahrzeuge durch Ausnutzung der rekursiven Datenstruktur berechnet.

Das zugehörige Klassendiagramm in BlueJ sieht wie folgt aus, allerdings habe ich unnötige Verbindungen in der Darstellung gelöscht, um die prinzipielle Struktur besser hervorzuheben.

fahere

Die Trennung zwischen Struktur und Inhalt (oben und unten) lässt sich gut erkennen und ist ja mit ein Ziel dieses Entwurfmusters.

Selbstverständlich kann man die Aufgabe noch beliebig erweitern:

  • Sitzplätze zählen,
  • Sortieren der Elemente,
  • Suchen von Elementen,
  • Implementierung als Stapel,
  • Gruppieren der Elemente (Clustering) etc.
  • GUI

Und hier nun der versprochen Lösungsansatz ohne Berücksichtigung der Erweiterungsmöglichgkeiten: faehrefinal

Programmieraufgabe 89

So, die erste Schulwoche ist vorüber und nächste Woche bin ich 1 Woche auf Fortbildung zum Thema „Netzwerksicherheit und Datenschutz“. Nachdem wir nun den zweiten iPad-Koffer haben, muss möchte ich mich da einfach fortbilden, um nicht irgendwelche Fallen und Probleme zu übersehen. Regelmäßig SemperVideo zu schauen, hilft zwar, aber ich möchte noch mehr zum Themenbereich Schule wissen.

Damit meine elfte Klasse die Zeit solange nutzen kann, habe ich ihnen die erste Junioraufgabe des aktuellen Bundeswettbewerbs Informatik gegeben: Die Luftballonverpackungsmaschine.

Aufgabe

Aus 10 Fächern, in denen zufäälig zwischen 2  und 20 Luftballons liegen, sollen soviele Fächer ausgewählt werden, dass die Summe möglichst 20 ergibt. Ist 20 nicht möglich, so sollen es möglichst wenige Luftballons sein.

Die Mindestanzahl von 2 ist meine Anpassung, um den Fall, dass sich nicht mindestens 20 Luftballons bilden lassen, auszuschließen. Das halte ich in der Realität zwar für unwahrscheinlich, aber halt nicht für unmöglich. Aber die Aufgabe bezieht sich auf das Öffnen der richtigen Fächer und nicht auf das sinnvolle Befüllen.

Ausnahmsweise habe ich die Lösung schon mal programmiert (Dauer 30 Minuten für einen simplen Ansatz; ca. 2 Stunden für eine komplexere Lösung). Die Ergebnisse sehen dann bei mir so aus:

    Fächer: 20 7 11 16 7 7 10 11 17 10 
    Es lässt sich bilden: 20
    Nach der Entnahme: 0 7 11 16 7 7 10 11 17 10

Oder auch so:

    5 18 11 16 7 7 18 11 17 9 
    20
    5 18 0 16 7 7 18 11 17 0

Hier wurde nun das dritte und letzte Fach kombiniert,

Leider darf ich keinen Lösungshinweis geben. Ich werde aber, wenn es dann irgendwann erlaubt ist und ich es bis dahin nicht vergessen habe, eine Lösung präsentieren.

Programmieraufgabe 88

Die erste Schulwoche steht bevor und daher ist es auch wieder Zeit für die erste Programmieraufgabe.

In den Ferien fand ich beim Bummeln das Buch Der Moral-o-mat.

IMG_5896IMG_5895

Eine implementierte Version des Buchs dient entweder wunderbar als Auffrischung in der 11. Jahrgangsstufe oder auch als Einstieg in die 12. Jahrgangsstufe und den Themenkomplex „Formale Sprache“. Im zweiten Fall sollte dann mehr auf die Art und Weise, wie die Zeichenketten formuliert sein müssen, eingegangen werden.

Aufgabe

Realisiere eine Programm, dass eine dem Moral-o-mat-ähnliche Funktion aufweist. Hierbei werden aus drei Feldern oder Listen jeweils per Zufall ein Element entnommen und verkettet.

Wer sich das Buch bei Amazon anschaut, wird merken, dass es noch eine ganze Reihe ähnlicher Bücher gibt, die man ja wunderbar als Transferaufgabe nehmen kann.

Und wer es noch ein wenig anspruchsvoller mag, der kann das ganze auch grafisch umsetzen. Wie bei dem Buch Das Animalarium.

IMG_5892 IMG_5893

Ältere Beiträge Neuere Beiträge

© 2017 Lehrzeit

Theme von Anders NorénHoch ↑