CodingTest Practice/Programmers

프로그래머스 : 문자열 다루기 기본 (C++)

몽땅마니아(MDD) 2021. 12. 30. 17:29

https://programmers.co.kr/learn/courses/30/lessons/12918?language=cpp 

 

코딩테스트 연습 - 문자열 다루기 기본

문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다. 제한 사항 s는 길이 1

programmers.co.kr

 

isdigit 함수를 본 기억이 있었으나 어떻게 제대로 쓰는지 몰라서 인터넷에 검색해봤다.

https://blockdmask.tistory.com/362

 

[C언어/C++] isdigit (숫자를 판단하는 함수)

안녕하십니다. BlockDMask 입니다. 오늘은 C언어 및 C++에서 문자를 다룰때 이걸 숫자인지 판단해야하는 경우가 있지 않았나요? 그럴때 사용하라고 C/C++에서 이미 만들어 놓은 함수가 있습니다. 바로

blockdmask.tistory.com

 

#include <string>
#include <vector>
#include <cctype>

using namespace std;

bool solution(string s) {
    bool answer = true;

    if(s.length() != 4 && s.length() != 6) return false;
    for(int i=0;i< s.length() ; i++) {
    //숫자인지 판별해주는 함수 isdigit (숫자가 아닌 경우 결과값 0, 맞는 경우는 1~9 랜덤) 
        if(isdigit(s[i]) == false) return false;
    }

    return answer;
}