Module: التقسيم الصحيح والبقاء


Problem

14 /16


اصعب سؤال للمبتدئين او ارقام الرقم

Theory Click to read/hide

تظهر الحاجة إلى تطبيق عملية حساب باقي القسمة عند العمل بأرقام الرقم. & nbsp ؛

دعنا نحلل المهمة التالية:
تم إعطاء رقم مكون من ثلاثة أرقام. اعرض جميع أرقام هذا العدد واحصل على رقم جديد مكون من وحدات ومئات التباديل

أصعب سؤال يطرح نفسه للمبتدئين هو كيفية أخذ الأرقام والحصول عليها من رقم.
في الواقع ، يتم حل كل شيء بكل بساطة ، إذا كنت تتذكر الرياضيات. وتخبرنا الرياضيات أن أي عدد يمكن أن يتحلل إلى مجموع حدود رقمية.
على سبيل المثال: 365 = 3 * 100 + 6 * 10 + 5 * 1 & nbsp ؛. نرى أن كل رقم هو مضاعف الرقم المقابل للرقم. & nbsp؛
سنوضح كيفية الحصول على كل رقم من رقم في متغير منفصل ، باستخدام مثال قسمة الأعمدة على الرقم 10. (نأخذ الرقم 10 ، لأن لدينا نظام رقم عشري ، وبالتالي ، لدينا شروط رقمية 1 ، 10 ، 100 ، إلخ.)

& nbsp؛ & nbsp؛

تحليل الشكل ، يمكنك أن ترى ذلك نبسب ؛ <قبل> e = n٪ 10 ؛ // عملية n٪ 10 - حساب الرقم الأخير من الرقم n (أي وحدات الرقم) 365٪ 10 = 5 د = ن / 10٪ 10 ؛ // العملية n / 10 - تقلل الرقم بمقدار 10 مرات ، أي تجاهل الرقم الأخير من الرقم ( 365/10 = 36 ) ، // الآن يمكننا حساب عدد العشرات من خلال تطبيق العملية المألوفة على النتيجة - احسب باقي القسمة على الرقم 10 ، 36٪ 10 = 6 ق = ن / 100 ؛ // للحصول على المئات ، يكفي تجاهل رقمين من يمين الرقم ، أي القسمة على 10 مرتين ( n / 10/10 أو نفس الرقم n / 100 ) 365/100 = 3
بوجود الأرقام المحفوظة من الرقم ، يمكننا استخلاص أي رقم منها بضرب الرقم المطلوب بالرقم المقابل: & nbsp؛
على سبيل المثال ، سيحصل السطر أدناه على رقم جديد من الرقم الأصلي n ، مع إعادة ترتيب المئات والآحاد:
1) عدد الآحاد القديم (المخزن في المتغير & nbsp؛ e) & nbsp؛ مضروبًا في 100 & nbsp؛
2) عدد العشرات القديم (المخزن في المتغير د) على & nbsp؛ الضرب في & nbsp؛ 10 & nbsp؛
3) يمكننا ببساطة ضرب العدد القديم من المئات في 1 ، أو ببساطة أخذ القيمة المخزنة في المتغير s
ثم أضف القيم من النقاط 1 و 2 و 3 واحصل على رقم جديد:

n1 = e * 100 + d * 10 + s ؛

سيبدو البرنامج بأكمله كما يلي: <قبل> استيراد java.util.Scanner ؛ فئة عامة رئيسية { العامة الثابتة الفراغ الرئيسي (سلسلة [] args) { الماسح الضوئي = ماسح ضوئي جديد (System.in) ؛ int n ، e ، d ، s ؛ n = in.nextInt () ؛ ه = ن٪ 10 ؛ د = ن / 10٪ 10 ؛ ق = ن / 100 ؛ System.out.print (e + "" + d + "" + s + "" + (e * 100 + d * 10 + s)) ؛ }

Problem

يتم إدخال رقم مكون من ثلاثة أرقام من لوحة المفاتيح. & nbsp؛
اكتب برنامجًا يطبع مسافة مفصولة في سطر واحد:
مجموع أرقام العدد والرقم الجديد الذي تم تكوينه بالتناوب بين الآحاد والعشرات