문제
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
메모
- 나머지(%): 왼쪽 피연산자를 오른쪽 피연산자로 나눴을 때의 나머지를 구한다. 부호는 항상 왼쪽 피연산자의 부호를 따른다.
- AND(&&): 모든 불리언 피연산자가 true가 되었을 때 해당 피연산자의 집합은 true가 된다. 보다 일반적으로 왼쪽에서 오른쪽으로 평가할 때 연산자는 처음으로 만나는 거짓 같은 피연산자의 값을 반환한다. 혹은 모두 참 같은 값이라면 마지막 피연산자의 값을 반환한다.
- 나누기(/): 왼쪽 피연산자를 피제수, 오른쪽 피연산자를 제수로 하여 몫을 구한다.
- for: for문은 괄호로 감싸고 세미콜론으로 구분한 세 개의 선택식과, 반복을 수행할 문(주로 블럭문)으로 이루어져 있다.
정답
function solution(numer1, denom1, numer2, denom2) {
// 분자
let top = denom1 * numer2 + denom2 * numer1;
// 분모
let bottom = denom1 * denom2;
// 최소 공배수
let maximum = 1;
// 약분
for (i = 1; i <= top; i++) {
if (top % i === 0 && bottom % i === 0) {
maximum = i;
}
}
return [top / maximum, bottom / maximum];
}
console.log(solution(1, 2, 3, 4)); // [ 5, 4 ]
문제
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
메모
- 나머지(%): 왼쪽 피연산자를 오른쪽 피연산자로 나눴을 때의 나머지를 구한다. 부호는 항상 왼쪽 피연산자의 부호를 따른다.
- AND(&&): 모든 불리언 피연산자가 true가 되었을 때 해당 피연산자의 집합은 true가 된다. 보다 일반적으로 왼쪽에서 오른쪽으로 평가할 때 연산자는 처음으로 만나는 거짓 같은 피연산자의 값을 반환한다. 혹은 모두 참 같은 값이라면 마지막 피연산자의 값을 반환한다.
- 나누기(/): 왼쪽 피연산자를 피제수, 오른쪽 피연산자를 제수로 하여 몫을 구한다.
- for: for문은 괄호로 감싸고 세미콜론으로 구분한 세 개의 선택식과, 반복을 수행할 문(주로 블럭문)으로 이루어져 있다.
정답
function solution(numer1, denom1, numer2, denom2) {
// 분자
let top = denom1 * numer2 + denom2 * numer1;
// 분모
let bottom = denom1 * denom2;
// 최소 공배수
let maximum = 1;
// 약분
for (i = 1; i <= top; i++) {
if (top % i === 0 && bottom % i === 0) {
maximum = i;
}
}
return [top / maximum, bottom / maximum];
}
console.log(solution(1, 2, 3, 4)); // [ 5, 4 ]