C++ Funkcja ktora zwraca ilosc cyfr liczby

Szukam funkcji ktora podaje ile cyfr ma dana liczba.

np funkcja(5636) = 4

funkcja(34) = 2

Korzystam z Deva

Z gory dzieki chlopaki :slight_smile:

Taką funkcję możesz z łatwością napisać samemu, ale chyba nie o to Ci chodziło.

Jeżeli chciałbyś to zrobić, musisz wykonywać dzielenie całkowite tej liczby przez 10 tak długo jak jest ona większa bądź równa zero i zwiększać licznik ilości cyfr w każdym przebiegu. To tak w skrócie resztę możesz dopracować samemu.

Kurcze no racja, ale proste :smiley:

Jestes genialny stary thx :smiley:

Jest jeszcze jeden sposób, mianowicie liczba cyfr w systemie dziesiętnym równa jest sumie jedynki i logarytmu przy podstawie dziesięć z danej liczby.

Albo przerzucić tą liczbe do stringa a potem zmierzyć długość stringa :wink:

unsigned IleCyfr(unsigned long long Liczba) { return (unsigned)floor(log10(Liczba))+1; } [/code]

lub jak nie masz log10 to dla dowolnego log2, logE …

[code=php]unsigned IleCyfr(unsigned long long Liczba) { return (unsigned)floor(logN(Liczba)/logN(10))+1; }