AI · 자동화 · 홈페이지 제작 · IT 강의

업무를 자동화하고
수익형 웹 시스템을 만듭니다

코드콕콕은 실무 중심의 IT 강의, AI 사무자동화, 홈페이지 제작, 업무 자동화 외주 상담을 제공하는 기술 블로그입니다.

Code KokKok

배우고, 만들고, 자동화하는 실무형 IT 블로그

AI 사무자동화

엑셀, 문서, PPT, 반복 업무를 자동화합니다.

자세히 보기

홈페이지 제작

회사, 교육원, 상담 사이트를 목적에 맞게 제작합니다.

자세히 보기

IT 실무 강의

HTML, CSS, JavaScript, Python, 자동화 강의를 제공합니다.

강의 보기

최신 글

총 18개의 글

사다리타기
No Image
로또번호 추천
No Image
HTML Canvas로 테트리스 게임 만들기
No Image
빈 줄 제거기 - 공백 줄 · 숨겨진 문자 자동 정리
No Image
우편번호 검색 / 영어 주소
No Image

사다리타기

사다리타기 게임 만들기 (JavaScript 구현)

이 예제는 HTML Canvas와 JavaScript를 활용하여 만든 사다리타기 게임입니다. 인원수를 입력하고 결과 항목을 설정하면, 자동으로 사다리가 생성되고 각 참가자의 이동 경로를 애니메이션으로 확인할 수 있습니다.

Canvas 위에 세로선과 가로선을 그리고, JavaScript로 경로를 계산하여 참가자가 어떤 결과에 도착하는지 보여주는 구조입니다.

사다리 설정

Player 1

선물1

사용 방법

  1. 인원수를 입력합니다. 최소 2명부터 최대 10명까지 설정할 수 있습니다.
  2. 사다리 생성 버튼을 누르면 인원수에 맞게 결과 입력칸이 만들어집니다.
  3. 각 입력칸에 선물, 벌칙, 메뉴, 팀 이름 등 원하는 결과를 입력합니다.
  4. 1번부터 시작 버튼을 누르면 1번 참가자부터 순서대로 사다리를 타기 시작합니다.
  5. 각 참가자의 이동 경로가 색상 선으로 표시되고, 도착한 결과가 팝업으로 나타납니다.
  6. 모든 참가자가 완료되면 버튼이 전부 완료 상태로 바뀝니다.

결과를 다시 정하고 싶다면 인원수나 결과 항목을 수정한 뒤 사다리 생성 버튼을 다시 누르면 됩니다.

활용 예시

  • 점심 메뉴 정하기
  • 벌칙 정하기
  • 선물 추첨하기
  • 팀 배정하기
  • 발표 순서 정하기

사다리타기 게임은 단순한 놀이처럼 보이지만, JavaScript의 배열 처리, Canvas 그리기, 이벤트 처리, 애니메이션 로직을 함께 학습할 수 있는 좋은 예제입니다.

웹 개발을 처음 배우는 분들도 이 구조를 따라가면 인터랙티브한 웹 도구를 만드는 흐름을 이해할 수 있습니다.

'IT_Internet > Game' 카테고리의 다른 글

로또번호 추천  (0) 2026.05.01
HTML Canvas로 테트리스 게임 만들기  (0) 2026.05.01

업무 자동화나 홈페이지 제작이 필요하신가요?

AI 자동화, 엑셀/문서 자동화, 홈페이지 제작, IT 강의 상담을 도와드립니다.

상담 신청하기

로또번호 추천

로또 번호 추첨기 (JavaScript 구현)

이 프로그램은 JavaScript와 Canvas를 활용하여 만든 로또 번호 추첨기입니다. 공이 회전하며 섞인 후 랜덤으로 6개의 번호가 추출되는 구조로 구현되어 있습니다.

실제 로또 머신처럼 물리 움직임을 적용하여 자연스럽게 번호가 선택되도록 구성하였습니다. 아래 버튼을 눌러 직접 추첨을 실행해보세요.

Lotto 6/45

 

핵심 기능

  • 1 ~ 45번 공 랜덤 생성  1번부터 45번 공을 전부 만들어서 원 안에 넣습니다.
  • for (let i = 1; i <= 45; i++) balls.push(new Ball(i));
    
  • 공의 충돌 및 회전 물리 구현
  • 6개 번호 자동 추출
  • 다시 추첨 기능

이 코드를 활용하면 다양한 랜덤 추첨 프로그램이나 게임 기능으로 확장할 수 있습니다.

로또 당첨은 어떤 사람이 될까?

1. 꿈이 정말 알려줄까?

실제로 당첨자들 사이에서 '꿈'은 가장 흔한 당첨 징조로 꼽힙니다. 당첨자 인터뷰 사례에서 좋은 꿈 이야기가 자주 등장하며, 아래와 같은 유형이 특히 많이 언급됩니다.

  • 조상님 꿈: 가장 대표적인 사례입니다. 조상님이 나타나 밝은 미소를 지으시거나, 숫자를 알려주거나, 보따리를 주시는 꿈이 많습니다.
  • 동물 및 자연 꿈: 돼지 떼가 집으로 들어오는 꿈, 온 세상이 불바다가 되는 꿈, 맑은 물이 집 안에 가득 차는 꿈 등이 자주 언급됩니다.
  • 유명인 꿈: 대통령이나 유명한 연예인과 악수를 하거나 함께 식사를 하는 꿈을 꾸고 당첨된 사례도 있다고 알려져 있습니다.

물론 꿈이 당첨을 보장하는 것은 아닙니다. 다만 기대감과 설렘이 생겼을 때 복권을 구매하게 되는 심리적 계기가 된다는 점에서 흥미로운 현상입니다.

2. 통계로 분석이 가능할까?

로또는 기계에서 공이 무작위로 추출되는 독립 시행입니다. 따라서 엄밀히 말하면 '다음 번호'를 예측하는 수학적 방법은 존재하지 않습니다. 하지만 '기록'으로서의 통계는 존재합니다.

  • 자주 나오는 번호: 특정 회차 동안 유난히 자주 등장한 '핫 넘버(Hot Numbers)'와 오랫동안 나오지 않은 '콜드 넘버(Cold Numbers)'를 조합하는 방식입니다.
  • 번호대별 균형: 1번대, 10번대, 20번대 등 각 구간에서 골고루 번호가 섞여 나오는 비율을 분석합니다.
  • 홀짝 및 총합: 홀수와 짝수의 비율(3:3 또는 2:4), 그리고 여섯 숫자 합계의 평균 범위(보통 120~180 사이)를 참고하기도 합니다.
  • 현실적인 통계: 역대 당첨자들의 통계를 보면, 자동 선택 비중이 수동보다 압도적으로 높습니다(약 60~70%). 결국 통계적 분석보다는 '운'과 '꾸준함'이 더 큰 요인임을 보여줍니다.

3. 당첨된 사람들의 실제 사례

어떤 사람들이 당첨되는지에 대한 흥미로운 특징들입니다.

  • 소액으로 꾸준히: 당첨자들의 상당수는 한꺼번에 수십만 원어치를 사는 사람이 아니라, 매주 5,000원에서 10,000원 정도를 규칙적으로 구매해 온 사람들이라고 합니다.
  • 우연한 구매: 거스름돈으로 샀거나, 평소에 안 가던 길에서 눈에 띄는 판매점에 들어가 샀다가 당첨된 사례가 아주 많습니다.
  • 나눔의 습관: 당첨자 인터뷰 중에는 "평소에 주변에 베푸는 마음으로 살았는데 복을 받은 것 같다"는 이야기가 종종 등장합니다.

로또 역대 최다 빈출 번호 알아볼까요?

역대 로또(1회~1222회)에서 통계적으로 가장 자주 등장한 숫자 상위 6개와 최근 흐름을 반영한 조합의 예시는 다음과 같습니다.

 

📊 역대 최다 빈출 번호 (보너스 번호 포함 기준)

