Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/6: Рейтинг темы: голосов - 6, средняя оценка - 5.00
2 / 2 / 0
Регистрация: 10.08.2020
Сообщений: 169

Странное явление, возможно паранормальное, не правильно записываются слова в listBox

04.10.2020, 17:47. Показов 1204. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте! Возникла проблема, когда хочу по своему коду добавлять слова в listBox.

Вообщем то, смысл кода, не переживайте я вам скину его с низу. Так вот, смысл кода: Сначала записываю в TextBox количество того сколько раз должно будет сгенерироватся слово, потом выбираю сколько должно быть слогов.
Сначала у меня генерируется рандомный слог потом добавляется в переменную и так столько раз, сколько я введу в textBox под названием "Количество слогов". После этого как слово сгенерируется, в том же цикле где я ввожу количество слов идет проверка того что если в слове самая последняя буква гласная, то рандомно сделать выбор, добавлять ли к ней согласную или не добавлять. Если добавлять то добавить ей рандомную согласную букву. Потом идет проверка того что если это слово состоится в listBox`е то не добавлять его и прибавлять +1 число к переменной, которая держит себе неудачные слова и добавлять в label. Вообщем то я новичок, код корявый, но работает. Только вот не работает порядок записей слов в listBox.

Вот вывод:
Тогофи
Билопи
Бигита
Жашура
Ряреда
Вубокак
Нятужев
Сибибут
Цикифик
Цурасод


А должен быть такой : (Выводится должно рандомно)
Тогофи
Билопик
Бигита
Жашура
Ряреда
Вубокак
Нятужед
Сибибук

Цикифи
Цурасос

Но самое главное, почему оно порнормальное! Это когда я смотрю выполнение этого алгоритма в отладке, то все слова добавляются рандомно. Т.е Иногда где то на конце с гласной, а где то на конце с согласной. А если без отладки, то сначала все слова то заканчиваются сначала с гласной, а другие с Согласной. Бывает что все с гласной, пока не введешь количество "10000".

Вот код:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
listBox7.Items.Clear();
 
            int numWord = Convert.ToInt32(egoldGoogleText13.Text);
            int numSlybbes = Convert.ToInt32(egoldGoogleText14.Text);
 
            int numValide = 0;
            int noNamValide = 0;
 
            char[] latter_Sog = "бвгджзклмнпрстфх".ToArray();
            char[] latter_Gl = "аоуяеи".ToArray();
 
            Random rand = new Random();
 
            for (int i = 1; i <= numWord; i++)
            {
                string RandNameSo = "";
                string RandNameGl = "";
 
                string Word = "";
 
                string RandomWorldGl = "";
                string RandomWorldSo = "";
 
                for (int j = 1; j <= numSlybbes; j++)
                {
                    int lattersSo = rand.Next(0, latter_Sog.Length - 1);
                    int lattersGl = rand.Next(0, latter_Gl.Length);
 
                    RandNameSo = latter_Sog[lattersSo].ToString();
                    RandNameGl = latter_Gl[lattersGl].ToString();
 
                    Word += RandNameSo;
                    Word += RandNameGl;
 
                    Word = Regex.Replace(GateFamili.ToLower(), @"\b[a-zа-яё]", m => m.Value.ToUpper());
                }
 
                string TheLastLetter = Word.Substring(Word.Length - 1);
 
                foreach (char SL in TheLastLetter)
                {
                    if (latter_Gl.Contains(SL))
                    {
                        Random ranGl = new Random();
                        int Choice = ranGl.Next(0, 101);
 
                        if (Choice > 50)
                        {
                            int lattersSo = rand.Next(0, latter_Sog.Length - 1);
                            RandomWorldSo = latter_Sog[lattersSo].ToString();
 
                            Word += RandomWorldSo;
                            if (listBox7.Items.Contains(Word))
                            {
                                noNamValide += 1;
                                label49.Text = noNamValide.ToString();
                            }
                            else
                            {
                                listBox7.Items.Add(Word);
                                numValide += 1;
                                label50.Text = numValide.ToString();
                            }
                        }
                        else if(Choice < 50)
                        {
                            if (listBox7.Items.Contains(Word))
                            {
                                noNamValide += 1;
                                label49.Text = noNamValide.ToString();
                            } else
                            {
                                listBox7.Items.Add(Word);
                                numValide += 1;
                                label50.Text = numValide.ToString();
                            }
                        }
                    }
                }
            }
Жду вашей помощи, проблема наверное не понятная после прочтение, но напишите и я все уточню!
Спасибо за внимание и заранее огромное спасибо за помощь! Ожидаю от вас помощи, пишите пожалуйста по теме!
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
04.10.2020, 17:47
Ответы с готовыми решениями:

Паранормальное явление
Я знаю что в этом фильме есть три альтернативной концовки. Где можно посмотреть или скачать 3 концовку? Я не где не смог найти. Есть только...

паранормальное явление в цикле или
Дано задание: решить задачу методом принципа Понтрягина. Для решения написал прогу, но это не суть. Прога ведет себя очень странно....

Паранормальное явление с жёсткими дисками
Всем привет, недавно столкнулся с такой проблемой. У меня в компе 5 ссд и 1 m2 и всё было хорошо, но вот решил я один диск вытянуть и...

4
1168 / 886 / 517
Регистрация: 09.04.2014
Сообщений: 2,102
04.10.2020, 18:19
Лучший ответ Сообщение было отмечено QmlwZ как решение

Решение

Цитата Сообщение от QmlwZ Посмотреть сообщение
порнормальное
...
вместо
C#
1
2
Random ranGl = new Random();
 int Choice = ranGl.Next(0, 101);
напишите
C#
1
 int Choice = rand.Next(0, 101);
1
2 / 2 / 0
Регистрация: 10.08.2020
Сообщений: 169
04.10.2020, 18:29  [ТС]
nedel, БЛИН! Извините! Не ловко даже вышло, даже совсем. Я хотел написать "Паранормальное", на скорую руку писал просто, и не заметил ошибки не стал исправлять!

Спасибо за ответ если что! Спасибо больше, все помогло.
Только вот почему так происходит?
0
1168 / 886 / 517
Регистрация: 09.04.2014
Сообщений: 2,102
05.10.2020, 14:19
Цитата Сообщение от QmlwZ Посмотреть сообщение
Только вот почему так происходит?
Random инициализируется с помощью системного времени - при нормальном запуске цикл отрабатывает на столько быстро, что создаваемые генераторы ranGl получают то же значение при инициализации и возвращают идентичный первый элементю.ьПри отладке время "бежит по иному"
1
2 / 2 / 0
Регистрация: 10.08.2020
Сообщений: 169
05.10.2020, 17:59  [ТС]
nedel, хорошо, учту, спасибо!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
05.10.2020, 17:59
Помогаю со студенческими работами здесь

Паранормальное явление или как приручить звуковую карту?
Всем доброго времени суток! Господа, проведя три дня не выходя из дома, борясь с этой проблемой, всё же я умываю руки и пишу сюда. Ситуация...

Странное явление ПК
Хочу узнать странные действия по поводу ПК... Которые я не понимаю. В интернете забивал по этому поводу, но он ничего там мне и не выдал....

странное явление
кто знает что это? при наведении на эту точку курсора можно растянуть хоть на весь экран, а внутри чёрный фон.

Странное явление в таблицах
Добрый вечер, Уважаемые форумчане. Подскажите ответ на такой вопрос. (уже устал искать решение, ускользает от моего понимания) ...

Странное явление в CSS
Доброе утро! Столкнулся с незначительной, но неприятной проблемой в СSS. Есть два объекта: один помещен в другой. Внутреннему объекту...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20%
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru