Arkadaşlar şöyle bir ödevim var soru ve yapabildiklerim aaşağıdaki gibidir. yardım edebilirseniz sevinirim. (while ile yapılacakmış ben if le yaptım )

Soru :
Alıntı
Program çalışmaya başladığı anda formun loadında random 1 ile 100 arası bir sayı üretecek.

Daha sonra program açılınca kullanıcıdan textbox ile bir say alacağız ve random ile karşılaştırcaz.

kullanıcının 5 hakkı bulunuyor. 5 hakkında da bilemezse tekrar oynamak ister misiniz diye

soracak evet derse tekrar 5 hak verilecek bir daha tahmin yaptırılacak.

ayrıca her tahminde eğer tahmin ettiği sayı ile random üretilen sayının arasında 5 fark varsa,

yani 5 eksiği veya 5 fazlası bir değerse çok yaklaştın denilecek
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;

namespace SayıBulmaOyunu
{
    public partial class Form2 : Form
    {
        public Form2()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            int fark = 0;
            int sayi = int.Parse(textBox1.Text);

            hak++;
            //MessageBox.Show(Rastgele.ToString());
            MessageBox.Show("Tahmin Edilen Sayı : " + sayi.ToString());
            MessageBox.Show("Kullanılan Hak : " + hak.ToString());
            if(hak>4)
            {
                if (MessageBox.Show("Mesaj içeriği", "Başlık", MessageBoxButtons.YesNo) == DialogResult.Yes)
                {
                    hak = 0;

                    fark = Rastgele - sayi;
                    fark = sayi - Rastgele;

                    if (fark <= 5)
                    {
                        MessageBox.Show("Yaklaştın...");
                    }

                    if (Rastgele == sayi || sayi == Rastgele)
                    {
                        MessageBox.Show("Tebrikler!!!");

                    }

                }    
            }
            
            
        }


        int sayi;
        int Rastgele;
        int hak = 0;
        private void Form2_Load(object sender, EventArgs e)
        {
            Random r = new Random();
            Rastgele = r.Next(1, 20);
        }
    }
}