Défi
Étant donné la méthode C # suivante:
private static bool Test(bool a, bool b)
{
if (a && b) return false;
if (a) if (b) return true;
return false;
}
Fournissez les valeurs a
et b
ainsi cela true
est retourné.
Condition gagnante
La première entrée qui peut fournir les arguments corrects pour que la méthode donnée soit évaluée comme true
gagnant.
programming-puzzle
c#
acteur
la source
la source
Réponses:
Cela s'imprime
True
pour moi avec l'implémentation C # fournie avec Visual Studio 2015. En fait, je ne connais aucun C #, mais j'ai pensé que j'essaierais d'écrire du code C et de voir si cela fonctionnait. J'espérais que le compilateur supposerait que True est toujours représenté comme 1 et utiliserait un ET au niveau du bit. En mode Debug, c'est bien le cas (cela fonctionnait aussi avec Release). Il utilise un ET au niveau du bit pour la première condition et deux comparaisons à zéro pour la seconde:la source