Afisati toate nr.palindrom din intervalul inchis [a,b].
Răspunsuri la întrebare
Răspuns de
2
In primul rand, r este egal cu 0 la tine, dar trebuie sa il faci mereu sa fie 0, pt ca atunci cand va intra in primul while, el isi va modifica valoarea de la una nula la una nenula... deci r trebuie golit mereu
De asemenea, de ce ai scris acolo n = n / 10?
si cred ca nu ai nici biblioteca pusa... XD
Uite aici rezolvarea corectata:
#include <iostream>using namespace std;
int main(){int a, b, k = 0, r = 0, copie, n; cout<<"a="; cin>>a; cout<<"b="; cin>>b; for(n = a; n <= b; n++){ r = 0;copie = n;while(copie){r = r * 10 + copie % 10;copie = copie / 10;}if(n == r)k++;}cout<<"Intervalul inchis [a,b] are "<< k <<" numere palindroame"<<endl;}
De asemenea, de ce ai scris acolo n = n / 10?
si cred ca nu ai nici biblioteca pusa... XD
Uite aici rezolvarea corectata:
#include <iostream>using namespace std;
int main(){int a, b, k = 0, r = 0, copie, n; cout<<"a="; cin>>a; cout<<"b="; cin>>b; for(n = a; n <= b; n++){ r = 0;copie = n;while(copie){r = r * 10 + copie % 10;copie = copie / 10;}if(n == r)k++;}cout<<"Intervalul inchis [a,b] are "<< k <<" numere palindroame"<<endl;}
Alte întrebări interesante
Engleza,
8 ani în urmă
Limba română,
8 ani în urmă
Biologie,
8 ani în urmă
Limba română,
9 ani în urmă
Limba română,
9 ani în urmă
using namespace std;
int main()
{
int a,b,k=0,r=0,copie,n;
cout<<"a="; cin>>a;
cout<<"b="; cin>>b;
for(n>=a;n<=b;n++)
{
copie=n;
while(copie)
{
r=r*10+copie%10;
copie=copie/10;
}
if(n==r)
k++;
n=n/10;
}
cout<<"Intervalul inchis [a,b] are"<< k <<"numere palindroame"<<endl;
}