Informatică, întrebare adresată de Krisstyna98, 9 ani în urmă

Salutare!

Am rezolvarea unei probleme, dar nu inteleg o etapa din ea, anume de ce este nevoie sa mai declaram inca doua variabile x1 si y1, care se atribuie x1=x si y1=y. Sper ca puteti sa ma lamuriti.

Se citesc de la tastatură n (n<=100) numere întregi de cel mult 4 cifre fiecare. Să se determine câte perechi
de numere consecutiv citite au suma cifrelor primului număr egală cu suma cifrelor celui de-al doilea număr. ( n=7 şi şirul 45, 334 1216, 23, 5, 50, 78 se obţine valoarea 3).

int main()
{
cout<<"Dati dimensiunea sirului ";cin>>n;
i=1;
cout<<"Dati valoarea elementului "< cin>>x;
nr=0; // pp ca avem zero perechi cu valoare egala
do
{
i++;
cout<<"Dati valoarea elementului "< cin>>y;
//calculam suma cifrelor pentru x si y
int sx,x1;
x1=x;
sx=0;
while(x1!=0)
{
sx=sx+x1%10;
x1=x1/10;
}
int sy,y1;
y1=y;
sy=0;
while(y1!=0)
{
sy=sy+y1%10;
y1=y1/10;
}
if(sx==sy)nr++; // am gasit o pereche , o numaram ....
x=y;//trecem la urmatoarea pereche din sir,
// cu mentiunea ca doar a doua valoare din pereche (y) se citeste, x preia valoarea veche a lui y
}while(i<=n-1);
if(nr==0)cout<<"Nu exista perechi de numere consecutive cu suma cifrelor egala ! ";
else cout<<"Am gasit "< return 0;
}





artur99: Cred că s-a pierdut o parte din cod. Probabil este salvat pentru că x1 este, de fapt, distrus. Deci se face o copie a lui x în x1, pentru că x1 va fi modificat (este un while, x1 va tot scădea spre 0).

Răspunsuri la întrebare

Răspuns de abcdebygabi
1
Daca tu ai vrea sa vezi cate cani consecutive au aceeasi cantitate de cafea, dar tu bei cafeaua din cana curenta fara sa vezi daca urmatoarea are aceeasi cantitate de cafea, deci se pierd informatii care duc la erori
Alte întrebări interesante