역대 가장 많이 뽑힌 숫자들을 순서대로 나열하면 보통 다음과 같은 번호들이 상위권을 차지합니다. (데이터 집계 시점에 따라 1~2단계 차이는 있을 수 있습니다.)

  1. 43: 압도적인 1위 후보로 자주 등장합니다.
  2. 34: 최근 몇 년간 빈도가 급상승한 번호입니다.
  3. 12: 초창기부터 꾸준히 나오는 번호입니다.
  4. 27: 20번대 중 가장 강력한 통계를 가집니다.
  5. 1: 첫 번째 번호로 자주 등장하는 상징적인 숫자입니다.
  6. 33: 쌍둥이 번호 중 가장 출현 빈도가 높습니다.

🎲 'Hot Numbers' 기반 추천 조합

위의 통계적 빈도와 최근 10회차 이내의 흐름을 섞어서 번호를 구성해 본다면 다음과 같은 조합이 가능합니다.

[ 1, 12, 27, 33, 34, 43 ]

 

'IT_Internet > Game' 카테고리의 다른 글

사다리타기  (0) 2026.05.01
HTML Canvas로 테트리스 게임 만들기  (0) 2026.05.01

업무 자동화나 홈페이지 제작이 필요하신가요?

AI 자동화, 엑셀/문서 자동화, 홈페이지 제작, IT 강의 상담을 도와드립니다.

상담 신청하기

HTML Canvas로 테트리스 게임 만들기

HTML5 Canvas로 테트리스 게임 만들기

이 글에서는 JavaScript와 Canvas를 활용하여 테트리스 게임을 구현하는 방법을 설명합니다. 블록 이동, 회전, 충돌 판정, 점수 계산 등 게임의 핵심 로직을 직접 구현할 수 있습니다.

아래 게임을 직접 실행해보면서 동작 원리를 확인해보세요.

Score

0

Level

1

Lines

0

Rotate
← → Move
Soft Drop
Space Hard Drop

GAME OVER

Next Piece

핵심 로직

1. createMatrix()
게임판 배열을 생성하는 함수입니다.
테트리스 게임판은 10칸 × 20줄 구조이며, 각 칸은 0 또는 블록 번호를 저장합니다.
0은 빈 칸을 의미하고, 1~7은 서로 다른 테트리스 블록 색상을 의미합니다.

 

2. drawBoard()
canvas 위에 현재 게임판을 다시 그리는 함수입니다.
먼저 기존 화면을 지우고, 격자선을 그린 다음, 고정된 블록과 현재 떨어지고 있는 블록을 함께 출력합니다.

 

3. collide()
현재 블록이 벽, 바닥, 기존 블록과 충돌했는지 확인합니다.
블록이 이동하거나 회전할 때마다 이 함수를 사용하여 가능한 움직임인지 검사합니다.

 

4. merge()
떨어지던 블록이 더 이상 내려갈 수 없을 때, 해당 블록을 게임판 배열에 고정합니다.
이후 새로운 블록이 생성됩니다.

 

5. sweep()
가로 한 줄이 모두 채워졌는지 검사하고, 채워진 줄을 제거합니다.
줄이 제거되면 점수가 올라가고, 일정 줄 수 이상이 되면 레벨이 증가합니다.

 

6. update()
게임 루프를 담당하는 함수입니다.
requestAnimationFrame()을 이용해 화면을 계속 갱신하고, 일정 시간이 지나면 블록이 자동으로 한 칸씩 내려가도록 처리합니다.

 

테트리스 구현 핵심 정리

테트리스는 2차원 배열을 활용하여 블록의 위치를 관리하며, 충돌 감지와 회전 알고리즘을 통해 동작합니다.

이러한 구조를 이해하면 다양한 게임이나 인터랙티브 웹 기능으로 확장할 수 있습니다.

 

 

'IT_Internet > Game' 카테고리의 다른 글

사다리타기  (0) 2026.05.01
로또번호 추천  (0) 2026.05.01

업무 자동화나 홈페이지 제작이 필요하신가요?

AI 자동화, 엑셀/문서 자동화, 홈페이지 제작, IT 강의 상담을 도와드립니다.

상담 신청하기

빈 줄 제거기 - 공백 줄 · 숨겨진 문자 자동 정리

빈 줄 제거기 — 공백 줄 · 숨겨진 특수 문자 자동 정리

