(알고리즘) 대문자 찾기


한 개의 문자열을 입력받아 해당 문자열에 알파벳 대문자가 몇 개 있는지 알아내는 프로그램을 작성하세요.

입력설명

첫 줄에 문자열이 입력된다. 문자열의 길이는 100을 넘지 않는다.

출력설명

첫 줄에 대문자의 개수를 출력한다.

입력예제

KoreaTimeGood

출력예제

3


문제 풀이

소문자를 대문자로 바꿔주는 메소드 toUpperCase를 이용하면 아주 쉽게 해결할 수 있다. 문자열을 순회하면서 해당 메소드가 발현될때마다 리턴 값을 1씩 증가시켜 최종값을 얻어내면 해결할 수 있다.

function solution(S) {
  let answer = 0;
  S.split('').forEach((i) => {
    if (i === i.toUpperCase() && i !== i.toLowerCase()) {
      answer++;
    }
  })
  return answer;
}

const S = 'KoreaTimeGood';
console.log(solution(S));

다른 문제 풀이

대문자의 아스키 넘버는 65에서 90까지이다. 소문자는 97부터 122이다.
따라서, charCodeAt()메소드를 사용해 문자의 아스키 코드 넘버를 토대로 대소문자를 구분할 수 있다.

function solution(s) {
  let answer = 0;
  for (let x of s) {
    let num = x.charCodeAt();
    if (num >= 65 && num <= 90) {
      answer++;
    }
    return asnwer
  }
}

좋은 웹페이지 즐겨찾기