C#'da aynı sayıyı üretmeyen random sayılar

leoni26

Femtopat
Katılım
12 Ağustos 2022
Mesajlar
4
Daha fazla  
Cinsiyet
Erkek
Herkese günaydın, sorum şu: Mesela sayı 7000 diyelim 7007 olursa yani aynı sayıdan 2 rakam olursa olmuyor. 7001 7002 olursa kabul ediliyor. Bunun kodlarını form için atar mısınız? Teşekkür ederim.
 
Chat GPT'ye sordum cevabı.

Aşağıda, C# kullanarak Windows Form uygulamasında rastgele sayılar oluşturan ve aynı rakamlara sahip olmayan sayıları gösteren kodları veriyorum:

C#:
using System;
using System.Windows.Forms;
using System.Linq;

public class Form1 : Form
{
    private Button button1;
    private TextBox textBox1;

    public Form1()
    {
        this.button1 = new Button();
        this.textBox1 = new TextBox();

        this.button1.Text = "Generate Random Number";
        this.button1.Click += new EventHandler(this.button1_Click);

        this.textBox1.ReadOnly = true;

        this.Controls.Add(this.button1);
        this.Controls.Add(this.textBox1);
    }

    private void button1_Click(object sender, EventArgs e)
    {
        int randomNumber;
        do
        {
            randomNumber = new Random().Next(1000, 10000);
        } while (randomNumber.ToString().Distinct().Count() != randomNumber.ToString().Length);

        this.textBox1.Text = randomNumber.ToString();
    }
}

Bu kod, kullanıcının tıklattığı düğmeye bağlı olarak rastgele bir sayı oluşturur ve bu sayının herhangi bir rakamının birden fazla kez tekrarlandığını kontrol eder. Eğer tekrar eden bir rakam varsa, yeni bir rastgele sayı oluşturulur ve bu süreç yeniden başlatılır. Eğer tekrar eden bir rakam yoksa, oluşan sayı metin kutusuna yazdırılır.

Buton ve Textbox'ları kendine göre düzenleyebilirsin diye düşünüyorum.
 

Yeni konular

Geri
Yukarı