Ana içeriğe atla

JS TAŞ KAĞIT MAKAS

Bir çoğumuzun bildiği bir oyundur.  Ellerimizi kağıt, makas, taş şekline sokarak bir birimize karşı üstünlük sağlamaya çalışırız.  Oyunu kaybeden oyunun başındaki belirlenen cezayı çekmek zorunda kalır.

Şimdi oyunun kuralı biraz açıklayalım.

Kağıt Taşa karşı üstündür.

Taş Makas karşı üstündür.

Makasta taşa karşı üstündür.

Şimdi bu derecelendirmeden yola çıkarak javascript aşağıdaki kağıt, makas, taş oyununu hazırladım. Kodları inceleyebilirsiniz.

Oyunun çalışmasını biraz açıklayayım. Kağıt, makas, taş resimlerinden birine tıkladığında; aynı zamanda bilgisayar da bir seçim yapar.  Yapılan seçim yukarıdaki şartlara göre değerlendirilir. Sonuç olarak kazanan belirlenmiş olunur. Tekrar resimlere tıklandığında oyun yeniden başlamış olur.

 

Not: Aşağıda paylaşılan resimleri de uygulama klasörüne eklemeniz gerekmektedir.

<!doctype html>
<html>
<head>
<title>KAĞIT, TAŞ, MAKAS OYUNU</title>
<meta charset="utf-8">
<style>
body{
background: #e74c3c;
}
#liste img{
padding:5px;
border:1px #232333 solid;
 
}
#sonuc{
float:left;
width: 260px;
height: 260px;
font-size:2em;
padding:20px;
background: #f1c40f;
 
}
#pc-sonuc{
float:left;
 
}
 
</style>
</head>
<body>
 
<div id="liste">
<img src="kagit.png" id="kagit" width="300" height="300" data-id="0">
<img src="makas.png" id="makas" width="300" height="300" data-id="1">
<img src="tas.png" id="tas" width="300" height="300" data-id="2">
</div>
<div id="pc-sonuc">
<img src="" id="pc-secim" width="300" height="300" alt="pc seçimi">
</div>
<div id="sonuc">
 
</div>
 
<script>
var liste=["kagit.png","makas.png","tas.png"];
var kagit=document.getElementById("kagit");
var makas=document.getElementById("makas");
var tas=document.getElementById("tas");
var pcSecim=document.getElementById("pc-secim");
var sonucYazdir=document.getElementById("sonuc");
 
 
kagit.onclick=secimYap;
makas.onclick=secimYap;
tas.onclick=secimYap;
 
 
function secimYap(){
var pc= RasgeleKagit();
 
/*dizi sıralamasını kullanmak daha mantıklıydı fakat yukarıdaki resimlerin sıralamsı değişince hata verecektir.*/
/*bu karşılaştırmada da rsimlerin isimlerine dikkat etmek gerekiyor.*/
var secim= this.dataset.id;
if(pc==0 && secim==0)
{
sonuc="ikinizde aynı seçimi yaptınız";
}
else if(pc==0 && secim==1)
{
sonuc="Kazandın, makas kağıdı keser";
}
else if(pc==0 && secim==2)
{
sonuc="Kaybettin, kağıt taşı sarar";
}
else if(pc==1 && secim==0)
{
sonuc="Kaybettin, makas kağıdı keser";
}
else if(pc==1 && secim==1)
{
sonuc="ikinizde aynı seçimi yaptınız";
}
else if(pc==1 && secim==2)
{
sonuc="Kazandın, Taş makası kırar";
}
else if(pc==2 && secim==0)
{
sonuc="Kazandın, kağıt taşı sarar";
}
else if(pc==2 && secim==1)
{
sonuc="Kaybettin, Taş makası kırar";
}
else if(pc==2 && secim==2)
{
sonuc="ikinizde aynı seçimi yaptınız";
}
 
sonucYazdir.innerHTML=sonuc;
}
 
function RasgeleKagit(){
var sayi= Math.round(Math.random()*2);
pcSecim.src=liste[sayi];
 
return sayi;
}
 
</script>
</body>
</html>


İkinci Not: HTML img etiketini kullanmayı bilmeyenler boşuna kodları kopyalamasın, zaten uygulamayı çalıştırmayı başaramayacaktır.

Uygulamada kullanılan resimler

kagitmakastas

Yorumlar

POPULER YAYINLAR

FORZA HORİZON MENÜ

HTML .background .container    .container--logo       img(src="https://s3-us-west-2.amazonaws.com/s.cdpn.io/545665/9abd53b9-dc42-459a-b094-14d064efb37e%20(1).png")    .container--navigation       .item--link.hint lb       .item--link.active home       .item--link horizon life          .item--notification 6       .item--link team adventure       .item--link creative hub       .item--link cars          .item--notification 2       .item--link rivals       .item--link clubs       .item--link marketplace       .item--link.hint rb    .container--top-menu       .container--card-spot.size-1          .container--card.border             .item--card-image(style="background-image: url(https://s3-us-west-2.amazonaws.com/s.cdpn.io/545665/Screen%20Shot%202019-01-03%20at%208.30.53%20PM.png)")              .container--card--text                .item--notification 2                .item--icon #[i.fa.fa-check-circle-o]                .item--card-title #[.text car mastery]            

C# OTOBÜS PROGRAMI.EXE

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace otobüs {     public partial class Form1 : Form    {         public Form1()        {            InitializeComponent();        }         private void button11_Click( object sender, EventArgs e)        {            listBox1.Items.Add( &9& );            listBox1.Items.Add(textBox3.Text);            listBox1.Items.Add(textBox2.Text);            listBox1.Items.Add(textBox1.Text);            listBox1.Items.Add(comboBox3.Text);        }         private void button3_Click( object sender, EventArgs e)        {            listBox1.Items.Add( &1& );            listBox1.Items.Add(textBox3.Text);            listBox1.Items.Add(textBox2.Text);            listBox1.Items.Add(textBox1.Text);            listBox1.Items.Add(comboBox1.Text);            listBo

JAVASCRİPT ÖRNEKLERİ 1

Bu sayfada 40’dan fazla çeşitli zorluk seviyesine göre hazırlanmış   JavaScript Örnekleri  ve  JavaScript Uygulamaları nı kapsamaktadır.  Basit, Döngülü, Şartlı ve Form uygulamalarını kapsayacak şekilde javascript  örnek uygulamalarını kopyalayıp kullanabilirsiniz. JavaScript Örneklerine geçmeden önce javascript dili hakkında kısaca bir bilgi vermek gerekir. Yada JavaScript dili, yapısı ve nesneleri ile ilgili derslere göz atmak içinde  JavaScript Dersleri  yazısını okuyabilirsiniz. JavaScript Nedir Başlangıçta  Brendan Eich  tarafından geliştirilmiş ve  ilk LiveScript olarak isimlendirilen programlama dili olan JavaScript, 1995 yılında yeniden adlandırılmıştır. JavaScript, bir web tasarımcısına kendi web sayfalarına kod ekleme olanağı veren, yorumlanmış bir istemci tarafı kodlama dili olmuştur.  JavaScript genellikle bir HTML  dosyasına yerleştirilir ve doğrudan web sayfasından çalışır. Saat ve tarihe basmak, bir takvim oluşturmak veya düz HTML ile mümkün olmayan diğer görevleri yapma