حسنًا، بالنِّسبة للتمرين الأول يقتصر على:
تحديد طول العدد يعني الـ lenght وَليس الـ size، مثال: العدد 5758 طوله 4.
ثانيا التفكير بإنشاء arrays، مَع أنِّي أحبذ إنشائها وهميًا:
الطريقة:
باقي قسمة (حاصل القسمة الإقليدية للعدد على (10 أُسْ (طول العدد-مرتبة الرقم-1))) على 10
مثال: العدد السابق 5758 وَبعد حساب طوله (بتحويله إلى string واستخدام خاصية lenght وَهميًا) يتبين التَّالي:
تطبيق القاعدة:
الرقم الذي مرتبته 0:
(5758/(10^( 4 - 0 - 1))% 10=5758/(1000))% 10=5 % 10=5 (القراءة من اليمين إلى اليسار في تطبيق القاعدة) يتبين أن الرقم الذي مرتبته 0 في العدد 5758 هو 5.
الرقم الذي مرتبته 1:
(5758/(10^(4 - 1 -1))% 10=5758/(100))% 10=57 % 10=7 (القراءة من اليمين إلى اليسار في تطبيق القاعدة) يتبين أن الرقم الذي مرتبته 1 في العدد 5758 هو 7.
الرقم الذي مرتبته 2:
(5758/(10^( 4 - 2 - 1))% 10=5758/(10))% 10=575 % 10=5 (القراءة من اليمين إلى اليسار في تطبيق القاعدة) يتبين أن الرقم الذي مرتبته 2 في العدد 5758 هو 5.
الرقم الذي مرتبته 3:
(5758/(10^(4 - 3 - 1))% 10=5758/(1))% 10=5758 % 10=8 (القراءة من اليمين إلى اليسار في تطبيق القاعدة) يتبين أن الرقم الذي مرتبته 3 في العدد 5758 هو 8.
نفس الطريقة بالنسبة للعد الآخر.
يمكنكم استخدام متغير index يحدد المرتبة التي وصلنا إليها في كلا العددين، وَمتغير آخر index1 يُحدد المرتبة التي وصلنا إليها في العدد النَّاتج (القيمة الإبتدائية لكلا المتغيرين هي 0).
نقوم بعدها بحفظ العدد الناتج في متغير string آخر وَتحويله إلى int أو بطريقة أخرى، نقوم بحفظه عن طريق أسس العشرة كما حصل في المرة السَّابقة تقريبًا، أو نقوم بطباعته مباشرة (حسب الحاجة وَكما تريدون).