Herkese Merhaba,
Bugün sizlere C# programlama dilince rastgele sayı bulma oyunu yapacağız. Program esasen basit olsa bile ben biraz daha farklı özellikler ekleyerek sizlere keyifli bir uygulama sunacağım. Bu uygulamada rastgele sayı üretme ve zamanlayıcı kod fonksiyonlarını kullanacağız.
Kullanılması Gerekenler;
-
-
3 adet buton
-
-
-
9 adet Label
-
-
-
1 adet textbox
-
-
-
1 adet listbox
-
Şimdi aşağıda sizlere hazırladığımız kodları sunacağım. 3 Adet butonumuz olduğunu söylemiştim sizlere. Başla Butonu, Formu Temizleme Butonu ve Tahmin Etme Butonu.
Başla Butonu Kodları
private void button1_Click(object sender, EventArgs e)
{
Random r = new Random(); //www.programlamahocam.com
sayı = r.Next(1,50);
timer1.Start();
button3.Enabled = true;
button1.Enabled = false;
}
Formu Temizleme Butonu Kodları
private void button2_Click(object sender, EventArgs e)
{
button2.Enabled = false;
button1.Enabled = true;
button3.Enabled = false;
listBox1.Items.Clear(); //www.programlamahocam.com
süre = 60;
puan = 1000;
tahminsayısı = 0;
label2.Text = "0";
label3.Text = "60";
label4.Text = "1000";
label9.Text = "";
timer1.Stop();
}
Tahmin Et Butonu Kodları
private void button3_Click(object sender, EventArgs e)
{
button2.Enabled = true;
tahmin = int.Parse(textBox1.Text);
tahminsayısı++;
if (tahmin != sayı)
{
if (tahmin < sayı)
{
label9.Text = "Daha büyük bir sayı giriniz";
}
else if (tahmin > sayı )
{
label9.Text="Daha küçük bir sayı giriniz"; //www.programlamahocam.com
}
listBox1.Items.Add(tahmin+" "+puan+" "+tahminsayısı+" "+"*"+" "+10);
puan = puan -( tahminsayısı * 10) ;
}
label4.Text = puan.ToString();
if (tahmin == sayı)
{
label9.Text = "doğru bildiniz";
timer1.Stop();
}
label2.Text = tahminsayısı.ToString();
if (tahmin > 50 || tahmin<1) MessageBox.Show("lütfen 0-50 arası sayı giriniz");
}
Programa Ait Tüm Kodlar
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms; //www.programlamahocam.com
namespace WindowsFormsApplication2
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
int sayı, tahmin,puan = 1000,tahminsayısı,süre=60;
private void button1_Click(object sender, EventArgs e)
{
Random r = new Random();
sayı = r.Next(1,50);
timer1.Start();
button3.Enabled = true;
button1.Enabled = false;
}
private void Form1_Load(object sender, EventArgs e) //www.programlamahocam.com
{
button3.Enabled = false;
button2.Enabled = false;
}
private void button3_Click(object sender, EventArgs e)
{
button2.Enabled = true;
tahmin = int.Parse(textBox1.Text);
tahminsayısı++;
if (tahmin != sayı)
{
if (tahmin < sayı)
{
label9.Text = "Daha büyük bir sayı giriniz";
}
else if (tahmin > sayı )
{
label9.Text="Daha küçük bir sayı giriniz";
}
listBox1.Items.Add(tahmin+" "+puan+" "+tahminsayısı+" "+"*"+" "+10); //www.programlamahocam.com
puan = puan -( tahminsayısı * 10) ;
}
label4.Text = puan.ToString();
if (tahmin == sayı)
{
label9.Text = "doğru bildiniz";
timer1.Stop();
}
label2.Text = tahminsayısı.ToString();
if (tahmin > 50 || tahmin<1) MessageBox.Show("lütfen 0-50 arası sayı giriniz");
}
private void timer1_Tick(object sender, EventArgs e)
{
süre--;
label3.Text = süre.ToString(); //www.programlamahocam.com
if (süre == 0)
{
MessageBox.Show("süreniz bitti");
timer1.Stop();
}
}
private void button2_Click(object sender, EventArgs e)
{
button2.Enabled = false;
button1.Enabled = true;
button3.Enabled = false;
listBox1.Items.Clear();
süre = 60;
puan = 1000;
tahminsayısı = 0; //www.programlamahocam.com
label2.Text = "0";
label3.Text = "60";
label4.Text = "1000";
label9.Text = "";
timer1.Stop();
}
}
}
Bu program ile rastgele bir sayının program tarafından tutulmasını sağlıyorsunuz. Ardından ise siz metin kutusuna sayılar girerek bunu tahmin etmeye çalışıyorsunuz. C# ile geliştirilebilecek en basit uygulamalardan birisi olan bu uygulama ile sizlerde kendi evinizde veya okulunuzda hazır uygulamalar yapabilirsiniz.
Program hakkındaki düşüncelerinizi merak ile bekliyorum. Umarım sizlere faydalı olabiliyoruzdur.
Bu uygulamada herhangi bir sorun yaşarsanız aşağıya yorum olarak bırakabilirsiniz. Bunun yanı sıra web sitemizdeki diğer hazır C# programlama örneklerine ulaşmak için bu linke tıklayabilirsiniz.
Kod iyi fakat daha object oriented yazılabilirdi çok basic kalmış dostum:)