Witam chciałby podłączyć się do tematu. Stworzyłem taki oto kod ->`
include
include
using namespace std;
int t, n, liczba, liczba2, licznik;
int tab[10];
int doZmiennej(int *tab, int n);
int doTablicy(int *tab, int liczba);
int main()
{
cin>>t;
for(int i=0; i<t; i++)
{
cin>>liczba;
n=doTablicy(tab, liczba);
while(tab[0]!=tab[n])
{
liczba2=doZmiennej(tab,n);
liczba+=liczba2;
licznik++;
n=doTablicy(tab, liczba);
cout<<liczba<<" "<<licznik<<endl;
}
cout<<liczba<<" "<<licznik<<endl;
licznik=0;
}
}
int doTablicy(int *tab, int liczba)
{
int i=0;
while(liczba)
{
tab[i]=liczba % 10;
liczba/=10;
i++;
}
return i-1;
}
int doZmiennej(int *tab, int n)
{
int i=n;
int x=1;
int liczba;
while(i>=0)
{
liczba+=tab[i]*x;
i--;
x*=10;
}
return liczba;
}
Kompletnie nie mam pojęcia dlaczego to nie działa. Sprawdzając wynik w pętli wszystko się zgadza. Po wyjściu z pętli dla niektórych liczb pokazuje dobrą wartość dla innych jakieś śmieci. Ślęczę już nad tym jakiś czas i nie wiem w czym jest problem. Może ktoś na to rzucić okiem? Pozdrawiam