Piszę program PESEL ze Spoja i chcę zamienić liczbę na poszczególne cyfry. Muszę użyć modulo i wymyśliłam coś takiego:
#include <iostream>
using namespace std;
int main()
{
long long int liczba, pierwsza, z, druga, trzecia, czwarta, piata, szosta, szosta_2, siodma, osma, dziewiata, dziesiata, jedenasta ;
int liczbaTestow;
cin>>liczbaTestow;
cin>>liczba;
pierwsza = liczba % 10; // z- pierwsza cyfra
druga = liczba / 10%10;
trzecia = liczba / 100%10;
czwarta = liczba / 1000%10;
piata = liczba / 10000%10;
szosta = liczba / 100000%10;
siodma = liczba / 1000000%10;
osma = liczba / 10000000%10;
dziewiata = liczba / 100000000%10;
dzisiata = liczba / 1000000000%10;
jedenasta = liczba / 10000000000%10;
cout<<pierwsza<<druga<<trzecia<<czwarta<<piata<<szosta<<siodma<<osma<<dziewiata<<dziesiata<<jedenasta;
return 0;
}
Tylko, ze kompilator przy próbie wpisania PESELU: 99051904463 podaje mi to: 9909051. Nie wiem dlaczego nie wypisuje dalszych cyfr oraz czemu wyskakuje jakieś 09 w środku?