C++で複数の数字を入力し、1の位、10の位、100の位を加算する方法


方法1: 文字列と数値操作を使用する方法

#include <iostream>
#include <string>
using namespace std;
int main() {
    string input;
    cout << "数字を入力してください: ";
    getline(cin, input);
    int sum = 0;
    for (char digit : input) {
        if (isdigit(digit)) {
            int num = digit - '0';
            sum += num;
        }
    }
    cout << "1の位、10の位、100の位の合計: " << sum << endl;
    return 0;
}

方法2: 数値の分割と数値操作を使用する方法

#include <iostream>
using namespace std;
int main() {
    int numCount;
    cout << "数字の個数を入力してください: ";
    cin >> numCount;
    int sum = 0;
    for (int i = 0; i < numCount; i++) {
        int num;
        cout << "数字を入力してください: ";
        cin >> num;
        int onesDigit = num % 10;
        int tensDigit = (num / 10) % 10;
        int hundredsDigit = (num / 100) % 10;
        sum += onesDigit + tensDigit + hundredsDigit;
    }
    cout << "1の位、10の位、100の位の合計: " << sum << endl;
    return 0;
}

以上の方法を使用することで、C++でユーザーから複数の数字を入力し、それぞれの数値の1の位、10の位、100の位を加算することができます。このコード例を参考にして、自分のプログラムに組み込んでみてください。