به نام خدا
میدانیم که هر عدد طبیعی مثل a را میتوان به صورت مجموعی از توان های 10 و به صورت زیر نوشت، به طوری که a_0,a_1,a_2,...,a_k همگی اعداد طبیعیِ کوچک تر از 10 هستند (رابطهٔ یک):
a=a_0\cdot10^0+a_1\cdot10^1+a_2\cdot 10^2+\cdot \cdot \cdot+a_k\cdot 10^k
از این موضوع میتوان متوجه شد که k+1 نشانگر تعداد ارقام عدد a است، زیرا همهٔ جملههای رابطهٔ بالا که قبل از a_k\cdot 10^k قرار دارند از آن کوچکتر بوده و مجموع آنها هرگز بزرگتر از a_k\cdot 10^k نخواهد بود.
در نتیجه هر بار که عدد a را بر 10 تقسیم میکنیم، یکی از رقمهای آن را مشخص کردهایم.
همانطور که دیدید، از آنجایی که میتوانیم هر عدد طبیعی را به فرم رابطهٔ یک و برمبنای 10 بنویسیم، برای محاسبه تعداد ارقام یک عدد از تقسیمهای متوالی آن بر عدد 10 استفاده میکنیم. از طرفی با توجه به مفهوم لگاریتم نیز میتوانیم تعداد مراحل تقسیم یک عدد بر 10، را بدست آوریم. برای مثال، فرض کنید میخواهیم بدانیم در 100 چند دسته 10 تایی وجود دارد. این امر دقیقاً مانند عمل تقسیم است که بطور متوالی صورت میگیرد:
{\mathrm{log}_{10}}^{(100)}=2
ولی میدانیم که تعداد ارقام عدد طبیعی 100 برابر با 2+1=3 است. پس بنابراین اگر a عددی طبیعی باشد تعداد ارقام آن برابر است با:
\left \lfloor {{\mathrm{log}}_{10}}^{(a)} \right \rfloor +1