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


في الوحدة النمطية "التعبيرات الحسابية" تحدثنا عن مميزات عملية التقسيم بلغة جافا.
تذكر أنه بالنسبة لبيانات الأعداد الصحيحة (النوع int) يمكن استخدام عمليتي قسمة.
/ - قسمة عدد صحيح ، عندما نتجاهل الجزء الكسري نتيجة لعملية القسمة
٪ - حساب باقي القسمة

تذكر!
في Java ، نتيجة قسمة عدد صحيح على عدد صحيح & ndash؛ إنه دائمًا عدد صحيح ، يتم تجاهل الباقي عند القسمة.

مثال: <قبل> int a، b؛ أ = 10 ؛ ب = 3 ؛ كثافة العمليات ج = أ / ب ؛ // الجواب: ج = 3 int د = أ٪ ب ؛ // الجواب: د = 1 هذه العمليات مهمة جدا في البرمجة. يجب فهمها واستخدامها بشكل صحيح. وهذا يتطلب ممارسة!

نبسب ؛

تظهر الحاجة إلى تطبيق عملية حساب باقي القسمة عند العمل بأرقام الرقم. & 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)) ؛ }