Files
courses/2023_Informatik_b/1/tut.md
T
2024-11-14 13:11:04 +01:00

1.6 KiB

Aufgabe 1: C++

1.

Betrachten Sie die Datei tut1.cpp aus dem Whiteboard und kompilieren Sie diese mit

g++ -std=c++14 -Wall -Wextra -Werror -pedantic tut1.cpp -o tut1.

2.

Verändern Sie die erste Zeile die ausgegeben wird zu einer beliebigen anderen Nachricht. Aktuell zählt das Programm bis 9 hoch. Passen Sie es so an, dass es bis 15 zählt.

tut1.cpp

Aufgabe 2: Abwägen

Vor Ihnen liegen 12 Rollen mit 1-Euro-Münzen, die Rollen sind durchnummeriert von 1 bis 12. Genau eine Rolle enthält Falschgeld und hat deswegen ein anderes Gewicht. Ihre Aufgabe ist es mittels einer Balkenwaage festzustellen, welche der Rollen das Falschgeld enthält und ob diese leichter oder schwerer ist als eine normale Rolle.

1.

Sie dürfen nur jeweils eine Rolle gegen eine andere abwägen. Beschreiben Sie ein Verfahren, das möglichst wenige Vergleiche verwendet. Wie viele sind das im schlechtesten Fall und warum geht es nicht besser?

Nimm eine Referenzrolle und wiege alle gegen diese. 1 davon wiegt mehr oder weniger, dann weis man welche es ist.

Min: 1 Versuch Max 11 Versuche

2.

Sie dürfen mehrere Rollen gegeneinander wägen. Jetzt reichen 3 Vergleiche aus! Beschreiben Sie ein solches Verfahren. Hinweis: Beginen Sie mit vier Rollen auf jeder Seite. Der schwierige Fall tritt bei Ungleichheit ein, da Sie dann noch acht Verdächtige haben. Wählen Sie in diesem Fall aus diesen acht Verdächtigen sechs aus und verteilen Sie diese geschickt auf der Waage.

4_1 zu 4_2

wenn gleich{ 4_3 aufteilen 2 zu 2 1 zu 1 }

wenn ungleich:{ fahre fort 2 zu 2 1 zu 1 }