سؤال

كيف يمكنني إضافة الأرقام في رقم معين على سبيل المثال إذا كان الرقم هو 3234 ، يجب أن تكون النتيجة 3+2+3+4 = 12؟

هل كانت مفيدة؟

المحلول

شيء على غرار هذا يجب أن يفعل ذلك:

int val = 3234;

int sum = 0;
while (val != 0) {
    sum += (val % 10);
    val = val / 10;
}

// Now use sum.

لاستمرار الإضافة حتى تحصل على رقم واحد:

int val = 3234;

int sum = val;
while (sum > 9) {
    val = sum;
    sum = 0;
    while (val != 0) {
        sum += (val % 10);
        val = val / 10;
    }
}

// Now use sum.

لاحظ أن كلاهما مدمران للأصل val القيمة. إذا كنت ترغب في الحفاظ عليها ، فيجب عليك عمل نسخة أو القيام بذلك في وظيفة حتى يتم الاحتفاظ بالأصل.

نصائح أخرى

أتمنى ألا يكون واجبك المنزلي!

int sum = 0;
while (value!=0) {
  sum += value % 10;
  value = value / 10;
}
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top