문자 찾기

아기코딩단2·2022년 7월 26일
0

문자 찾기
한 개의 문자열을 입력받고, 특정 문자를 입력받아 해당 특정문자가 입력받은 문자열에 몇 개
존재하는지 알아내는 프로그램을 작성하세요.
문자열의 길이는 100을 넘지 않습니다.
▣ 입력설명
첫 줄에 문자열이 주어지고, 두 번째 줄에 문자가 주어진다.
▣ 출력설명
첫 줄에 해당 문자의 개수를 출력한다.
▣ 입력예제 1
COMPUTERPROGRAMMING
R
▣ 출력예제 1
3

<!--my solution-->

<html>
    <head>
        <meta charset="UTF-8">
        <title>출력결과 - 섹션1 - 10 - 문자 찾기</title>
    </head>
    <body>
        <script>
            function solution(str, char) {
                let answer = [];

                for (element of str) {
                    if (element === char)
                    answer.push(element);

                } return answer.length;
            }

            let str = "BANANA";
            console.log(solution(str, "N"));

        </script>
    </body>
</html>


잘나온다ㅇㅇ
아쉬운 점은
출력값이 하나인데 배열에 push하고있다 씁;;; 그냥 answer의 count를 증가시켜줘도 됐을 텐데


<!--teacher's solution no.1-->
<html>
    <head>
        <meta charset="UTF-8">
        <title>출력결과</title>
    </head>
    <body>
        <script>
            function solution(s, t){
                let answer=0;
                for(let x of s){
                    if(x===t) answer++;
                }
                return answer;
            }
            
            let str="COMPUTERPROGRAMMING";
            console.log(solution(str, 'R'));
        </script>
    </body>
</html>



<!--teacher's solution no.1-->

<html>
    <head>
        <meta charset="UTF-8">
        <title>출력결과</title>
    </head>
    <body>
        <script>
            function solution(s, t){
                let answer=s.split(t).length;
                return answer-1;
            }
            
            let str="COMPUTERPROGRAMMING";
            console.log(solution(str, 'R'));
        </script>
    </body>
</html>

두번째 solution은 split이라는 함수가 이해가 안된다. 아마 매개변수롤 받은 문자를 제거해주는 함수 같아 보인다. 근데 return answer-1; 부분을 잘 모르겠다.

profile
레거시 학살자

0개의 댓글