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

Cerința
Se dau două numere naturale. Dacă cele două numere au acelaşi număr de cifre, să se afle pe câte poziţii aceste cifre coincid.

Date de intrare
Programul citește de la tastatură cele două numere naturale, separate prin spații.

Date de ieșire
Programul va afișa pe ecran NU dacă cele două numere nu au acelaşi număr de cifre, respectiv DA dacă au acelaşi număr de cifre. În caz afirmativ se va afişa pe rândul următor numărul poziţiilor în care cifrele celor două numere coincid.

Restricții și precizări
cele două numere citite vor fi mai mici decât 2.000.000.000
Exemplul 1:
Intrare

2345 17825
Ieșire

NU
Explicație
Cele două numere nu au acelaşi număr de cifre.

Exemplul 2:
Intrare

102789 307786
Ieșire

DA
3
Explicație
Cele două numere au acelaşi număr de cifre, iar cifrele coincid pe trei poziţii: zeci, sute şi zeci de mii.

Răspunsuri la întrebare

Răspuns de JolieJulie
13

Salut :)


#include <iostream>

using namespace std;

int main()

{  int a,b,a1,b1,k=0,nrc1=0,nrc2=0;

   cin>>a>>b;//citim a si b

   a1=a;

   b1=b;//copiem a si b in 2 variabile

   while(a1)

   {

        if(a1>0)

         nrc1++;

       a1=a1/10; // aflam cate cifre are a

   }

   while(b1)

   {

       if(b1>0)

         nrc2++;

      b1=b1/10;//aflam cate cifre are b

   }

   if(nrc1!=nrc2)//verificam daca au acelasi nr de cifre

    cout<<"NU";

   else

       {


        while(a && b)

        { if(a%10==b%10)//aflam cate cifre identice se afla pe aceleasi pozitii

            k++;

            a=a/10;

            b=b/10;

        }

        cout<<k;

   }


}



dianaalxiliescu: multumeeeesc
JolieJulie: Cu placeeeeere
Alte întrebări interesante