[algorithm] 대소문자 변환

Ho-eng·2023년 4월 11일
0

❓ 대소문자 변환


대문자와 소문자가 같이 존재하는 문자열을 입력받아 대문자는 소문자로 소문자는 대문자로 변환하여 출력하는 프로그램을 작성하세요.

  • 입력설명

    첫 줄에 문자열이 입력된다. 문자열의 길이는 100을 넘지 않습니다.
  • 출력설명

    첫 줄에 대문자는 소문자로, 소문자는 대문자로 변환된 문자열을 출력합니다.
  • 입력예제 1

    StuDY

  • 출력예제 1

    sTUdy


❗ 문제 풀이

내 풀이

<html>
  <head>
    <meta charset="UTF-8" />
    <title>출력결과</title>
  </head>
  <body>
    <script>
      function solution(str) {
        let answer = ""
        for (let x of str) {
          if (x === x.toUpperCase()) {
            answer += x.toLowerCase()
          }
          if (x === x.toLowerCase()) {
            answer += x.toUpperCase()
          }
        }
        return answer
      }

      let str = "StuDy"
      console.log(solution(str))
    </script>
  </body>
</html>
  1. answer이란 변수를 하나 선언하고 빈문자열을 할당한다.
  2. 문자열 순환을 돌면서,
    1) 대문자인 경우 answer에 소문자로 바꿔서 넣어주고,
    2) 소문자인 경우 answer에 대문자로 바꿔서 넣어준다.
  3. answer을 리턴하면 끗.

정답 소스

<html>
    <head>
        <meta charset="UTF-8">
        <title>출력결과</title>
    </head>
    <body>
        <script>
            function solution(s){  
                let answer="";
                for(let x of s){
                    if(x===x.toUpperCase()) answer+=x.toLowerCase();
                    else answer+=x.toUpperCase();
                }
                return answer;
            }

            console.log(solution("StuDY"));
        </script>
    </body>
</html>
  • 정답 소스도 내가 짰던 코드랑 같았다.
  • 차이점이 있다면 if else VS early return !
profile
매일 '어제의 나와 오늘의 나는 무엇이 다를까?'를 고민하는 김호엥입니다.

0개의 댓글