L'opérateur "&& " ne peut pas être appliquée à des opérandes de type 'int' et 'bool'
im essayant de trouver un numéro entré est à la fois divisible par 9 et 13 ans, mais il ne me laissera pas l'utilisation de l'opérateur dont j'ai besoin, je sais que les types de variables sont mauvais, mais je ne sais pas comment faire en sorte que les types de variables sont acceptés, im nouveau à codage peut donc la réponse est aussi simple que possible, sans prendre la pisse
public bool IsFizzBuzz(int input)
{
if ((input % 9) && (input % 13) == 0)
{
return true;
}
else
{
return false;
}
}
- quelque chose comme
if((input%9 == 0) && (input%13==0))
- Quelque chose à penser pour l'avenir... Regardez ce que vous faites - vous savez ce que
%
fait (ou ce qu'il semble), donc vous savez que ceinput%9
a à évaluer à quelque chose, si vous avez besoin d'évaluer ce que vous pensez qu'il va évaluer (dans ce cas, 0)
Vous devez vous connecter pour publier un commentaire.
Depuis
==
de l'opérateur a une priorité plus élevée que&&
de l'opérateur, votre si les déclarations calcule d'abord;partie et qui renvoie
true
oufalse
dépend de votreinput
. Et si votre déclaration sera comme;depuis
input % 9
expression renvoieint
, à la fin, si votre déclaration sera;et de logique ET de sens entre
int
etbool
variables.De
&&
Opérateur (Référence C#)Vous dit;
Alors vous devriez les utiliser comme de l';
Tu ne peux pas comparer les deux crochets à l'déclarations contre une comparaison que vous avez à faire quelque chose comme ce qui suit.
C'est parce que la
&&
opérateur a une priorité plus élevée que la==
de l'opérateur, de sorte que la déclaration est évalué comme suit:Pas comme cela: