Ecrivez une fonction nommée containsDigit
qui détermine si un nombre contient un chiffre particulier.Déterminer si un nombre contient un chiffre pour l'affectation de classe
L'en-tête doit ressembler à:
bool containsDigit(int number, int digit);
Si le numéro contient chiffres, la fonction devrait revenir true
. Sinon, la fonction doit renvoyer false
.
Input:
147 9
Output:
false
Je ne sais pas pourquoi je reçois toujours faux quand j'écris comme ceci:
bool containsDigit(int number, int digit);
int main() {
double con;
int number, digit;
cout << "Input a number and a digit:\n";
cin >> number >> digit;
con = containsDigit(number, digit);
cout << con;
return 0;
}
bool containsDigit(int number, int digit) {
int a(0), b;
b = number;
while (number > 0) {
a = a + 1;
number = number/10;
}
cout << a;
while (a > 1) {
a = a - 1;
if (b/pow(10, a) == digit) {
cout << "true\n";
break;
} else {
if (a == 1)
cout << "false\n";
else
cout << "";
}
b = b % pow(10, a);
}
}
Vous souvenez-vous comment diviser un nombre en chiffres individuels avec une boucle? Fais ça. Chaque fois que vous obtenez un chiffre, vérifiez s'il correspond à celui que vous recherchez. Si vous arrivez à la fin de la boucle, alors non, le numéro ne contient pas le chiffre. –
Ce site web n'est pas un devoir. S'il vous plaît montrer quelques efforts pertinents de votre part. – P0W
Ce n'est pas un problème de poser des questions liées aux devoirs. Mais l'effort minimum que vous devez montrer est de formater la question, et de montrer du code que vous avez créé pour résoudre le problème, et d'expliquer quel était votre problème pour résoudre le problème. –