Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 Аватар для Sata3564
1 / 1 / 0
Регистрация: 05.10.2022
Сообщений: 66

Генерация чисел не больше 3

17.01.2023, 19:53. Показов 445. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброе времени суток. Можете помочь , проблема заключаеться в том что я не понимаю как сгенерировать число , так что бы было не больше 3 одинаковых индекса, и присвоить его Button.Image. Помогите пожалуйста

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
private List<string> listImage = new List<string>()
            {
                Environment.CurrentDirectory + @"\materials\Клубника.png",
                Environment.CurrentDirectory + @"\materials\Лимон.png",
                Environment.CurrentDirectory + @"\materials\Персики.png",
            };
 
            public void SetGenarationImage(Random rnd)
            {
                for (int i = 0; i < listImage.Count; i++)
                {
                    int indx = rnd.Next(listImage.Count);
 
                    listButton[i].BackgroundImage = Image.FromFile(listImage[indx]);
                }
            }
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
17.01.2023, 19:53
Ответы с готовыми решениями:

Генерация случайного числа больше нуля, но меньше единицы
Всем привет. Подскажите, как можно генерировать псевдослучайное число больше нуля, но меньше единицы. При этом количество цифр после...

Генерация случайных чисел с учётом уже имеющихся чисел. (C++ Builder 6)
Здравствуйте. Появилось желание создать программу генерации случайных чисел с учётом уже имеющихся чисел. Идея в том, что в TEdit вводится...

Генерация случайных чисел от -10 до 10 и подсчет сколько в этой последовательности чисел происходило смен знака
Компьютер последовательно генерирует 100 случайных чисел в диапазоне от -10 до 10.Подсчитать сколько в этой последовательности чисел...

3
 Аватар для ashsvis
923 / 503 / 202
Регистрация: 08.10.2018
Сообщений: 1,553
Записей в блоге: 11
18.01.2023, 08:31
Лучший ответ Сообщение было отмечено Sata3564 как решение

Решение

Цитата Сообщение от Sata3564 Посмотреть сообщение
не больше 3 одинаковых индекса
У вас в 12-й строке генерируется индекс от 0 до listImage.Count.
В это случае часто в следующий раз выпадает тот же индекс, что и в прошлый раз.

Есть приём, исключающий такое поведение, при чём "случайность" следующего индекса сохраняется.
Суть этого приёма в следующем:
1. Нужно создать список индексов, размерностью списка listImage.Count
2. Заполнить этот список индексами от 0 до listImage.Count
3. Генерировать случайный индекс списка индексов, как в строке 12 примера
4. По этому индексу забирать из списка картинку, а этот элемент из списка индексов удалять,
чтобы в следующий раз выбирать случайный индекс из оставшихся индексов.
5. И так повторять, пока список индексов не иссякнет.
1
dive
 Аватар для I can
4963 / 4660 / 845
Регистрация: 13.04.2015
Сообщений: 9,851
18.01.2023, 08:52
Лучший ответ Сообщение было отмечено Sata3564 как решение

Решение

Sata3564,

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
        private List<string> listImage = new List<string>()
            {
                Application.StartupPath + @"\materials\Клубника.png",
                Application.StartupPath + @"\materials\Лимон.png",
                Application.StartupPath + @"\materials\Персики.png",
            };
 
        public void SetGenarationImage(Random rnd)
        {
           string s;
           for (int i = 0; i < listImage.Count; i++)
              {int j = rnd.Next(i);
               s = listImage[i];
              listImage[i] = listImage[j];
              listImage[j] = s;
              }
           for (int i = 0; i < listImage.Count; i++)
                    listButton[i].BackgroundImage = Image.FromFile(listImage[i]);
          }
0
 Аватар для Sata3564
1 / 1 / 0
Регистрация: 05.10.2022
Сообщений: 66
20.01.2023, 01:26  [ТС]
Спасибо методы работают
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
20.01.2023, 01:26
Помогаю со студенческими работами здесь

Определить сумму чисел меньше Р, произведение чисел больше Н и количество чисел в диапазоне значений Р и Н
27. Даны число Р и число Н. Определить сумму чисел меньше Р, произведение чисел больше Н и количество чисел в диапазоне значений Р и Н. При...

Определить сумму чисел меньше P,произведение чисел больше H и кол-во чисел в диапозоне значений P и H
ПОМОГИТЕ ПОЖАЛУЙСТА!!))) даны число P и H.Определить сумму чисел меньше P,произведение чисел больше H и кол-во чисел в диапозоне...

Определить сумму чисел меньше P,произведение чисел больше H и кол-во чисел в диапозоне значений P и H
ПОМОГИТЕ!!!!! даны число P и H.Определить сумму чисел меньше P,произведение чисел больше H и кол-во чисел в диапозоне значений P и H....

Генерация чисел без повторяющихся чисел
Долго думаю и сейчас пытаюсь найти алгоритм. Требуется как можно быстрее (не более 5-7 минут) сгенерировать все числа без повторяющихся...

Написать условие "произведение двух целых чисел больше 30, и хотя бы один из сомножителей больше 8"
2) Напишите в виде логического выражения условие: произведение двух целых чисел больше 30, и хотя бы один из сомножителей больше 8.


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru