• 0

حساب مجموع الأرقام المُكونة لعدد طبيعي بلغة الجافا

بلغة الجافا  - اعمل برنامج لجمع الاعداد التالية x=23451 بشرط تكون مدخلة في متغير واحد,ومجموع القيم يساوي15

تمّ تعديل بواسطة عبود سمير
تعديل العنوان
1 شخص أعجب بهذا

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
شارك على الشبكات الإجتماعية
  • 0

مرحباً بك،

يُمكنك ذلك بإستخدام حلقة while و في كل لفة تقوم بجلب أحد الأرقام المُكونة للعدد x:

  • تعريف مُتغير x يحمل قيمة العدد الذي نريد حساب مجموع أرقامه
  • تعريف مُتغير sum يُعبر عن المجموع و نُسند له القيمة 0 مبدئياً
  • مادام x أكبر من 0
  • ----- نضيف باقي قسمة x على 10 لقيمة المُتغير sum
  • ----- نُسند حاصل قسمة قيمة المُتغير x على 10 للمُتغير x
  • نطبع قيمة المُتغير sum

و هذا تطبيق للخوارزمية بلغة جافا:

public class Main
{
  public static void main(String[] args) {
    int x = 23451;
    int sum = 0;
    while (x > 0) {
      sum += x % 10;
      x = x / 10;
    }
    System.out.println(sum); 
  }
}

في اللفة الأولى مثلاً:

x % 10 = 1 => sum = 1

x / 10 = 2345 => x = 2345

و هكذا في بقية اللفات إلى حين تحقق الشرط، بالتوفيق.

2 اشخاص أعجبوا بهذا

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
شارك على الشبكات الإجتماعية
  • 0

سأوضح لك كيفية كتابة أهم أجزاء البرنامج بدون الإجابة المباشرة على السؤال وذلك لأترك لك المجال لتكتبه بنفسك.

في الغالب أنت تفكر في حل المشكلات التالية:

  • كيفية تقسيم العدد المدخل في متغير واحد إلى عدة أرقام ؟! لك الحق في هذا التساؤل فهذا الأمر يبدو صعبا للوهلة الأولى، لكن لتسهيل الأمر يجب التفكير في العدد المدخل على أنه نوع من أنواع البيانات الذي يمكننا التحويل بينها. على سبيل يمكننا التحويل من String ل int عن طريق الدالة parseInt التي يوفرها الكلاس Integer، ويمكننا أيضا التحويل من int ل String من خلال الدالة toString. لكن ماذا سنستفيد من تحويل العدد المدخل من int ( رقم ) ل String ( نص ) ؟ نعرف بأن النص عبارة عن مجموعة من الرموز حيث يمكننا معالجة وتقسيم كل رمز لوحدة.
  • كيف سنقوم بمعالجة كل رمز لوحده والمرور على كل الرموز ؟ ببساطة يمكننا إستخدام الfoor loop ومعالجة كل رمز لوحده ومن ثم تحويله إلى رقم مرة أخرى وجمعها وتخزينها في متغير ما، وبمجرد إنتهاء الloop نقوم بطباعة المتغير الذي يحتوي على مجموع الأعداد.

خطوات الحل بإختصار هي كالتالي:

  1. تحويل العدد المدخل من int الى String.
  2. الدوران على كل الرموز( الاعداد ) وتحويلها الى نوع int ومن ثم جمعها وتخزينها في متغير ما.
  3. طباعة المتغير الذي يمثل مجموع  الأعداد من الخطوة السابقة.

أطيب الأمنيات بالتوفيق.

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
شارك على الشبكات الإجتماعية

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن