RPS Game (Wheel VS Tit4Tat)

Nah, ini dia yang saya janjikan. Sekarang strategi baru mengenai RPS adalah "Tit For Tat"...(rada bingung -_-). Tit For Tat ini juga biasa disebut Copy Cat (apa lagi nih? ). Copy cat adalah strategi meniru lawan. Jadi, apa yang dikeluarkan lawan, maka kita akan menirunya dan menggunakannya juga. Pada game RPS, Copy Cat awalnya menggunakan strategi random untuk input yang pertama karena belum ada yang ditiru. Kemudian, pada putaran kedua, dia akan mulai meniru lawan dengan meniru apa yang digunakan lawan di putaran awal. Hal ini akan berulang terus hingga akhir. Jadi, Copy Cat akan meniru apa yang dikeluarkan lawan pada putaran sebelumnya.
Ini dia source code-nya:
import java.util.Scanner;
import java.util.Random;
/**
 *
 * @Muh. Idil Haq Amir
 * www.idil810.blogspot.com
 */

public class Wheel_VS_Tit4Tat{
    public static void main(String [] args){
        int skorTit4Tat = 0;
        int skorWheel = 0;
        int loseWheel = 0;
        int loseTit4Tat = 0;
        int Draw = 0;
        
        Random random = new Random();
        Scanner reader = new Scanner (System.in);                       
        
               
        int Tit4Tat = random.nextInt(3)+1;
        for(int i=1;i<=1000;i++){
        int Gunting=0;
        int Batu=0;
        int Kertas=0;
        int pilihan;
        
        if(Gunting<Batu && Gunting<Kertas){
            pilihan=Gunting;
        }else{
            if(Batu<Gunting && Batu<Kertas){
                pilihan=Batu;
            }else{
                pilihan=Kertas;
            }
        }
        int Wheel=pilihan;
        if(pilihan==Gunting){
            Wheel=1;
        }else{
            if(pilihan==Batu){
                Wheel=2;
            }else{
                Wheel=3;
            }
        }
        
        if (Tit4Tat == Wheel){
            Draw++;
            Tit4Tat = Wheel;
        }else{
            if (Tit4Tat  == 2){
                if (Wheel == 3){                        
                    skorWheel++;
                    loseTit4Tat++;
                }
                if (Wheel == 1){
                    skorTit4Tat++;
                    loseWheel++;
                    Gunting++;
                }
                Tit4Tat = Wheel;
            }
            if (Tit4Tat  == 3){
                if (Wheel == 2){
                    skorTit4Tat++;
                    loseWheel++;
                    Batu++;
                }
                if (Wheel == 1){
                    skorWheel++;
                    loseTit4Tat++;
                }
                Tit4Tat = Wheel;
            }
            if (Tit4Tat  == 1){
                if (Wheel == 2){
                    loseTit4Tat++;
                    skorWheel++;
                }
                if (Wheel == 3){
                    loseWheel++;
                    skorTit4Tat++;
                    Kertas++;
                }
                Tit4Tat = Wheel;
            }
        }
        
        }
        
        System.out.print("\n");
        System.out.print("\n=>Skor Wheel:"
                + "\nMenang : "+skorWheel
                + "\nKalah  : "+loseWheel);
        System.out.print("\n=>Skor Tit4Tat:"
                + "\nMenang : "+skorTit4Tat
                + "\nKalah  : "+loseTit4Tat);
        System.out.println("\n=>Draw : "+Draw);
    }
}

0 comments: