본문 바로가기
프로그래머스 코딩 테스트

프로그래머스 : JavaScript 알고리즘 100일 챌린지 7일차

by dongjin6539 2023. 5. 22.
728x90
반응형

프로그래머스 : JavaScript 알고리즘 100일 챌린지 7일차

 

코딩테스트 입문 Day7

 

 

1. 특정 문자 제거하기 : 문자열 my_string과 문자 letter이 매개변수로 주어집니다. my_string에서 letter를 제거한 문자열을 return하도록 solution 함수를 완성해주세요.

function solution(my_string, letter) {
    var answer = '';
    return answer;
}

길라잡이

  • 데이터를 수정해서 답을 구해보세요.
  • 예시
my_string letter result
"abcdef" "f" "abcde"
"BCBdbe" "B" "Cdbe"

 

답 확인하기
function solution(my_string, letter) {
    var answer = '';
    for (let i = 0; i < my_string.length; i++) {
        if (my_string[i] !== letter) {
            answer += my_string[i];
        }
    }
    return answer;
}

 

해설 확인하기

주어진 코드는 solution이라는 함수를 정의하고 있습니다. 이 함수는 my_string이라는 문자열과 letter라는 문자를 매개변수로 받습니다.

해당 함수의 동작은 다음과 같습니다:

빈 문자열 answer를 생성합니다.

for 루프를 사용하여 i를 0부터 my_string의 길이까지 반복합니다.

if 문을 사용하여 my_string[i]가 letter와 다른지 확인합니다.

my_string[i] !== letter는 my_string의 i번째 문자와 letter가 다른지를 확인하는 조건입니다.

my_string[i]가 letter와 다른 경우에만 answer에 추가합니다.

answer 문자열을 반환합니다.

결과적으로, solution 함수는 my_string 문자열에서 letter와 다른 문자들로 이루어진 새로운 문자열 answer를 생성하여 반환합니다. 예를 들어, my_string이 'hello'이고 letter가 'l'인 경우, 'heo'를 반환합니다.

 

2. 각도기 : 각에서 0도 초과 90도 미만은 예각, 90도는 직각, 90도 초과 180도 미만은 둔각 180도는 평각으로 분류합니다. 각 angle이 매개변수로 주어질 때 예각일 때 1, 직각일 때 2, 둔각일 때 3, 평각일 때 4를 return하도록 solution 함수를 완성해주세요.

function solution(angle) {
    var answer = 0;
    return answer;
}

길라잡이

  • 데이터를 수정해서 답을 구해보세요.
  • 예시
angle result
70 1
91 3
180 4

 

답 확인하기
function solution(angle) {
    if(angle > 0 && angle < 90){
        return 1;
    }
    if(angle === 90){
        return 2;
    }
    if(angle > 90 && angle < 180){
        return 3;
    }
    return 4;
}

 

해설 확인하기

주어진 코드는 solution이라는 함수를 정의하고 있습니다. 이 함수는 angle이라는 숫자를 매개변수로 받습니다.

해당 함수의 동작은 다음과 같습니다:

if 문을 사용하여 다음 조건을 확인합니다:

angle이 0보다 크고 90보다 작은 경우: 1을 반환합니다.

angle이 90과 같은 경우: 2를 반환합니다.

angle이 90보다 크고 180보다 작은 경우: 3을 반환합니다.

위의 조건들에 모두 해당하지 않는 경우: 4를 반환합니다.

과적으로, solution 함수는 angle 값에 따라 다음과 같은 값을 반환합니다:

0보다 크고 90보다 작은 경우: 1

90과 같은 경우: 2

90보다 크고 180보다 작은 경우: 3

위의 경우에 모두 해당하지 않는 경우: 4

 

3. 양꼬치 : 머쓱이네 양꼬치 가게는 10인분을 먹으면 음료수 하나를 서비스로 줍니다. 양꼬치는 1인분에 12,000원, 음료수는 2,000원입니다. 정수 n과 k가 매개변수로 주어졌을 때, 양꼬치 n인분과 음료수 k개를 먹었다면 총얼마를 지불해야 하는지 return 하도록 solution 함수를 완성해보세요.

function solution(n, k) {
    var answer = 0;
    return answer;
}

길라잡이

  • 데이터를 수정해서 답을 구해보세요.
  • 예시
n k result
10 3 124000
64 6 768000

 

답 확인하기
function solution(n, k) {
    var answer = 12000*n + 2000*k - Math.floor(n/10)*2000;
    return answer;
}

 

해설 확인하기

주어진 코드는 solution이라는 함수를 정의하고 있습니다. 이 함수는 n과 k라는 숫자를 매개변수로 받습니다.

해당 함수의 동작은 다음과 같습니다:

answer 변수를 생성합니다.

answer에 수식을 사용하여 값을 계산합니다.

12000 * n은 n에 12000을 곱한 값입니다.

2000 * k는 k에 2000을 곱한 값입니다.

Math.floor(n/10) * 2000은 n을 10으로 나눈 몫을 구한 후 2000을 곱한 값입니다.

answer 값을 반환합니다.

결과적으로, solution 함수는 주어진 수식에 따라 n과 k 값을 사용하여 answer 값을 계산하고 반환합니다.

 

4. 짝수의 합 : 정수 n이 주어질 때, n이하의 짝수를 모두 더한 값을 return 하도록 solution 함수를 작성해주세요.

function solution(n) {
    var answer = 0;
    return answer;
}

길라잡이

  • 변수 answer의 데이터를 수정해서 답을 구해보세요.
  • 예시
n result
10 30
4 6

 

답 확인하기
function solution(n) {
    let sum = 0;
    for(let i=1; i<=n; i++){
        if(i % 2 == 0){
            sum += i;
        }
    }
    return sum;
}

 

해설 확인하기

주어진 코드는 solution이라는 함수를 정의하고 있습니다. 이 함수는 n이라는 숫자를 매개변수로 받습니다.

해당 함수의 동작은 다음과 같습니다:

sum이라는 변수를 0으로 초기화합니다. 이 변수는 짝수의 합을 저장합니다.

for 루프를 사용하여 i를 1부터 n까지 반복합니다.

if 문을 사용하여 i가 짝수인지 확인합니다.

i % 2 == 0는 i를 2로 나눈 나머지가 0인지를 확인하는 조건입니다.

i가 짝수인 경우에만 sum에 i를 더합니다.

sum 값을 반환합니다.

결과적으로, solution 함수는 1부터 n까지의 짝수를 모두 더한 값을 반환합니다.

 

 

728x90
반응형