Рандом string'ов без повторений - C#
Формулировка задачи:
Всех с наступившим Новым Годом!
Прошу помочь лишь с количеством букв в конечной строке.
Вот код:
Вот это для одной, двух и трех букв в слове соответственно:
Помогите сделать по-человечески, чтобы с textBox'а вводилось количество букв. Думаю вопрос понятен. Заранее спасибо.
public partial class Form1 : Form { public Form1() { InitializeComponent(); timer1.Enabled = false; } string[] shac = {"й","ц","у", "к","е","н","г","ш","щ","з","х","ъ", "ф","ы","в","а","п","р","о","л","д","ж","э","я", "ч","с","м","и","т","ь","б","ю","ё"}; //int number = 0; //Random rand = new Random(DateTime.Now.Millisecond); Random rand = new Random(); List<string> lst = new List<string>(); int x = 0; private void button1_Click(object sender, EventArgs e) { richTextBox1.Text = ""; lst.Clear(); //try //{ // number = Convert.ToInt32(textBox1.Text); //} //catch //{ // MessageBox.Show("число"); //} timer1.Interval = 1; timer1.Enabled = true; } private void richTextBox1_TextChanged(object sender, EventArgs e) { richTextBox1.Select(richTextBox1.Text.Length, 0); richTextBox1.ScrollToCaret(); } private void timer1_Tick(object sender, EventArgs e) { //1 string random_text = shac[rand.Next(shac.Length)]; ////2 //string random_text1 = shac[rand.Next(shac.Length)]; //string random_text2 = shac[rand.Next(shac.Length)]; //string random_text = random_text1 + random_text2; ////3 //string random_text1 = shac[rand.Next(shac.Length)]; //string random_text2 = shac[rand.Next(shac.Length)]; //string random_text3 = shac[rand.Next(shac.Length)]; //string random_text = random_text1 + random_text2 + random_text3; if (!lst.Contains(random_text)) { lst.Add(random_text); richTextBox1.Text += random_text + "\n"; x++; label1.Text = "сгенерировано: " + x; } } private void button2_Click(object sender, EventArgs e) { timer1.Enabled = false; } }
//1 string random_text = shac[rand.Next(shac.Length)]; ////2 //string random_text1 = shac[rand.Next(shac.Length)]; //string random_text2 = shac[rand.Next(shac.Length)]; //string random_text = random_text1 + random_text2; ////3 //string random_text1 = shac[rand.Next(shac.Length)]; //string random_text2 = shac[rand.Next(shac.Length)]; //string random_text3 = shac[rand.Next(shac.Length)]; //string random_text = random_text1 + random_text2 + random_text3;
Решение задачи: «Рандом string'ов без повторений»
textual
Листинг программы
//try //{ // number = Convert.ToInt32(textBox1.Text); //} //catch //{ // MessageBox.Show("число"); //}
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д