소수

발행: (2026년 1월 3일 오후 09:46 GMT+9)
2 min read
원문: Dev.to

Source: Dev.to

논리 구축 (전략)

소수의 일반적인 규칙은 1과 자기 자신으로만 나누어떨어진다는 것입니다. 하지만 흔히 혼동되는 점은 합성수(예: 4)도 1과 자기 자신으로 나누어떨어진다는 점입니다.

  • 소수 (예: 5): 1부터 자기 자신까지 모든 수로 나누었을 때, 나머지가 0이 되는 경우가 정확히 두 번( 1 과 5 ) 발생합니다.
  • 합성수 (예: 4): 나머지가 0이 되는 경우가 두 번보다 많이 발생합니다( 1, 2, 그리고 4 ).

레시피 작성 (알고리즘)

코드를 레시피처럼 생각합니다:

  1. 입력: 숫자를 받습니다.
  2. 반복: 1부터 입력된 숫자까지 모든 수를 확인합니다.
  3. 나머지 확인: 모듈로 연산(%)을 사용해 나머지가 0인 경우를 찾습니다.
  4. 카운터: 나머지가 0인 횟수를 셉니다.
  5. 최종 결과: 카운트가 정확히 2이면 소수, 그렇지 않으면 합성수입니다.

재료 (변수)

  • input: 검사할 숫자.
  • count: 약수의 개수를 추적합니다.
  • for 루프:
    • 시작: 1 (초기화)
    • 끝: 입력값 (조건)
    • 다음 단계: +1 (증가)
  • if‑else: 로직을 처리합니다.

프로그램 (JavaScript)

var a = 24;
var c = 0;

for (i = 1; i <= a; i++) {
    if (a % i == 0) {
        c++;
    }
}

if (c == 2) {
    console.log("Prime");
} else {
    console.log("Not Prime");
}
Back to Blog

관련 글

더 보기 »

Clone Graph: 코딩 문제 솔루션 설명

Clone Graph 문제는 연결된 그래프의 깊은 복사본을 만드는 것을 요구합니다. 그래프의 각 노드에는 값과 이웃 노드들의 리스트가 포함되어 있습니다....

LeetCode DSA 시리즈 #6: 268. Missing Number

문제 개요: 이 작업은 LeetCode 문제 268, Missing Number입니다 – 0부터 n까지의 범위에서 추출된 n개의 서로 다른 숫자를 포함하는 배열 nums가 주어질 때, 하나의 누락된 숫자를 찾는 문제입니다.

100일 중 7일차

오늘 나는 알고리즘을 작성하는 것으로 시작했다. 간단한 게임 아이디어를 생각해보고 그것들을 알고리즘으로 나누었으며, 먼저 종이에 스케치한 뒤에 …