الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

الي خبراء السي++

مغلق
بدأه المـ الابيض ـلاك في 21 نوفمبر 2004 · 3 رد · 403 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته

عندي سؤال محيرني في السي++ ماعرفتله حل

** _ اكتب برنامج يقوم بتحويل الأرقام من (0 ..1000) إلى حروف ؟

مثلا :-

عند إدخال الرقم :- 555

يكون الناتج :- five handred fevty five

طريقة الحل تكون بالكيس بس جربت وما وصلت ال نتيجه

ارجوا المساعده في اقرب فرصه

المـ الابيض ـلاك

#2

السلام عليكم ,,

الفكرة بسيطة ,, والحل يكمن في تقسيم الرقم إلى فئات من البداية وحتى النهاية ..

يعني رقم في الآحاد ورقم في العشرات .... حتى خانة مئات الألوف .

هذه تكون في مصفوفة وتملأ فيها خانات من الصفر ,, وتصبح 5 خانات أي حتى خانة المئة ألف .

الآن طريقة الترقيم سهلة ,, والمشكلة فقط في خانة العشرات ,, حيث اللغة الإنجليزية الترقيم فيها للمئات وما فوق تنطق وتكتب كالتالي :

الرقم ثم الفئة ,, كالغة العربية تماما ,,

5 مئات

10 آلاف

100 ألف .

وباللغة الإنجليزية أسهل طبعا .

المهم ماستفعله هو أن تعرف الرقم من 0-9 وتكتب أمامه التمييز بحسب مكانه الذي وضعته في مصفوفة التمييز ,, التي قلنا في مثالنا أنها حتى المئة ألف .

banner_60_468.gif

NOTHING IS IMPOSSIBLE

#3

ما تحدثت عنه يدخل في علم المترجمات compilers

مايجب عليك فعله هو وضع خطه ترجمة لما تريد

لكن الملاحظ هو أنك تبداء بالخانه الأخيرة

والحل هو إستخدام stack لإضافة الأعداد وإستخراجها منه

وداخل البرنامج تضع مايسمى مصفوفة الرموز

تحتوي على مايلي

قيمة الرقم كتابة -- الرقم -- الرقم كتابة

"0" -- 0 -- "Zero"

"1" -- 1 -- "One"

000

حد العشرات

"0" -- 10 -- "Ten"

الخ

وعند قراءة عدد تقارن من المصفوفة

وتوجد الناتج

أعتذر عن باقي الفكرة لكثرة مشاغلي هذا الأسبوع والذي يليه

واستبيحكم العذر

تم تعديل هذه المشاركة بواسطة mossa في 21 نوفمبر 2004 في 20:59

#4

/index.ph...opic=39624&st=0

موضوع إن شاء الله يفيدك

فيه عدة طرق لحل البرنامج

هذا الموضوع مغلق.

مواضيع مشابهة