본문으로 바로가기
반응형

[문제]

이유덕,이재영,권종표,이재영,박민호,강상희,이재영,김지완,최승혁,이성연,박영서,박민호,전경헌,송정환,김재성,이유덕,전경헌

 

주어진 문자열(공백 없이 쉼표로 구분되어 있음)을 가지고 아래 문제에 대한 프로그램을 작성하세요.

  1. 김씨와 이씨는 각각 몇 명 인가요?
  2. "이재영"이란 이름이 몇 번 반복되나요?
  3. 중복을 제거한 이름을 출력하세요.
  4. 중복을 제거한 이름을 오름차순으로 정렬하여 출력하세요.

 

[정답]

function cynap1() {

    var kim = 0;

    var lee = 0;

    for (var i=0; i<s.length; i++){

        if(s[i][0] === '이') lee++;  // i가 문자열 ['이']와 일치한다면(type까지 일치) lee에 ++

        if(s[i][0] === '김') kim++; // i가 문자열 ['감']와 일치한다면(type까지 일치) kim에 ++

    }

    return "kim:"+ kim + " lee:" +lee; 

}



function cynap2() {

    var name = '이재영';

    var count = 0;

    for (var i=0; i<s.length; i++){

        if(s[i] === name){

            count++;

        }

    }

    return '이재영:'+ count;

}



function cynap3() {

    var uniq =[];

    for (var i=0; i<s.length; i++) {

        var uni_count=0;

        for (var j = 0; j < s.length; j++) {

            if(s[i] === s[j]) uni_count++;

        }

        if(uni_count<2) uniq.push(s[i]);

    }

    return uniq;

}



function cynap4() {

    return cynap3().sort();

}



var s = ['이유덕', '이재영', '권종표', '이재영', '박민호', '강상희',

    '이재영', '김지완', '최승혁', '이성연', '박영서',

    '박민호', '전경헌', '송정환', '김재성', '이유덕', '전경헌'];



console.log(cynap1(s));

console.log(cynap2(s));

console.log(cynap3(s));

console.log(cynap4(s));

name_array.js
0.00MB

반응형