텍스트를 붙여넣으면 불필요한 빈 줄(공백 줄)을 자동으로 제거하고, 눈에 보이지 않는 제로폭 공백 같은 숨겨진 특수 문자까지 함께 정리해주는 도구입니다.
블로그 글 편집, 문서 정리, 코드 클린업 등 빈 줄이 많아진 텍스트를 빠르게 다듬을 때 유용합니다.

  • 빈 줄 자동 제거 — 연속된 빈 줄·공백만 있는 줄을 한 번에 정리
  • 제로폭 공백 제거 — 눈에 보이지 않는 Zero-width 특수 문자(U+200B 등) 자동 삭제
  • 실시간 자동 변환 — 체크 옵션으로 입력 즉시 결과 반영
  • 결과 복사 — 변환된 텍스트를 클립보드에 바로 복사
  • 전체 삭제 — 입력·출력 칸을 한 번에 초기화

빈 줄 제거

변환할 텍스트

변환 결과


사용 방법

  1. 왼쪽 변환할 텍스트 칸에 정리할 텍스트를 붙여넣습니다(Ctrl+V).
  2. 자동 변환 체크가 켜져 있으면 입력 즉시 오른쪽 변환 결과 칸에 결과가 나타납니다.
  3. 복사 버튼을 누르면 변환된 텍스트가 클립보드에 복사됩니다(Ctrl+C로도 가능).
  4. 다시 시작하려면 삭제 버튼으로 입력·출력 칸을 모두 초기화하세요.

제거되는 항목

항목 설명
빈 줄 / 공백만 있는 줄 줄바꿈 사이에 내용 없이 비어 있거나 공백·탭만 있는 줄을 한 줄로 압축
제로폭 공백 (Zero-width space) U+200B~U+200D, U+FEFF 등 눈에 보이지 않지만 텍스트에 섞여 있는 숨겨진 문자

자주 묻는 질문 (FAQ)

Q. 빈 줄이 여러 개 연속으로 있을 때 모두 없어지나요?

네. 연속된 빈 줄은 모두 제거되어 단락 사이 줄바꿈이 딱 하나만 남습니다. 예를 들어 빈 줄이 3개 연속이면 줄바꿈 1개로 합쳐집니다.

Q. 제로폭 공백(Zero-width space)이란 무엇인가요?

화면에 보이지 않지만 텍스트 안에 숨어 있는 특수 문자입니다. 카카오톡, 웹페이지, 일부 편집기에서 복사한 텍스트에 자주 섞여 있으며, 검색·정렬·저장 오류의 원인이 되기도 합니다. 이 도구는 해당 문자를 자동으로 감지해 제거합니다.

Q. 자동 변환을 끄면 어떻게 되나요?

자동 변환 체크를 해제하면 텍스트를 입력해도 즉시 반영되지 않습니다. 붙여넣기 후 내용을 직접 수정하거나 확인한 뒤, 원하는 시점에 체크를 켜서 변환할 수 있습니다.

Q. 원본 텍스트는 변경되나요?

아니요. 왼쪽 변환할 텍스트 칸의 원본은 그대로 유지되고, 오른쪽 변환 결과 칸에만 정리된 텍스트가 표시됩니다. 원본과 결과를 나란히 비교할 수 있습니다.

이용 안내
• 입력한 텍스트는 브라우저에서만 처리되며 외부 서버로 전송되지 않습니다.
• 제로폭 공백 외 다른 특수 문자(줄바꿈 종류 등)는 제거 대상이 아닙니다.
• 복사 기능은 브라우저 클립보드 권한이 필요하며, 실패 시 결과 칸을 직접 드래그해 복사(Ctrl+C)하세요.

업무 자동화나 홈페이지 제작이 필요하신가요?

AI 자동화, 엑셀/문서 자동화, 홈페이지 제작, IT 강의 상담을 도와드립니다.

상담 신청하기

우편번호 검색 / 영어 주소

우편번호 · 주소 찾기 — 카카오 주소 검색 위젯

