0 / 0 / 0
Регистрация: 25.10.2014
Сообщений: 48

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

15.11.2016, 15:13. Показов 4282. Ответов 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
6001 / 4576 / 1096
Регистрация: 29.08.2013
Сообщений: 28,264
Записей в блоге: 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 / 3207 / 862
Регистрация: 15.07.2013
Сообщений: 18,615
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
Ответ Создать тему
Опции темы

Новые блоги и статьи
Жизня: рисунок укладки багажа, сделанный клодом
anaschu 21.08.2026
Сделал 15 снимков, он по снимкам сделал схему.
Был там один разговор по поводу свободы в материальном мире.
kumehtar 19.08.2026
Суть: рассматривается живое существо, оказавшееся внутри довольно странной системы (этого мира) и пытающееся обустроить в ней свой кусок пространства. Жизнь действительно предъявляет каждому. . .
Когда логика программы не спасает от человеческих ошибок
Maks 18.08.2026
В последнее время всё чаще и чаще сталкиваюсь с таким явлением, как абсолютная невнимательность (или глупость) пользователей. Проявляется это чаще всего на работе в коллективе. Допустим, человек с. . .
Лето уходит
kumehtar 17.08.2026
Мысли в слух
kumehtar 17.08.2026
Забавно, насколько сейчас стала доступна информация. Например о магии, духовном развитии, медитациях, и других подобных направлениях, ранее зачастую тайных, передаваемых от учителя к ученику. Хотя. . .
Перемещение строк из ТЧ в другой документ с учетом текущего пробега
Maks 17.08.2026
Реализация из решения ниже выполнена на примере нетипового документа "Автозапчасти", с ТЧ "Шины". За основу взят алгоритм отсюда: https:/ / www. cyberforum. ru/ blogs/ 359708/ 10838. html Задача: . . .
Саморегулирующийся социальный контракт для сервера cross-section.
Hrethgir 14.08.2026
С кодом конечно таких глубоких размышлений пока не было, впрочем я уже привык к алгоритмизации. Суть предмета записи: снова в диалоге с нейросетью (я взял пока себе ник для учётки админа - Rector). . . .
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет: 1. Использовать системное время и дату, 2. Есть возможность вводить время и дату вручную. 3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru