Programlama | Programlama Dilleri | C Programlama Dili |C++

Hata
  • XML Parsing Error at 1:82. Error 9: Invalid character
Anasayfa Programlama Java ?ans Oyunu (Rastgele Say?lar)


?ans Oyunu (Rastgele Say?lar)

AÇIKLAMA

1. ?lk defa çevir butonuna bas?ld???nda rastgele gelecek iki say?n?n

   1.1 Toplam? 7 veya 11 ise oyuncu kazan?r.

   1.2 Toplam 2,3 veya 12 olursa bilgisayar kazan?r.

   1.3  E?er toplam bu durumlar?n d???nda birsay? olursa (4,5,6,8,9,10) olu?an toplam bir tarafta saklan?r.

        1.3.1  Bu a?amadan sonra olu?an yeni toplam

        1.3.2  E?er 7 ise  bilgisayar kazan?r.

        1.3.3  E?er olu?an toplam daha önceki toplamla ayn? olursa oyuncu kazan?r.

 1.3.2 ve 1.3.3 ad?mlar? program sonlan?ncaya kadar devam eder.

import java.awt.*;
import java.applet.*;
import javax.swing.*;
import java.awt.event.*;
 
public class Oyuncu extends JApplet implements ActionListener {
   
   
    final int kazan = 0, kaybet= 1, devam = 2;
   
    boolean ilkcevirme=true;
    int cevirmetoplami;
    int oyuncusayitoplami;
    int oyundurumu=devam;
   
    JLabel sayi1label,sayi2label,toplamlabel,aktarmalabel;
    JTextField sayi1,sayi2,toplam,aktarma;
    JButton cevir;
   
    public void init()
   
    {
    Container pencere=getContentPane();
    pencere.setLayout(new FlowLayout());
    sayi1label=new JLabel("1.Say?");
    pencere.add(sayi1label);
    sayi1=new JTextField(40);
    sayi1.setEditable(false);
    pencere.add(sayi1);
   
    sayi2label=new JLabel("2.Say?");
    pencere.add(sayi2label);
    sayi2=new JTextField(40);
    sayi2.setEditable(false);
    pencere.add(sayi2);
   
    toplamlabel=new JLabel("Toplam");
    pencere.add(toplamlabel);
    toplam=new JTextField(40);
    toplam.setEditable(false);
    pencere.add(toplam);
   
    aktarmalabel=new JLabel("Aktarma");
    pencere.add(aktarmalabel);
    aktarma=new JTextField(40);
    aktarma.setEditable(false);
    pencere.add(aktarma);
    cevir=new JButton("Rastgele");
    cevir.addActionListener(this);
    pencere.add(cevir);                    
    }
   
    public int rastgelesec ()
    {
        
    int birinci= 1 + (int) (Math.random()*6);
    int  ikinci=  1 +(int) (Math.random()*6);
    int aratoplam=birinci+ikinci;
   
    sayi1.setText( Integer.toString(birinci));
    sayi2.setText( Integer.toString(ikinci));
    toplam.setText( Integer.toString(aratoplam));
   
    return aratoplam;    
    }
   
    public void altbilgigoster()
    {
     if(oyundurumu==devam)
     showStatus("Tekrar Çevir");
     else
     {
      if(oyundurumu==kazan)
      showStatus("Tebrikler Kazand?n?z.");
      else
      showStatus("Üzgünüm Bilgisayar Kazand?.Nihahahaha");
     }
    }    
   
    public void actionPerformed(ActionEvent o)
    {
    if((oyundurumu==kazan)||(oyundurumu==kaybet))
    {
        sayi1.setText("");
        sayi2.setText("");
        toplam.setText("");
        aktarma.setText("");
        oyundurumu=devam;
        ilkcevirme=true;
    }
    cevirmetoplami=rastgelesec();
    if(ilkcevirme)
    {
    switch (cevirmetoplami)
    {
     
     case 7 : oyundurumu=kazan; break;
     case 11: oyundurumu=kazan; break;
     
     case 2:  oyundurumu=kaybet; break;
     case 3:  oyundurumu=kaybet; break;
     case 12: oyundurumu=kaybet; break;    
     
     default:
     oyundurumu=devam;
     oyuncusayitoplami=cevirmetoplami;
     ilkcevirme=false;
     aktarma.setText(Integer.toString(cevirmetoplami));
     break;
     
    } // switch sonu
    } //if sonu    
    else
    {
     if(cevirmetoplami==oyuncusayitoplami)
     oyundurumu=kazan;
     else
     {
      if(cevirmetoplami==7)
      oyundurumu=kaybet;
          
     }
   
    }// else sonu
   
    altbilgigoster();
        
 
    }  //actionperformed sonu
        
}//class sonu

 

Yorumlar (2)
  • Murat Aykut  - Rastgele olamaz...
    Deterministik bir makineden nas?l nondeterministik bir sonuç (rastgelelik) beklenebilir?
  • NEO
    avatar
    ?imdi Murat'?m ?öyle oluyor; bahsetti?in konu üzerine bundan 3 sene önce seninle ayn? fikirde oldu?um ve cok geni? çapl? dü?ünüldü?ünde asl?nda rastgelili?in olmad???n? eninde sonunda bir periyotun oldu?unu dü?ünüyordum. Halada ayn? fikirdeyim fakat gel görki bu periyodun uzunlu?unun kafamda oldukca büyük olmas? ve bir anda kestirelememesi ( sahsen kestirebiliyorsa benide ayd?nlat) sebebiyle asl?nda rastgele olmayan say?lar?n göreceli bir dü?ünce ile rastgele oldu?unu kabul edebiliriz. Bir çe?it paradox :)
Sadece kayıtlı kullanıcılar yorum yazabilir!
Son Güncelleme ( Cuma, 03 Nisan 2009 00:55 )  
amınıza koyayım amınıza koyayım amınıza koyayım amınıza koyayım amınıza koyayım amınıza koyayım