|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
23.01.2011, 02:29 | #1 |
Форумчанин
Регистрация: 02.02.2009
Сообщений: 103
|
Генератор случайных чисел
В программе необходимо реализовать генератор случайных чисел. 4хзначное число, причем в нем не должно быть одинаковых цифр
Код:
|
23.01.2011, 03:14 | #2 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
может проще использовать random(10000)?
пример: var s:string; begin s:=IntToStr(random(10000)); while Length(s)<4 do s:='0'+s; end; в начале программы(в FormCreate) не забудьте вставить Randomize. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
23.01.2011, 09:44 | #3 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Пепел Феникса, Ваш код не решает поставленную задачу:
Цитата:
В вашем коде главная "дырка" - вы получаете очередную цифру, отличную от предыдущей, а надо, чтобы она отличалась от ВСЕХ найденных ранее чисел. (ну и randomize надо делать ДО обращения к функции random!! И randomize должно вызываться только один раз!) попробуй такой код: Код:
|
|
23.01.2011, 10:03 | #4 | |
Старожил
Регистрация: 03.01.2011
Сообщений: 2,508
|
вот ещё вариант, с одним циклом )
Код:
Цитата:
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
Последний раз редактировалось veniside; 23.01.2011 в 10:11. Причина: расширил до универсального генератора с числом цифр от 1 до 10 ) |
|
23.01.2011, 10:27 | #5 | |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
Цитата:
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
23.01.2011, 10:34 | #6 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
кстати, строго говоря, согласно условию задачи, первой цифрой ноль идти НЕ МОЖЕТ. число 0123 - не 4-х значное!
|
23.01.2011, 18:51 | #7 | ||
Старожил
Регистрация: 03.01.2011
Сообщений: 2,508
|
Цитата:
Цитата:
Код:
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
|
||
23.01.2011, 21:58 | #8 |
Форумчанин
Регистрация: 02.02.2009
Сообщений: 103
|
спасибо, я ступил по поводу различных цифр... он сравнивает только с предыдущей цифрой у меня)) спать надо ночью, а днем заниматься решением задач))
по поводу 4хзначного числа - 0 можно на первое место) это не совсем число, скажем, в обычном понимании)) извиняюсь за неточную формулировку, рассмотрю предложенные варианты) СПАСИБО ВСЕМ!))) |
23.01.2011, 22:08 | #9 |
Форумчанин
Регистрация: 02.02.2009
Сообщений: 103
|
veniside, отдельное спасибо, мне нравится это решение
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Генератор случайных чисел | Evgenii(Евгений) | Помощь студентам | 6 | 23.01.2011 22:41 |
Генератор случайных чисел | Creativety | Фриланс | 10 | 27.12.2010 12:33 |
C++ генератор случайных чисел | sir.andrey | Помощь студентам | 4 | 03.09.2010 12:22 |
генератор случайных чисел на С++ | ANTI | Общие вопросы C/C++ | 20 | 12.04.2009 13:02 |
Генератор случайных чисел | psychopat | Общие вопросы Delphi | 11 | 18.02.2009 10:39 |