버튼 하나로 카카오(다음) 주소 검색 팝업을 열고, 선택한 주소의 우편번호·한글주소·영문주소를 자동으로 입력해주는 위젯입니다.
별도 가입이나 API 키 없이 바로 사용할 수 있어 블로그나 웹페이지에 간단하게 삽입할 수 있습니다.

  • 카카오 주소 검색 팝업 — 도로명주소·지번주소 모두 검색 지원
  • 우편번호 자동 입력 — 5자리 신 우편번호(ZIP) 자동 반영
  • 영문주소 자동 입력 — 한글 주소 선택 시 영문주소도 함께 자동 표시
  • 복사 기능 — 한글주소·영문주소 각각 클립보드 복사 가능
  • 초기화 — 입력된 주소·우편번호 한 번에 삭제

버튼을 누르면 주소 검색 팝업이 열리고, 선택한 주소가 아래에 자동 입력됩니다.

 

우편번호
주소
영문주소
 

사용 방법

  1. 주소 / 우편번호 찾기 버튼을 클릭합니다.
  2. 카카오 주소 검색 팝업이 열리면 찾을 주소를 입력하고 검색합니다.
  3. 목록에서 원하는 주소를 클릭하면 우편번호·한글주소·영문주소가 자동으로 입력됩니다.
  4. 한글주소 복사 또는 영문주소 복사 버튼으로 클립보드에 바로 복사할 수 있습니다.
  5. 새로 검색하거나 초기화하려면 지우기 버튼을 누르세요.

주소 형식 안내

항목 설명
우편번호 2015년 도입된 5자리 신 우편번호 (구 6자리와 다름)
도로명주소 도로명 + 건물번호 기반 주소 (예: 테헤란로 427) — 공공기관·택배 법정 표준
지번주소 토지 지번 기반 주소 (예: 역삼동 737)
영문주소 카카오 API가 제공하는 공식 영문 변환 주소 (국제 우편·해외 서류에 활용)

자주 묻는 질문 (FAQ)

Q. API 키나 별도 가입이 필요한가요?

카카오(다음) 우편번호 서비스는 별도 API 키 없이 공개 스크립트를 불러와 사용할 수 있습니다. 단, 카카오 정책에 따라 서비스 내용이 변경될 수 있으니 상업용 대규모 활용 시에는 카카오 API 약관을 별도로 확인하세요.

Q. 도로명주소와 지번주소 중 어떤 것을 선택해야 하나요?

공공기관 서류, 택배, 계약서에는 도로명주소가 법정 표준입니다. 검색 팝업에서 원하는 형식을 직접 선택할 수 있으며, 선택한 형식에 맞춰 영문주소도 함께 표시됩니다.

Q. 영문주소가 비어 있는 경우가 있나요?

일부 지번주소나 특수 지역은 카카오 API에서 영문주소를 제공하지 않을 수 있습니다. 이 경우 영문주소 칸이 비어 있을 수 있으니, 도로명주소로 다시 검색해보세요.

Q. 모바일에서도 사용할 수 있나요?

네. 카카오 우편번호 팝업은 모바일 브라우저에서도 정상 동작합니다. 팝업 대신 별도 레이어로 열릴 수 있으며, 주소 선택 후 자동 입력까지 동일하게 작동합니다.

Q. 복사 버튼이 동작하지 않을 때는 어떻게 하나요?

브라우저의 클립보드 접근 권한이 차단된 경우 복사가 실패할 수 있습니다. 주소 입력칸을 직접 클릭해 텍스트를 드래그 선택 후 복사(Ctrl+C)하는 방법을 사용하세요.

이용 안내
• 주소 데이터는 카카오(다음) 우편번호 서비스(postcode.v2.js)를 통해 제공되며, 데이터 정확성은 카카오 서버 기준입니다.
• 입력된 주소 정보는 브라우저에서만 처리되며 외부 서버로 별도 전송되지 않습니다.
• 복사 기능은 브라우저의 클립보드 접근 권한이 필요하며, 일부 환경에서 권한 요청이 표시될 수 있습니다.

업무 자동화나 홈페이지 제작이 필요하신가요?

AI 자동화, 엑셀/문서 자동화, 홈페이지 제작, IT 강의 상담을 도와드립니다.

상담 신청하기