In dieser Aufgabe geht es darum, für ein digitales Schloss den passenden Schlüssel zu finden. Dabei werden sowohl Schloss als auch Schlüssel durch eine Integer-Variable repräsentiert (genauer gesagt die Binärrepräsentation). Damit ein Schlüssel zu einem Schloss passt, muss der Schlüssel an Stellen, an denen 0-en im Schloss zu finden sind, eine 1 aufweisen. Das Gleiche gilt im Gegenzug für die 1-en. Also muss der Schlüssel das bitweise Komplement des Schlosses sein.
Schlüssel: 010001110
Schloss: 101110001
Die Schwierigkeit besteht nun darin, dass der Aufbau des Schlosses nicht bekannt ist. Es muss also probiert werden. Dieses kann mit einer Funktion checkKey(....) geschehen. Sie nimmt einen Schlüssel, testet ihn am Schloss und liefert die Anzahl der richtigen Bits als Rückgabewert. Falls der richtige Schlüssel gefunden ist, wird eine entsprechende Meldung ausgegeben.
das heißt ich gebe zum Beispiel 3 ein wandle sie in binär umwandeln und dan das Komplement bilden oder was