반응형
📄 로또 번호 자동 생성기 요구 사항
- OCP 원칙을 지키며 소스 코드를 작성합니다.
- 로또 번호는 1~45 사이의 숫자를 6개 뽑아야 합니다.
- 각 숫자는 중복되면 안됩니다.
- 실행할 때 마다 결과가 달라야 합니다.
LottoGenerator.java
import java.util.Random;
public class LottoGenerator {
private final Random random = new Random();
private int[] lottoNumbers;
private int count;
public int[] generate() {
lottoNumbers = new int[6];
count = 0;
while (count < 6) {
// 1부터 45 사이의 숫자 생성
int number = random.nextInt(45) + 1;
// 중복되지 않은 경우에만 배열에 추가
if (isUnique(number)){
lottoNumbers[count] = number;
count++;
}
}
return lottoNumbers;
}
private boolean isUnique(int number) {
for (int i = 0; i < count; i++) {
if (lottoNumbers[i] == number) {
return false;
}
}
return true;
}
}
LottoGeneratorMain.java
public class LottoGeneratorMain {
public static void main(String[] args) {
LottoGenerator generator = new LottoGenerator();
int[] lottoNumbers = generator.generate();
// 생성된 로또 번호 출력
System.out.print("로또 번호: ");
for (int lottoNumber : lottoNumbers) {
System.out.print(lottoNumber + " ");
}
}
}
반응형
'JAVA & Spring' 카테고리의 다른 글
[Spring] QueryDSL 설정 총 정리 (build.gradle) (0) | 2024.11.24 |
---|---|
[Java] 인수(Argument)란? 매개변수(Parameter)란? 아주 쉽게 정리(+코드) (0) | 2024.10.23 |
[Java] 객체(Object)란? 인스턴스(Instance)란? 아주 쉽게 정리(+코드) (0) | 2024.10.16 |
[Java] 클래스(Class)란? 아주 쉽게 그림으로 정리(+코드) (1) | 2024.10.16 |
[ Spring ] @Autowired, @Resource, @Inject 차이점 아주 쉽게 정리 (1) | 2024.10.16 |
댓글