```java
import java.util.*;
public class MathGame {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("Selamat datang di permainan matematika!");
System.out.println("Silakan pilih tingkat kesulitan:");
System.out.println("1. Senang");
System.out.println("2. Sederhana");
System.out.println("3. Susah");
int level = scanner.nextInt();
System.out.println("Silakan pilih mode permainan:");
System.out.println("1. Satu pemain");
System.out.println("2. Dua pemain");
int mode = scanner.nextInt();
if (mode == 1) {
playSinglePlayer(level);
} else if (mode == 2) {
playTwoPlayers(level);
} else {
System.out.println("Mode tidak valid");
}
}
public static void playSinglePlayer(int level) {
Scanner scanner = new Scanner(System.in);
Random random = new Random();
int score = 0;
int numQuestions = 0;
int maxQuestions = 10;
int minNum = 0;
int maxNum = 10;
if (level == 1) {
maxNum = 5;
} else if (level == 2) {
maxNum = 10;
} else if (level == 3) {
maxNum = 20;
}
while (numQuestions < maxQuestions) {
int num1 = random.nextInt(maxNum - minNum + 1) + minNum;
int num2 = random.nextInt(maxNum - minNum + 1) + minNum;
int answer = num1 + num2;
System.out.print(num1 + " + " + num2 + " = ");
int guess = scanner.nextInt();
if (guess == answer) {
System.out.println("Benar!");
score++;
} else {
System.out.println("Salah. Jawabannya adalah " + answer);
}
numQuestions++;
}
System.out.println("Selesai! Skor Anda adalah " + score + " dari " + maxQuestions + " pertanyaan");
}
public static void playTwoPlayers(int level) {
Scanner scanner = new Scanner(System.in);
Random random = new Random();
int score1 = 0;
int score2 = 0;
int numQuestions = 0;
int maxQuestions = 10;
int minNum = 0;
int maxNum = 10;
if (level == 1) {
maxNum = 5;
} else if (level == 2) {
maxNum = 10;
} else if (level == 3) {
maxNum = 20;
}
while (numQuestions < maxQuestions) {
int num1 = random.nextInt(maxNum - minNum + 1) + minNum;
int num2 = random.nextInt(maxNum - minNum + 1) + minNum;
int answer = num1 + num2;
System.out.println("Pertanyaan " + (numQuestions + 1));
System.out.print("Pemain 1: " + num1 + " + " + num2 + " = ");
int guess1 = scanner.nextInt();
if (guess1 == answer) {
System.out.println("Benar!");
score1++;
} else {
System.out.println("Salah. Jawabannya adalah " + answer);
}
System.out.print("Pemain 2: " + num1 + " + " + num2 + " = ");
int guess2 = scanner.nextInt();
if (guess2 == answer) {
System.out.println("Benar!");
score2++;
} else {
System.out.println("Salah. Jawabannya adalah " + answer);
}
numQuestions++;
}
System.out.println("Selesai! Skor akhir:");
System.out.println("Pemain 1: " + score1);
System.out.println("Pemain 2: " + score2);
}
}
```
Dalam kode di atas fungsi `playSinglePlayer` dan `playTwoPlayers` mengatur tata letak permainan sesuai dengan mode yang dipilih. Kode ini juga menyediakan tiga tingkat kesulitan di mana level 1 memiliki bilangan acak dengan rentang 0 hingga 5 level 2 memiliki bilangan acak dengan rentang 0 hingga 10 dan level 3 memiliki bilangan acak dengan rentang 0 hingga 20.
Gunakan fungsi `main` untuk meminta pengguna memilih mode dan tingkat kesulitan. Kemudian panggil salah satu fungsi permainan tergantung pada mode yang dipilih.
No comments:
Post a Comment