Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.52/21: Рейтинг темы: голосов - 21, средняя оценка - 4.52
0 / 0 / 0
Регистрация: 25.10.2014
Сообщений: 48

Как в edit рандомно генерировать 4-х значное число, которое не будет повторяться?

15.11.2016, 15:13. Показов 4269. Ответов 28
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как в edit рандомно генерировать 4-х значное число, которое не будет повторяться?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
15.11.2016, 15:13
Ответы с готовыми решениями:

Написать программу, которая будет генерировать квадратную матрицу рандомно
Необходимо написать программу которая будет генерировать квадратную матрицур рандомно размерности от 3 до 5(рандомно), значения...

Ошибки в приложении, которое должно генерировать число, а пользователь должен его запомнить и повторить
Приложение переписывала с аналога на Delphi. Скорей всего, некоторых операторов нет в Lazarus и из-за этого ошибки. unit Unit4; ...

Генерировать число, пока не будет удовлетворять условиям
Есть простой код генерации числа (от и до) и проверка его на условия. Как сделать автогенерацию до получения числа удовлетворяющего...

28
Житель Земли
 Аватар для DenNik
3004 / 3026 / 390
Регистрация: 26.07.2011
Сообщений: 11,465
Записей в блоге: 1
23.11.2016, 10:20
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от northener Посмотреть сообщение
System.Classes.TBits
посмотрел я этот класс. тот случай, когда функционал черезчур хорош, а поэтому не нужен для задачи.
ну, например, возможность динамически изменять размерность не нужна.
минус - нельзя задать не нулевой начальный индекс.

и вообще, пока не ясна область применения данного класса
0
 Аватар для Teodor7
53 / 53 / 5
Регистрация: 22.11.2016
Сообщений: 268
23.11.2016, 10:50
Самое простое - загружаем предварительно заготовленную таблицу неповторяющихся случайных чисел и читаем из неё последовательно.
Первый вариант с рандомным выбором в конце будет тупить, так как в последний невыбранный элемент, например, попадем с вероятностью в 1/10000.
0
Эксперт Pascal/Delphi
2389 / 1301 / 1492
Регистрация: 29.08.2014
Сообщений: 4,669
23.11.2016, 12:33
Цитата Сообщение от Teodor7 Посмотреть сообщение
Самое простое - загружаем предварительно заготовленную таблицу неповторяющихся случайных чисел и читаем из неё последовательно.
проблема как раз и стоит, в подготовке таблицы
0
 Аватар для Teodor7
53 / 53 / 5
Регистрация: 22.11.2016
Сообщений: 268
23.11.2016, 12:52
Разве это проблема?
Первым проходом готовим таблицу случайных чисел с запасом ... в два раза.
Вторым проходом удаляем повторяющиеся числа по уже описанному алгоритму с метками в массиве [1..10000].
Чтение из готовой таблицы самый быстрый алгоритм.

Интересный вопрос. Сколько повторяющихся чисел будет в процентах?
0
6000 / 4575 / 1096
Регистрация: 29.08.2013
Сообщений: 28,255
Записей в блоге: 3
23.11.2016, 14:06
а если взять число пи и порезать его на куски?
будут повторы?
0
 Аватар для Пытливый
3764 / 2272 / 705
Регистрация: 29.05.2013
Сообщений: 9,622
23.11.2016, 21:19
предлагаю массив
a: array[1000..9999] of boolean;
Как я понимаю, этим массивом вы предлагаете перебирать всякий раз элемент на Истину? Неудачное изначально решение, т.к. предполагает тучу холостых прогонов в поисках нужного значения. Создание массива в один проход и перемешивание тоже в один проход, пока самый быстрый вариант.
0
 Аватар для Teodor7
53 / 53 / 5
Регистрация: 22.11.2016
Сообщений: 268
24.11.2016, 00:27
Не перебирать, а проверять прямо по индексу. Так как индекс и есть значение. Только array[0..9999].
0
пофигист широкого профиля
4770 / 3206 / 862
Регистрация: 15.07.2013
Сообщений: 18,613
24.11.2016, 00:39
Цитата Сообщение от DenNik Посмотреть сообщение
и вообще, пока не ясна область применения данного класса
Это попытка замены Паскалевского множества для любого количества элементов.
А необходимость в ненулевом начальном индексе мне представляется весьма надуманной.
0
Житель Земли
 Аватар для DenNik
3004 / 3026 / 390
Регистрация: 26.07.2011
Сообщений: 11,465
Записей в блоге: 1
24.11.2016, 10:28
Цитата Сообщение от northener Посмотреть сообщение
А необходимость в ненулевом начальном индексе
исключительно в удобстве понимания программы человеком. а это, я считаю, немаловажно.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
24.11.2016, 10:28

Строковое деление 100-значное число разделить на 50-значное число
Помогите. не могу понять где нужно поправить код. Строковое деление 100 значное число делим на 50 значное число. Используем только 2...

Найти вероятность того, что наугад взятое 5-значное число будет делиться на 39
Мы решили эту задачу через программу, но не знаем как решить её на бумаге. Ответ получился 2.5%


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

Или воспользуйтесь поиском по форуму:
29
Ответ Создать тему
Новые блоги и статьи
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет: 1. Использовать системное время и дату, 2. Есть возможность вводить время и дату вручную. 3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber. Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
Установка MinGW GCC 16.2 и CMake
8Observer8 10.08.2026
VK Видео: https:/ / vkvideo. ru/ video-240781534_456239017 YouTube: eY5-5PyI9NM Текстовая версия
Неделя из жизни имитационной модели склада: мои кривые руки растут, откуда надо
anaschu 10.08.2026
Неделя из жизни имитационной модели склада: как я почти написал неправильную логику и что с этим делать Работаю сейчас над учебно-рабочим проектом: строю в AnyLogic имитационную модель процессов. . .
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства. Родственных связей существует 8 ступеней, такие как: p - отец P - мать q - муж Q - жена b - брат B - сестра s - сын S - дочь
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире. Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru