less than 1 minute read

❓문제

N개의 숫자가 공백 없이 쓰여있다. 이 숫자를 모두 합해서 출력하는 프로그램을 작성하시오.

✏️입력

첫째 줄에 숫자의 개수 N (1 ≤ N ≤ 100)이 주어진다. 둘째 줄에 숫자 N개가 공백없이 주어진다.

📜출력

입력으로 주어진 숫자 N개의 합을 출력한다.

💻코드

    /*
        [백준 11720] 숫자의 합
        22-08-27 / c++

        < 알고리즘 >

        문자열로 입력받아 반복문을 돌리면서 하나씩 떼어 정수형으로 변환시킨뒤 sum에 더해준다
    */

    #include<iostream>
    #include<string>

    using namespace std;

    int main(void) {
        ios::sync_with_stdio(false);
        cin.tie(NULL);;
        cout.tie(NULL);;

        int TESTCASE, iSum = 0;
        string str;

        cin >> TESTCASE;
        cin >> str;

        for (int i = 0; i < TESTCASE; i++) {
            int tmp = str[i] - '0';
            iSum += tmp;
        }

        cout << iSum;
        return 0;
    }
  • 문자열을 정수형으로 바꿔주는 stoi()함수를 쓰려했으나, char를 정수형으로 바꾸지는 못함
    아스키코드를 이용하여 ‘0’을 빼주면 정수형이 나온다.