알고리즘 테스트 ⏲
-
미니 전투 게임 제작 간단한 텍스트 게임이다. 다이어그램대로 작성했는데 자질구레한 기능들을 구현해 넣다보니 코드가 좀 지저분해진 것 같다. (플래그 변수 넣고 빼는 부분은 나중에 스스로 헷갈려서 버그 수정에 힘이 좀 들었다.) 오류 나올만한 부분은 모두 제거했고 문제는 게임이 재미가 .. 어차피 구현 훈련을 위한 목적이니까. 좀 더 게임스럽게 만들려면 그래픽도 추가하고 아이템이나 다양한 몬스터들도 추가를 하면 될 것 같다. 객체 지향으로 재설계하는게 이런 게임 만들기 프로그램에선 더 깔끔할 것 같긴 하다. 개인 풀이 다이어그램 알고리즘 const $startGame = document.querySelector(".startGame"); const $myInfo = document.querySelector..
[JavaScript] 미니 전투 게임 제작미니 전투 게임 제작 간단한 텍스트 게임이다. 다이어그램대로 작성했는데 자질구레한 기능들을 구현해 넣다보니 코드가 좀 지저분해진 것 같다. (플래그 변수 넣고 빼는 부분은 나중에 스스로 헷갈려서 버그 수정에 힘이 좀 들었다.) 오류 나올만한 부분은 모두 제거했고 문제는 게임이 재미가 .. 어차피 구현 훈련을 위한 목적이니까. 좀 더 게임스럽게 만들려면 그래픽도 추가하고 아이템이나 다양한 몬스터들도 추가를 하면 될 것 같다. 객체 지향으로 재설계하는게 이런 게임 만들기 프로그램에선 더 깔끔할 것 같긴 하다. 개인 풀이 다이어그램 알고리즘 const $startGame = document.querySelector(".startGame"); const $myInfo = document.querySelector..
2022.02.08 -
틱택토 프로그램 컴퓨터와 대결하여 가장 먼저 3칸을 연달아 차지하는 플레이어가 승리하는 프로그램을 작성하시오. 개인 풀이 다이어그램 알고리즘 const $log = document.querySelector(".log"); // 빈 테이블 생성 const spaceArray = []; for (let _ = 0; _ < 3; _++) { spaceArray.push(Array(3)); } const $items = document.querySelectorAll(".item"); let itemIndex = 0; // DOM 데이터 매칭 for (let i = 0; i < 3; i++) { for (let j = 0; j < 3; j++) { spaceArray[i][j] = $items[itemIndex]..
[JavaScript] 틱택토 프로그램 풀이틱택토 프로그램 컴퓨터와 대결하여 가장 먼저 3칸을 연달아 차지하는 플레이어가 승리하는 프로그램을 작성하시오. 개인 풀이 다이어그램 알고리즘 const $log = document.querySelector(".log"); // 빈 테이블 생성 const spaceArray = []; for (let _ = 0; _ < 3; _++) { spaceArray.push(Array(3)); } const $items = document.querySelectorAll(".item"); let itemIndex = 0; // DOM 데이터 매칭 for (let i = 0; i < 3; i++) { for (let j = 0; j < 3; j++) { spaceArray[i][j] = $items[itemIndex]..
2022.02.07 -
클릭속도 테스트 녹색 화면이 나왔을 때 클릭 속도를 측정하는 프로그램을 작성하시오. 개인 풀이 다이어그램 알고리즘 const $screen = document.querySelector(".screen"); const $timeDiff = document.querySelector(".timeDiff"); const $log = document.querySelector(".log"); const recordArray = []; let timeout; let startTime, endTime, timeDiff; let flag = true; const handleScreenClick = (e) => { if (flag === false) return; if ($screen.style.backgroundColo..
[JavaScript] 클릭속도 테스트 풀이클릭속도 테스트 녹색 화면이 나왔을 때 클릭 속도를 측정하는 프로그램을 작성하시오. 개인 풀이 다이어그램 알고리즘 const $screen = document.querySelector(".screen"); const $timeDiff = document.querySelector(".timeDiff"); const $log = document.querySelector(".log"); const recordArray = []; let timeout; let startTime, endTime, timeDiff; let flag = true; const handleScreenClick = (e) => { if (flag === false) return; if ($screen.style.backgroundColo..
2022.02.07 -
가위바위보 대결 프로그램 풀이 컴퓨터는 가위, 바위, 보를 연달아 순환하며 내 선택에 따라 결과를 판단해 승/패/무승부를 매기는 프로그램을 작성하시오. 개인 풀이 다이어그램 알고리즘 const $computer = document.querySelector("#computer"); const $score = document.querySelector("#score"); const $rock = document.querySelector("#rock"); const $scissors = document.querySelector("#scissors"); const $paper = document.querySelector("#paper"); const IMG_URL = "./rsp.png"; $computer.st..
[JavaScript] 가위바위보 대결 프로그램 풀이가위바위보 대결 프로그램 풀이 컴퓨터는 가위, 바위, 보를 연달아 순환하며 내 선택에 따라 결과를 판단해 승/패/무승부를 매기는 프로그램을 작성하시오. 개인 풀이 다이어그램 알고리즘 const $computer = document.querySelector("#computer"); const $score = document.querySelector("#score"); const $rock = document.querySelector("#rock"); const $scissors = document.querySelector("#scissors"); const $paper = document.querySelector("#paper"); const IMG_URL = "./rsp.png"; $computer.st..
2022.02.05 -
로또 추첨기 풀이 6개의 무작위 공과 1개의 보너스 공을 뽑아주는 프로그램을 작성하시오. 개인 풀이 다이어그램 알고리즘 // 무작위 숫자 7개 뽑기 const allNumbers = Array(45) .fill() .map((el, i) => i + 1); const randomNumbers = []; for (let _ = 0; _ < 7; _++) { const index = Math.floor(Math.random() * allNumbers.length); // 0 ~ 8 randomNumbers.push(allNumbers[index]); allNumbers.splice(index, 1); } const ballNumbers = randomNumbers.slice(0, 6).sort((a, b) ..
[JavaScript] 로또 추첨기 풀이로또 추첨기 풀이 6개의 무작위 공과 1개의 보너스 공을 뽑아주는 프로그램을 작성하시오. 개인 풀이 다이어그램 알고리즘 // 무작위 숫자 7개 뽑기 const allNumbers = Array(45) .fill() .map((el, i) => i + 1); const randomNumbers = []; for (let _ = 0; _ < 7; _++) { const index = Math.floor(Math.random() * allNumbers.length); // 0 ~ 8 randomNumbers.push(allNumbers[index]); allNumbers.splice(index, 1); } const ballNumbers = randomNumbers.slice(0, 6).sort((a, b) ..
2022.02.05 -
숫자야구 4자리 정답 숫자를 찾는 문제. 입력값 4자리 수 중 숫자가 포함되어 있는 경우 볼, 자리까지 동일하면 스트라이크. 모두 맞추면 홈런. 개인 풀이 다이어그램 알고리즘 // 랜덤 정수 4자리 정답값 부여 const randomNumberInRange = (min, max) => Math.floor(Math.random() * (max - min + 1)) + min; let answer = ""; while (answer.length !== 4) { let random = String(randomNumberInRange(1, 9)); if (answer.indexOf(random) == -1) { answer += random; } } // 정답값 표시 ( 실제 플레이 시 이 부분은 주석처리 ) ..
[JavaScript] 숫자야구 풀이숫자야구 4자리 정답 숫자를 찾는 문제. 입력값 4자리 수 중 숫자가 포함되어 있는 경우 볼, 자리까지 동일하면 스트라이크. 모두 맞추면 홈런. 개인 풀이 다이어그램 알고리즘 // 랜덤 정수 4자리 정답값 부여 const randomNumberInRange = (min, max) => Math.floor(Math.random() * (max - min + 1)) + min; let answer = ""; while (answer.length !== 4) { let random = String(randomNumberInRange(1, 9)); if (answer.indexOf(random) == -1) { answer += random; } } // 정답값 표시 ( 실제 플레이 시 이 부분은 주석처리 ) ..
2022.02.04