Рандом 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("число");
- //}
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д