

풀이
- 알파벳 별로 수를 더하는 조건문을 설정해 출력했다.
#include <iostream>
using namespace std;
int main(void) {
string S;
int sec=0;
cin >> S;
for (int i = 0; i < S.length(); i++)
{
if (S[i] == 'A' || S[i] == 'B' || S[i] == 'C')
sec += 3;
else if (S[i] == 'D' || S[i] == 'E' || S[i] == 'F')
sec += 4;
else if (S[i] == 'G' || S[i] == 'H' || S[i] == 'I')
sec += 5;
else if (S[i] == 'J' || S[i] == 'K' || S[i] == 'L')
sec += 6;
else if (S[i] == 'M' || S[i] == 'N' || S[i] == 'O')
sec += 7;
else if (S[i] == 'P' ||S[i] == 'Q' || S[i] == 'R'|| S[i] == 'S')
sec += 8;
else if (S[i] == 'T' || S[i] == 'U' || S[i] == 'V')
sec += 9;
else if (S[i] == 'W' || S[i] == 'X' || S[i] == 'Y'|| S[i] == 'Z')
sec += 10;
}
cout << sec;
}
참고
- 논리 연산자를 사용해 if 조건문에 조건식을 여러개 지정할 때,
각 조건식을 온전히 작성해야 한다.
❗ if (S[i] == 'A' || S[i] == 'B' || S[i] == 'C') (O)
❗ if (S[i] == 'A' ||'B'||'C') (X)
👉 https://arainablog.tistory.com/136
-> or 연산자는 bool 타입 연산자이지, 비교 연산자가 아니기 때문에 0이 아닌 값들을 모두 True로 인식해서 생긴 문제