c# uygulama örnekleri

C# ile at yarışı programı yapmak için aşağıdaki adımları izleyebilirsiniz:

Form üzerinde birkaç at resmi veya PictureBox kontrolü yerleştirin.

Form üzerinde bir “Yarıştır” düğmesi ekleyin.

Her atın hızını belirlemek için rastgele sayılar üretin. Bu sayılar atların hızlarını temsil eder.

Yarıştır düğmesine tıklandığında, atların koşmasını sağlayacak bir döngü oluşturun. Her turda, atların rastgele hızlarına göre PictureBox’ların konumunu güncelleyin.

Yarış sonucunu belirlemek için, her atın koşu mesafesini takip edin. Koşu mesafesi, her turda attığınız adımların toplamıdır. Bu mesafe, yarışı bitiren ilk atın belirlenmesinde kullanılacak.

Yarışı bitiren ilk atı belirledikten sonra, sonuçları kullanıcıya bildirmek için bir mesaj kutusu veya başka bir kontrol kullanın.

Aşağıdaki C# kodu, yukarıdaki adımları izleyerek at yarışı programı oluşturmanıza yardımcı olabilir:

csharp

public partial class Form1 : Form
{
private Random random = new Random();
private int finishLine;
private bool raceInProgress = false;

public Form1()
{
    InitializeComponent();
    finishLine = pictureBoxFinishLine.Left;
}

private void buttonStartRace_Click(object sender, EventArgs e)
{
    if (!raceInProgress)
    {
        raceInProgress = true;

        // Atların başlangıç konumlarını belirle
        foreach (Control control in Controls)
        {
            if (control is PictureBox)
            {
                control.Left = 0;
            }
        }

        // Yarışı başlat
        timerRace.Start();
    }
}

private void timerRace_Tick(object sender, EventArgs e)
{
    // Her turda atların konumunu güncelle
    foreach (Control control in Controls)
    {
        if (control is PictureBox)
        {
            int speed = random.Next(1, 20);
            control.Left += speed;
        }
    }

    // Her tur sonunda, koşu mesafelerini hesapla
    int winner = 0;
    foreach (Control control in Controls)
    {
        if (control is PictureBox)
        {
            if (control.Right >= finishLine)
            {
                winner = control.TabIndex;
                timerRace.Stop();
                raceInProgress = false;
                MessageBox.Show("Yarışı " + winner.ToString() + " numaralı at kazandı!");
            }
        }
    }
}

}

Yukarıdaki kodda, Form üzerindeki PictureBox kontrolüyle atları temsil ediyoruz. Her PictureBox’ın TabIndex özelliğini atın numarası olarak kullanıyoruz.

Yarıştır düğmesine tıklandığında, buttonStartRace_Click yöntemi her atın başlangıç konumunu belirler ve yarışı başlatır.

By Artsın

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir