Javascript/프로그래머스Lv0
두 수의 몫 구하기/ 두 수의 나눗셈/두 수 비교하기/최대공약수/배열 두 배 만들기
정호나
2024. 6. 6. 18:19
1. 두 수의 몫 구하기
function solution(num1, num2) {
return Math.floor (num1/num2);
}
num1/num2 로 하면 num1=7, num2 =2 일때 몫이 3.5 로 안돼
몫이 정수로 나와야 함
2. 두 수의 나눗셈
function solution(num1, num2) {
//1. num1에 num2로 나눈다.
//2. 나눈 값에 1000을 곱한다.
//3. 그 값에 정수부분을 구한다.
//var answer = Math.floor(num1/num2*1000);
var answer = parseInt(num1/num2*1000);
return answer;
}
정수로 변환하기
- parseInt() : 문자를 받아 숫자로 변환하는 함수, 단순한 정수 버림
1) 문자가 아닌 경우 number->string
2) 10진수 추론을 위해 string 앞 2글자가 0x나 0X인지 비교
ex) -1.1 -> -1
- Math.floor()
수학적으로 버림함수
ex) '-1.1' -> -2
3. 두수 비교하기
자바스크립트에서 '==', '!=' 사용 금지!
비교 연산자는 true/false로 나와야해
if(true/false) {
}
else{
}
4. 최대공약수 구하기
function solution(numer1, denom1, numer2, denom2) {
var answer = [];
const num = denom2 * numer1 + denom1 * numer2 ;
const denom = denom1 * denom2;
let minNumber;
if(denom<num){
minNumber = denom;
}else{
minNumber = num;
}
//나누어 떨어지는 것 -> 나머지가 0인 것
while(true){
if ( denom % minNumber === 0 && num % minNumber === 0){
{
return [num / minNumber, denom/ minNumber];
}
}
minNumber--;
}
}
//minNumber에는 작은 수가 들어가 있음.
//1.분모덧셈
//2. 분자분모의 최대공약수로 나눔
//2-1 분자분모중 작은 수를 찾기
//2-2 작은 수를 분자분모로 나눠보기
//2-2-1 둘다 나누어 떨어지면 그 나눈 수가 최대공약수
//2-2-2 안 나누어떨어지면 작은 수를 1 줄이고 2-2로 돌아가기
5. 배열 두배 만들기
function solution(numbers) {
var answer = [];
let cnt = numbers.length;
for(i = 0; i < cnt; i++){
answer.push(numbers[i]*2);
}
return answer;
}
//1. numbers에서 원소를 꺼내야함. numbers[0]
//2. 원소를 꺼내 2배를 한 후 개 배열에 넣어줘야 함.