1) 목숨은 3개로 목숨이 0이 되면 다시 할 것인가를 물어본다.
2) 틀렸다면 새로운 문제가 아닌 전에 문제를 다시 출제한다.
3)최고기록을 경신 했다면 점수를 출력한다.
import java.util.Random;
import java.util.Scanner;
public class Q_1 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in); // scanner 생성자
Random r = new Random(); // 랜덤 생성자
int life = 3; // 목숨 선언
int high_score = 0; // 최고점수
int score = 0; // 현재 점수
int answer = 0; // 참가자가 생각하는 정답
int dan = (r.nextInt(8) + 2); // 2~9단까지의 단
int range = (r.nextInt(9) + 1); // 1~9단까지의 범위
String choice = ""; // 계속 할것인가의 참가자의 선택
// 게임 시작!
System.out.println("구구단을 외자! 구구단을 외자!");
while (true) {
// 문제 출제
System.out.print(dan + " * " + range + "=");
//문제 입력
answer = sc.nextInt();
if (answer == dan * range) {
System.out.println("정답!!!");
score += 1; // 1점
dan = (r.nextInt(8) + 2); // 새로운 문제를 위한 변수 생성
range = (r.nextInt(9) + 1);
} else {
System.out.println("땡! 틀렸습니다.");
life -= 1;
if (life != 0) {
System.out.println("남은 목숨 : " + life);
}
}
// 점수와 관련된 코딩 최고점수를 기록 했을 때만 출력.
if (life == 0) {
if (high_score < score) {
high_score = score;
System.out.println("최고기록 경신!!" + high_score + "점!");
}
System.out.println("목숨을 모두 소진하였습니다. 다시 하시겠습니까? (Y|N) >> ");
choice = sc.next();
if (choice.equals("Y")) {
// 다시 시작한다면 목숨과 점수 초기화
life = 3;
score = 0;
} else {
break;
}
}
}
sc.close();
}
}
import jaca.util.Arrays;
public class Q_2{
public static void main(String[] args){
int[] lotto = {0,0,0,0,0,0};
Random r = new Random();
for(int i = 0; i < 6; i++){
lotto[i] + r.nextInt(6) + 1;
for(int j = 0; j < i; j++) {
if (lotto[i] == lotto[j]){
i**;
}
}
}
System.out.println(Arrays.toString(lotto));
}
}
public class Q_3 {
public static void main(String[] args) {
int a = 1;
int sum = 0;
while(a++ < 10) { //비교연산자 비교 하고나서!! a가 ++
sum += a*3 >= sum ? a:1;
}
System.out.println(sum);
}
}