راستی رقم اول که نمیتونه صفر باشه. چون سوال گفته اعداد چهار رقمی. عدد چهار رقمی داریم که هزارگانش صفر باشه؟! بنابراین حلقهء بیرونی باید از یک شروع بشه.
بنابراین یکی از تعداد عددهای جواب کم میشه.
اره من همون موقع میخواستم ویرایش کنم اما اینجا ویرایش نداره! دیگه بیخیال شدم یه بار دیگه از 1 بزارم . فقط کافیه حلقه i از 1 شروع بشه.

راستش من خیلی روی حل معادلات یا الگوریتم های به این شکل کار کردم (بخاطر کار روی الگوریتم های فشرده سازی) و اکثرا برای حل سوالاتی شبیه این خودم براش فرمول میساختم . البته دیگه دنبالش نرفتم ببینم این فرمول از اول بوده یا نه . اما مثلا شما همینو در نظر بگیر اگه بخوایم از طریق کد نویسی و بدون فرمول خاصی انجام بدیم میشه 10 به توان تعداد ارقام موزد تست! یعنی اگه تعداد ازقاممون یکم بره بالا...! :D

همین مشکلو با فاکتوریل و مجموع جمع اعداد متوالی هم داشتم که هنوز نتونستم فرمولی براش پیدا کنم که با صرف زمان کمتر به جواب برسن. اما به طور کل همیشه توی نرم افزارهای تجاریم چون خیلی به سرعت اهمیت میدم سعی کردم تعداد پردازش رو به حداقل برسونم و تا جایی که بتونم از حلقه استفاده نکنم . به خاطر همینه که معمولا سرعت کار با نرم افزارهایی که میسازم به طور غیر طبیعی بالاست!حتی توی محاسبات نسبتا سنگین