(단순 반복문) 나눗셈, 나머지 연산자 없이 나머지 값 구하기 Javascript

cptkuk91·2022년 8월 11일
1

Algorithm

목록 보기
56/161

문제

두 수(num1, num2)를 입력받아, num1를 num2로 나눈 나머지를 리턴해야 합니다.

주의 사항

나눗셈(/), 나머지(%) 연산자 사용은 금지됩니다.
0은 어떤 수로 나누어도 나머지가 0입니다.
어떤 수도 0으로 나눌 수 없습니다. 이 경우 'Error: cannot divide by zero'를 리턴해야 합니다.

풀이

(while문 활용)

function solution(num1, num2){
	// 우선 주의사항 num2가 0인경우를 만들어준다.
    if(num2 === 0){
		return "Error: cannot divide by zero";
    }
    
    while(num1 >= num2){
    	num1 -= num2;
    }
    
    return num1;
}

(for문 활용)

function solution(num1, num2){
	let result = 0;
    
    if(num2 === 0){
		return "Error: cannot divide by zero";
    }
    
    for(let i = 0; i < num1; i++){
    	if(num1 > num2 * i){
        	result = num1 - num2 * i;
        } else if(num1 === num2){
        	return 0;
        }
    }
    return result;
}

우선 while문 활용에 대해 자유롭지 못해 for문으로 풀었습니다. for문에서 num1을 설정한 이유는 num1과 num2가 같은 경우가 있기 때문입니다. 코드양을 봤을 때 while문 활용이 적절해보입니다.

profile
메일은 매일 확인하고 있습니다. 궁금하신 부분이나 틀린 부분에 대한 지적사항이 있으시다면 언제든 편하게 연락 부탁드려요 :)

0개의 댓글