Guess the random number! by 임지윤
문제: 참여자들은 1-10의 숫자 중 어떤 수가 랜덤 숫자가 될 지 짐작하고 고릅니다.
2명 이상의 참여자가 모이면 주인은 랜덤 숫자를 생성하고, 제일 근접하게 맞춘 참여자가 우승합니다.
// SPDX-License-Identifier: GPL-3.0
pragma solidity >=0.7.0 < 0.9.0;
contract guessRandomNumber{
uint public participants; // 현재 베팅한 사람 수
address private _owner; // 컨트렉트 주인
address[] addresses; // 참여한 사람들의 주소 저장
mapping (address => uint256) addressToGuesses; // 참여한 사람들의 주소와 베팅한 값 연결
event randomNumber(uint random); // 랜덤 숫자가 생성 되면 이벤트 발생
constructor() {
// 처음 디플로이 한 사람의 주소를 주인으로 설정
}
function betNumber(uint256 _bet) public {
// 베팅한 수는 1부터 10인 숫자만 가능
// 현재 함수를 호출한 주소를 저장하고, 베팅한 값을 매핑에 저장
// 참여자 수 증가시키기
}
function closest2Random(string memory _random) public onlyOwner returns(address) {
// 참여자가 한명보다 많아야 실행 가능
// 받은 문자열로 1-10의 랜덤 정수 생성, 이벤트 발생시키기
// 참여자 수를 다시 0으로 만들기
// 랜덤 정수로 제일 근접하게 맞춘 참여자를 찾고 리턴하기
}
modifier onlyOwner() {
// 주인만 함수를 사용할 수 있도록 하기
}
}
// SPDX-License-Identifier: GPL-3.0
pragma solidity >=0.7.0 < 0.9.0;
contract guessRandomNumber{
uint public participants; // 현재 베팅한 사람 수
address private _owner; // 컨트렉트 주인
address[] addresses; // 참여한 사람들의 주소 저장
mapping (address => uint256) addressToGuesses; // 참여한 사람들의 주소와 베팅한 값 연결
event randomNumber(uint random); // 랜덤 숫자가 생성 되면 이벤트 발생
constructor() {
// 처음 디플로이 한 사람의 주소를 주인으로 설정
}
function betNumber(uint256 _bet) public {
// 베팅한 수는 1부터 10인 숫자만 가능
// 현재 함수를 호출한 주소를 저장하고, 베팅한 값을 매핑에 저장
// 참여자 수 증가시키기
}
function closest2Random(string memory _random) public onlyOwner returns(address) {
// 참여자가 한명보다 많아야 실행 가능
// 받은 문자열로 1-10의 랜덤 정수 생성, 이벤트 발생시키기
// 참여자 수를 다시 0으로 만들기
// 랜덤 정수로 제일 근접하게 맞춘 참여자를 찾고 리턴하기
}
modifier onlyOwner() {
// 주인만 함수를 사용할 수 있도록 하기
}
}