#include <iostream>
using namespace std;
int main()
{
int n,x,y,s=0,p=1;
int nr,nr1;
cout<<"n=";
cin>> n ;
cout<<"x=";
cin>> x ;
cout<<"y=";
cin>> y;
while(n!=0)
{
if(n%10%x==0)
s=s+n%10;
nr++;
if(n%10<y)
p=p*(n%10);
nr1++;
}
cout<<"s="<<s<<"\n";
cout<<"nr="<<nr<<"\n";
cout<<"p="<<p<<"\n";
cout<<"nr1="<<nr1<<"\n";
}
Je peux taper une valeur pour n , x
et y
mais il ne montre aucun résultat après. Je ne sais vraiment pas quoi faire. Je pense que quelque chose ne va pas avec le cout à la fin, mais je ne peux pas vraiment comprendre quoi. J'apprécierais vraiment si quelqu'un pourrait aider parce que j'ai besoin de ceci pour un examen dans 2 jours ...Pourquoi ne pas le faire, nr, p et nr1?
Vous modifiez jamais 'n' dans la boucle. Comment deviendrait-il jamais «0» pour que la boucle se termine? Vous l'auriez trouvé très rapidement si vous utilisiez un débogueur pour parcourir le code ligne par ligne. Un débogueur est l'un des outils les plus importants dans une boîte à outils de programmeurs. –
Aussi, je soupçonne que les instructions 'if' ne feront pas ce que vous attendez d'elles non plus. Cela aurait également été découvert très rapidement si vous utilisiez un débogueur. –
Si vous entrez 'n = 0', il n'entrera pas dans la boucle while et si vous augmentez' 1', il ne sortira pas de la boucle while. Pouvez-vous expliquer ce que vous voulez accomplir? – MCG