HRezaei
جمعه 29 بهمن 1389, 22:36 عصر
عرض سلام و خسته نباشید خدمت دوستان
الگوریتم های تبدیل اعداد به حروف رو حتما اکثر دوستان دیده اند
من یه برنامه ی php ساده برای این کار آماده کردم که کار جدیدی نیست اما اگه بتونیم طوری توسعه اش بدیم که بتونه اعداد رو رند بخونه، الگوریتم جالبی میشه.
مثلا عدد 9383004050
رو به جای اینکه تبدیل کنه به :
نه ميليارد و سيصد و هشتاد و سه ميليون و چهار هزار و پنجاه
اینجوری تبدیل کنه:
نهصد و سی و هشت، سیصد، چهل، پنجاه
یا مثلا 1145464737
رو بخونه(!): یازده،چهل و پنج، چهل و شش، چهل و هفت، سی و هفت
البته بماند که خود ما انسان ها هم برای خوندن این اعداد با هم اختلاف داریم و ممکنه هرکسی یه جور بخونه، اما حالا با یه کم ارفاق، از الگوریتم های کامپیوتری قبول می کنیم!
ایده ای که من فعلا واسه این کار دارم اینه که به طور تصادفی عدد رو چند قسمت کنیم و هرقسمت رو جدا تبدیل کنیم. و خروجی ها رو با کاراکتر "،" به هم متصل کنیم.
این کار رو چندین بار(با اعداد تصادفی متفاوت) تکرار می کنیم، و جواب ها رو با یه معیار خاصی با هم مقایسه می کنیم. مثلا هرچه یه جواب زیر رشته ی " و " رو کمتر داشته باشه بهتره. یا یه معیار دیگه می تونه طول رشته حروف خروجی باشه.
اما قبل از اینکه پیادش کنم میخواستم ببینم دوستان ایده ی بهتری ندارند؟ لزوما هم نیاز نیست بهتر باشه. ایده ای اگه دارید، لطف کنید مطرحش کنید تا در موردش بحث بشه و به تکامل(!) برسه.
کار مشابهی اگه در این مورد انجام شده، لطفا آدرسش رو بزارید.
با تشکر
الگوریتم های تبدیل اعداد به حروف رو حتما اکثر دوستان دیده اند
من یه برنامه ی php ساده برای این کار آماده کردم که کار جدیدی نیست اما اگه بتونیم طوری توسعه اش بدیم که بتونه اعداد رو رند بخونه، الگوریتم جالبی میشه.
مثلا عدد 9383004050
رو به جای اینکه تبدیل کنه به :
نه ميليارد و سيصد و هشتاد و سه ميليون و چهار هزار و پنجاه
اینجوری تبدیل کنه:
نهصد و سی و هشت، سیصد، چهل، پنجاه
یا مثلا 1145464737
رو بخونه(!): یازده،چهل و پنج، چهل و شش، چهل و هفت، سی و هفت
البته بماند که خود ما انسان ها هم برای خوندن این اعداد با هم اختلاف داریم و ممکنه هرکسی یه جور بخونه، اما حالا با یه کم ارفاق، از الگوریتم های کامپیوتری قبول می کنیم!
ایده ای که من فعلا واسه این کار دارم اینه که به طور تصادفی عدد رو چند قسمت کنیم و هرقسمت رو جدا تبدیل کنیم. و خروجی ها رو با کاراکتر "،" به هم متصل کنیم.
این کار رو چندین بار(با اعداد تصادفی متفاوت) تکرار می کنیم، و جواب ها رو با یه معیار خاصی با هم مقایسه می کنیم. مثلا هرچه یه جواب زیر رشته ی " و " رو کمتر داشته باشه بهتره. یا یه معیار دیگه می تونه طول رشته حروف خروجی باشه.
اما قبل از اینکه پیادش کنم میخواستم ببینم دوستان ایده ی بهتری ندارند؟ لزوما هم نیاز نیست بهتر باشه. ایده ای اگه دارید، لطف کنید مطرحش کنید تا در موردش بحث بشه و به تکامل(!) برسه.
کار مشابهی اگه در این مورد انجام شده، لطفا آدرسش رو بزارید.
با تشکر