Diposting oleh
Didit Velliz
pada tanggal
- Dapatkan link
- X
- Aplikasi Lainnya
public class KartuRemi {
private int nilai;
private int warna;
public int getWarna(){
return this.warna;
}
public void setWarna(int w){
if(warna == 0
|| warna == 1
|| warna == 2
|| warna == 3){
this.warna = w;
} else {
System.out.println("Warna tidak valid. warna antara 0 sd 4");
}
}
public void setNilai(int n){
if(n >= 1
&& n <= 13){
this.nilai = n;
} else {
if(n < 1){
this.nilai = 1;
} else if (n > 13) {
this.nilai = 13;
}
}
}
public int getNilai(){
return this.nilai;
}
public KartuRemi(int nilai, int warna){
setNilai(nilai);
setWarna(warna);
}
@Override
public String toString(){
String ret = "";
if(getNilai() < 11 || getNilai() > 1){
ret = ret + (nilai + 1);
} else {
switch (nilai) {
case 1:
ret = ret + "A";
break;
case 11:
ret = ret + "J";
break;
case 12:
ret = ret + "K";
break;
case 13:
ret = ret + "Q";
break;
default:
System.out.print("?");
break;
}
}
switch (warna) {
case 0:
ret = ret + "S";
break;
case 1:
ret = ret + "H";
break;
case 2:
ret = ret + "C";
break;
case 3:
ret = ret + "D";
break;
default:
System.out.print("?");
break;
}
return ret;
}
}
import java.util.*;
public class CardInHand {
private KartuRemi[] hand;
public CardInHand(int n){
hand = new KartuRemi[n];
}
public void addRandomCard(){
boolean success = false;
int warna = (int) (Math.random() * 10) % 3;
int nilai = (int) (Math.random() * 10) % 12;
for(int i = 0; i < hand.length; i++){
if(hand[i] == null) {
KartuRemi kr = new KartuRemi(nilai, warna);
hand[i] = kr;
success = true;
break;
}
}
if (!success) {
hand = Arrays.copyOf(hand, hand.length + 1);
KartuRemi kr = new KartuRemi(nilai, warna);
hand[hand.length - 1] = kr;
}
}
public int getTotalValue(){
int totals = 0;
for(int i = 0; i < hand.length; i++){
totals = totals + hand[i].getNilai();
}
return totals;
}
@Override
public String toString(){
String card = "";
for(KartuRemi ka : hand){
card = card + ka.toString() + " ";
}
return card;
}
}
import java.util.Scanner;
public class BlackJack {
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
CardInHand player = new CardInHand(2);
CardInHand cpu = new CardInHand(2);
player.addRandomCard();
player.addRandomCard();
cpu.addRandomCard();
cpu.addRandomCard();
int choose = 0;
while (choose != 3){
System.out.println("Player card : " + player.toString());
System.out.println("Computer card : " + cpu.toString());
System.out.println("What do you want to do ?");
System.out.println("1. add more card");
System.out.println("2. give it a go");
System.out.println("3. exit");
System.out.print("choose : ");
choose = sc.nextInt();
if(cpu.getTotalValue() >= 21){
System.out.println("YOU WIN.!!!");
choose = 3;
break;
} else if(player.getTotalValue() >= 21){
System.out.println("YOU LOOSE.!!!");
choose = 3;
break;
}
switch (choose){
case 1:
player.addRandomCard();
cpu.addRandomCard();
break;
case 2:
if(cpu.getTotalValue() > player.getTotalValue()){
System.out.println("YOU WIN.!!!");
} else if(cpu.getTotalValue() < player.getTotalValue()){
System.out.println("YOU LOOSE.!!!");
} else if (cpu.getTotalValue() == player.getTotalValue()) {
System.out.println("DRAW.!!!");
}
break;
default:
break;
}
}
}
}
Selamat mencoba permainan sederhana ini dan happy coding :D
Komentar
Posting Komentar