[algorithm] 가운데 문자 출력

Ho-eng·2023년 4월 15일
0

❓ 가운데 문자 출력


소문자로 된 단어(문자열)가 입력되면 그 단어의 가운데 문자를 출력하는 프로그램을 작성하세요.
단 단어의 길이가 짝수일 경우 가운데 2개의 문자를 출력합니다.

  • 입력설명

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

    첫 줄에 가운데 문자를 출력합니다.

  • 입력예제 1

    study

  • 출력예제 1

    u

❗ 문제 풀이

내 풀이

<html>
  <head>
    <meta charset="UTF-8" />
    <title>출력결과</title>
  </head>
  <body>
    <script>
      function solution(str) {
        let answer = ""
        let mid = Math.floor(str.length / 2)
        
        if (str.length % 2 == 0) {
          answer = str[mid - 1] + str[mid]
        } else answer =str[mid]
    
    	// Early retrun , 장점:가독성좋음, 단점:문자열을 2번탐색함
        //if (str.length % 2 != 0) {
        //  answer = str[mid]
        //}

        return answer
      }

      let str = "study"
      console.log(solution(str))
    </script>
  </body>
</html>
  1. answer라는 변수를, 그리고 parameter로 받을 str의 가운데 인덱스를 담아둘 mid라는 변수를 선언해준다.
  2. 조건문을 통해, 짝수,홀수에 각각 요구사항에 맞는 조건들을 answer에 담아준다.
  3. answer를 return 한다.

정답 소스

<html>
    <head>
        <meta charset="UTF-8">
        <title>출력결과</title>
    </head>
    <body>
        <script>
            function solution(s){  
                let answer;
                let mid=Math.floor(s.length/2)
                if(s.length%2===1) answer=s.substring(mid, mid+1);
                else answer=s.substring(mid-1, mid+1);
                //if(s.length%2===1) answer=s.substr(mid, 1);
                //else answer=s.substr(mid-1, 2);
                return answer;
            }
            console.log(solution("study"));
        </script>
    </body>
</html>
  • substring()과 substr()을 사용하여 코드를 짰다.

    ❓substring()
    substring()은 문자열에서 지정한 인덱스 범위의 부분 문자열을 반환하는 JavaScript의 내장 함수.

//대충 사용설명서
//substring() 메소드는 두 개의 매개변수를 가집니다. 첫 번째 매개변수는 시작 인덱스(포함), 두 번째 매개변수는 끝 인덱스(제외)

//예시
let str = 'study'
//2번째 인덱스부터 시작해서 = udy  3번째인덱스에서끊어줘 =dy => udy-dy = u
console.log(str.substring(2,3)) //u
profile
매일 '어제의 나와 오늘의 나는 무엇이 다를까?'를 고민하는 김호엥입니다.

0개의 댓글