ধরুন, আমাদের একটি পূর্ণসংখ্যা N আছে, আমাদের বিজোড় স্থানের অঙ্ক এবং জোড় স্থানের অঙ্কের যোগফল খুঁজে বের করতে হবে। তাই যদি সংখ্যাটি 153654 এর মত হয়, তাহলে odd_sum =9, এবং even_sum =15।
এটি সমাধান করার জন্য, আমরা শেষ অঙ্ক থেকে সমস্ত অঙ্ক বের করতে পারি, যদি আসল সংখ্যাটিতে বিজোড় সংখ্যা থাকে তবে শেষ সংখ্যাটি অবশ্যই বিজোড় অবস্থানে থাকবে, অন্যথায় এটি জোড় অবস্থানে থাকবে। একটি অঙ্ক প্রক্রিয়া করার পরে, আমরা বিজোড় থেকে জোড় এবং বিপরীত অবস্থাকে উল্টাতে পারি৷
উদাহরণ
#include<iostream>
using namespace std;
bool isOdd(int x){
if(x % 2 == 0)
return false;
return true;
}
void getSum(int n) {
bool odd_check = isOdd(n);
int odd_sum = 0, even_sum = 0;
while (n != 0) {
if (odd_check)
odd_sum += n % 10;
else
even_sum += n % 10;
odd_check = !odd_check;
n /= 10;
}
cout << "Sum odd : " << odd_sum << endl;
cout << "Sum even : " << even_sum;
}
int main() {
int n = 153654;
getSum(n);
} আউটপুট
Sum odd : 9 Sum even : 15