[JavaScript] 자연수의 배열을 짝수와 홀수들로 나누기

Haneul Choi·2021년 5월 20일
0

JavaScript

목록 보기
1/3
post-thumbnail

무작위의 배열을 만들고 그 안에 있는 요소들을 짝수와 홀수로 두개의 배열로 나눠보려고 합니다.

이론적으로 생각을 해보면은 첫번째로 해야 할 것은 바로 프로그램에서 각 수(number)가 짝수(even) 또는 홀수(odd)인지 확인시키 함수를 아래 조건문을 이용해 진실인지 거짓인지(boolean) 호출하게 하면 됩니다..

Program psuedoCode:
a라는 수를 2로 나누었을 때의 그 나머지를 b라고 부른다.
b가 0 또는 거짓(false) 이면 a는 짝수이다.
그렇지 않을 경우(b가 0이 아닐경우)에는 a는 홀수이다.

JavaScript Functional Code

let a = 24; // 짝수
let b = 17; // 홀수
    function checkEvenNumber(num) {
    let remainder = num % 2; // 나머지
    if(remainder === 0) {
    	return true;
    } 
    return false;
    }
// now test a, b;

let testA = checkEvenNumber(a); console.log(testA); // returns true
let testB = checkEvenNumber(b); console.log(textB); // returns false

이제 어떠한 수를 넣어도 우리는 그 수가 짝수 인지 또는 홀수 인지 이 함수가 반환하는 값으 통해 쉽게 알 수 있습니다.

그렇다면 요소(element)들이 수(number) 무작위의 배열(array)을 만들어서 홀수배열과 짝수 배열로 만드는 프로그램을 만들어 보겠습니다.

Applicaiton Code

function checkEvenNumber(num) {
   let remainder = num % 2;
   if(remainder === 0) {
    return true;
   } 
 return false;
}

const myArr = [1, 2, 3, 4, 5];
let oddArr = [];
let evenArr = [];
myArr.forEach(element => {
	if(checkEvenNumber(element)) {
    	evenArr.push(element);
    } else {
    	oddArr.push(element);
    }
})

// print the program result in console
console.log(evenArr); // [2,4]
console.log(oddArr); // [1,3,5]

왜 '짝수'인지 체크하는 논리를 선호하나요?
숫자 1은 2로 나누었을때 나머지가 1이 아니기때문에 경우의 조건문 하나가 더 필요하기 때문입니다. 그래서 이 프로그램을 응용할 때는 짝수인지를 체크하는 출력함수를 갖는것이이 더 효율적이라고 생각합니다.

written by @han-choi
date written 5/20/2021
Personal website
Github
Linkedin

profile
Web Developer 웹 개발 공부하는 사람

0개의 댓글