관리 메뉴

cococo-coding

5524번. 입실 관리 (c++ 풀이) 본문

[BOJ] 코드 모음/C++_learning 문제집

5524번. 입실 관리 (c++ 풀이)

_dani 2024. 1. 9. 00:15

문제

 

풀이

문자열 si를 입력받아서 소문자로 변경한 후에 출력하면 되는 문제이다. 

나는 두 가지 방법으로 풀었다.

 

첫 번째는 아스키코드를 활용하여 소문자로 변경하는 방법이고

두 번째는 tolower() 함수를 사용하여 소문자로 변경하는 방법이다. 

 

함수를 모르는 상태라도 아스키코드로 충분히 풀 수 있지만, 확실히 함수로 쓰면 더 간결하게 풀 수 있다. 

코드

#include <iostream>
#include <string>
using namespace std;

int main() {
    int n;
    cin >> n;

    for(int j=0; j<n; j++) {
        string si;
        cin >> si;

        //1) tolower함수로 풀기 (추천)
        for (int i = 0; i <= si.size(); i++) {
                si[i]=tolower(si[i]);     
        }

        //2) 아스키코드로 풀기
        for (int i = 0; i <= si.size(); i++) {
            if (si[i] >= 65 && si[i] <= 90) {
                si[i] += 32;
        }

        cout << si << endl;
    }
    return 0;
}