Herausforderung
Mit der folgenden C # -Methode:
private static bool Test(bool a, bool b)
{
if (a && b) return false;
if (a) if (b) return true;
return false;
}
Liefern Sie die Werte a
und b
damit true
wird zurückgegeben.
Gewinnbedingung
Der erste Eintrag, der die richtigen Argumente angeben kann, damit die angegebene Methode als true
Sieger gewertet wird .
programming-puzzle
c#
Darsteller
quelle
quelle
Antworten:
Dies wird
True
für mich mit der C # -Implementierung gedruckt , die mit Visual Studio 2015 geliefert wird. Eigentlich kenne ich kein C #, aber ich dachte, ich würde versuchen, etwas C-Code zu schreiben und zu sehen, ob es funktioniert. Ich hatte gehofft, der Compiler würde annehmen, dass True immer als 1 dargestellt wird und ein bitweises UND verwenden. Im Debug-Modus ist dies tatsächlich der Fall (es hat auch mit Release funktioniert). Es wird ein bitweises UND für die erste Bedingung und zwei Vergleiche mit Null für die zweite Bedingung verwendet:quelle