- 하루에 네문제씩 풀이 (프로그래머스내 학습 커리큘럼 이용)
- 문제 설명 및 풀이 작성

문제 설명
정수 num1과 num2가 주어질 때, num1과 num2의 합을 return하도록 soltuion 함수를 완성해주세요.
제한사항
-50,000 ≤ num1 ≤ 50,000
-50,000 ≤ num2 ≤ 50,000
입출력 예
num1 num2 result
2 3 5
100 2 102
입출력 예 설명
입출력 예 #1
num1이 2이고 num2가 3이므로 2 + 3 = 5를 return합니다.
입출력 예 #2
num1이 100이고 num2가 2이므로 100 + 2 = 102를 return합니다.
//문제풀이
function solution(num1, num2) {
let answer = num1 + num2;
return answer;
}
너무 생각을 안하고 푼 느낌.
조건을 따로 걸지 않았고, 그냥 테스트케이스에서 넘어가길래 제출을 해버림.. 생각이 짧았다..
두 수의 차
문제 설명
정수 num1과 num2가 주어질 때, num1에서 num2를 뺀 값을 return하도록 soltuion 함수를 완성해주세요.
제한사항
-50000 ≤ num1 ≤ 50000
-50000 ≤ num2 ≤ 50000
입출력 예
num1 num2 result
2 3 -1
100 2 98
입출력 예 설명
입출력 예 #1
num1이 2이고 num2가 3이므로 2 - 3 = -1을 return합니다.
입출력 예 #2
num1이 100이고 num2가 2이므로 100 - 2 = 98을 return합니다.
//문제풀이
function solution(num1, num2) {
let answer = num1 - num2;
if((num1||num2 <= 50000)&&(num1 || num2 >= -50000))
return answer;
}
예외처리를 어떻게 걸까 하다 2중 if문으로 걸면 코드가 너무 길어저서 삼항연산자를 사용하여 문제풀이 해봤음.
여기서 다른 사람의 문제 풀이에는 조건은 안걸렸지만, 화살표함수를 이용한 풀이가 있길래 다음 문제에 적용 해봐야겠다는 계획을 세움.
문제 설명
정수 num1, num2가 매개변수 주어집니다. num1과 num2를 곱한 값을 return 하도록 solution 함수를 완성해주세요.
제한사항
0 ≤ num1 ≤ 100
0 ≤ num2 ≤ 100
입출력 예
num1 num2 result
3 4 12
27 19 513
입출력 예 설명
입출력 예 #1
num1이 3, num2가 4이므로 3 * 4 = 12를 return합니다.
입출력 예 #2
num1이 27, num2가 19이므로 27 * 19 = 513을 return합니다.
const solution = (num1, num2) => {
if((num1 || num2 <= 100) && (num1||num2 >= 0))
return num1 * num2;
}
여기선 그래도 꽤 깔끔한 풀이가 되었다 생각했음.
근데 다른 사람이 2중 for문을 이용하여 푼 것을 봤는데 너무 신박했다. 한번만에 이해되는 코드는 아니었지만, 저렇게 짤 수도 있구나 싶어서 놀랬다. 아래 적어놓음.
function solution(num1, num2) {
var ans = 0;
for (let i = 1; i <= num1; i++){
for (let j = 1; j <= num2; j++){
ans = ans + 1;
}
}
return ans;
}
문제 설명
정수 num1, num2가 매개변수로 주어질 때, num1을 num2로 나눈 몫을 return 하도록 solution 함수를 완성해주세요.
제한사항
0 < num1 ≤ 100
0 < num2 ≤ 100
입출력 예
num1 num2 result
10 5 2
7 2 3
입출력 예 설명
입출력 예 #1
num1이 10, num2가 5이므로 10을 5로 나눈 몫 2를 return 합니다.
입출력 예 #2
num1이 7, num2가 2이므로 7을 2로 나눈 몫 3을 return 합니다.
const solution = (num1, num2) => {
if((num1||num2 > 0) && (num1||num2 <= 100))
return parseInt(num1/num2);
}
이것도 3번과 마찬가지의 방식으로 짰고, 다만 parseInt를 사용하여 입출력 예시#2와 같이 소수점으로 떨어지는 값들을 정수만 표현하게 나타냄.