Informatică, întrebare adresată de CuteKittyLOVE, 8 ani în urmă

Sa se genereze toate numerele din 4 cifre care sunt numere palindrom si care au suma cifrelor egala cu un numar S citit de la tastatura, algoritm in c++. VA ROG, URGENT!!! DAU COROANA, INIMI SI MA ABONEZ + TOATE PUNCTELE MELE!!!!


Sclemby06: Asta-i problema de gimnaziu? Eu am facut o rezolvare, dar la compilare se opreste dupa citire. Daca vrei ti-o pot da si schimbi tu ce ti se pare de schimbat.
CuteKittyLOVE: Mie mi-a dat-o doamna profesoara ca tema, nu am stiut sa o fac. Sunt in clasa a 5-a. Nici mie nu pre mi se pare problema de gimnaziu, dar asta e. Si mie mi se opreste dupa rezolvare la compilare.
CuteKittyLOVE: Dar da, m-ar ajuta sa mi-o dai
CuteKittyLOVE: Mulțumesc!
Sclemby06: #include
using namespace std;
int main()
{
int n,S,x,uc;
cout<<"Care este valoarea sumei?"< cin>>S;
uc=0;
x=0;
for(n==1000;n<10000 && n==!0;n++)
{
uc=uc+n%10;
x=x+1000*n+n%10;
n=n/10;
if(x==n && S==uc)
cout< }

return 0;
Sclemby06: include iostream...Nu inteleg de ce nu compileaza ce trebuie. Eu la clasa a 5-a nu faceam C++. Suna mai mult a problema mai complicata. Eu-s a opta si
Sclemby06: ...nu am facut de-astea. Foarte ciudat!

Răspunsuri la întrebare

Răspuns de gabi54t
1

Răspuns:

#include <iostream>

using namespace std;

int sum_cif(int x)

{

   int s=0;

   while(x)

   {

       s=s+x%10;

       x/=10;

   }

   return s;

}

int palindrom(int x)

{

   int cp=x, inv=0;

   while(x)

   {

       inv=inv*10+x%10;

       x=x/10;

   }

   if(cp==inv)

       return 1;

   else

       return 0;

}

int main()

{

   int s=0, i;

   cin>>s;

   for(i=1001; i<=9999; i++)

       if(palindrom(i)==1 && sum_cif(i)==s)

           cout<<i<<" ";

   return 0;

}

Explicație:

Alte întrebări interesante