odczytywanie poszczególnych składników liczby?

0

Witam, jak mogę odczytać z liczby jej poszczególne składniki? Pisze program i zaciąłem się właśnie w tym miejscu. Np. z liczby 301 odczytać kolejno 3,0,1 i zsumować te liczby. Jakieś pomysły? Pozdrawiam

1

W tę stronę trudniej, łatwiej od jedynki.

while(number > 0)
{
    digit = number % 10;
    number/=10;
}
1

Ewentualnie można zrobić to w ten sposób w ramach jednej linijki, rozwiązanie kolegi wyżej będzie jednak bardziej optymalne pod względem wydajnościowym.

int yourResult = yourNumber.ToString().Sum(x => x - '0');
0
bogdans napisał(a):

W tę stronę trudniej, łatwiej od jedynki.

while(number > 0)
{
    digit = number & 10;
    number/=10;
}

faktycznie wypisuje mi składowe podanej liczby. Jednak mam problem - otóż pisze program gdzie podaje się liczbę, następnie elementy do tej liczby się sumuje (5 => 1+2+3+4+5), następnie z tej sumy chce wypisać wartości składowe (15 => 1,5) a potem z tych liczb chce robić rózne obliczenia, np średnia itp. Nie bardzo wiem jak to zaimplementować do mojego kodu

int a,s = 0,digit;
Console.WriteLine("podaj liczbe");
a = int.Parse(Console.ReadLine());
for (int i = 1; i<= a;i++)
{
s+=i;
}
Console.WriteLine("suma to {0}",s);
while (s>0)
{
digit = s%10;
s/=10;
Console.WriteLine(digit);
}
Console.ReadKey();

1 użytkowników online, w tym zalogowanych: 0, gości: 1