Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.55/11: Рейтинг темы: голосов - 11, средняя оценка - 4.55
Заблокирован

Как генерить монотонно возрастающие числа?

02.09.2013, 11:56. Показов 2498. Ответов 22
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет! Суть проблемы такова. Надо генерить длинные (long long) числа, чтоб они были всё время разные и плавно возрастающие. Генериться они должны всегда правильно, вне зависимости от того, сколько раз подряд была запущенна программа, сколько раз компьютер был перезагружен и тд... Понятно, что в принципе тут надо завязываться на дату, но тут так же возникает проблема - если этот генератор запускать в цикле, то текущее время просто не успевает обновится и номера остаются одинаковыми....
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
02.09.2013, 11:56
Ответы с готовыми решениями:

Visual Studio: Вывести номера столбцов матрицы, элементы которых образуют монотонно убывающую или монотонно возрастающую последовательность
Здравствуйте, прошу помощи. Вопрос жизни и смерти. В программировании вообще что-то тяжко. С горем попалам сдаю. 1 курс... тяжело... ...

Как генерить веб страничку
Здравствуйте. Есть проект на java, появилась необходимость допилить в проект веб сервер. С веб знаком очень слабо и не могу...

Напечатать все возрастающие последовательности длины m элементами которых являются натуральные числа от 1 до n
Напишите программу, которая печатает все возрастающие последовательности длины m элементами которых являются натуральные числа от 1 до n...

22
859 / 448 / 112
Регистрация: 06.07.2013
Сообщений: 1,491
02.09.2013, 12:00
легче тогда завязать не на время, а просто при выходе программы сохранять последнее значение в файл например
1
Заблокирован
02.09.2013, 12:09  [ТС]
Цитата Сообщение от Raali Посмотреть сообщение
просто при выходе программы сохранять последнее значение в файл например
ну так то оно так, но в моём случае возможен крах системы и соответственно все файла тоже крякнут... А хотелось бы не завязываться на локал хост, а просто получать дату и время с сервера например или ещё как - то ...
0
93 / 69 / 22
Регистрация: 17.10.2011
Сообщений: 235
02.09.2013, 12:13
Цитата Сообщение от newbie666 Посмотреть сообщение
... если этот генератор запускать в цикле, то текущее время просто не успевает обновится и номера остаются одинаковыми....
обычно генератор случайных чисел 1 раз инициализируется(текущим временем), а потом генерериуются ичсла из псвевдослучайной последовательности

http://www.cplusplus.com/refer... /?kw=srand
0
Заблокирован
02.09.2013, 12:17  [ТС]
Цитата Сообщение от vndtta Посмотреть сообщение
обычно генератор случайных чисел 1 раз инициализируется(текущим временем), а потом генерериуются числа из псвевдослучайной последовательности
Всё верно, но этот номер может повторится при повторном запуске программы.... А если учесть, что программа будет запускаться тысячи раз, то уникальность случайных номеров, даже в формате long long ставится под вопрос....
0
3258 / 2060 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
02.09.2013, 12:20
Меня вообще смущают в одном контексте слова "случайные" и "монотонно возрастающие".
0
Эксперт С++
 Аватар для Thinker
4267 / 2241 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
02.09.2013, 12:21
Цитата Сообщение от 0x10 Посмотреть сообщение
Меня вообще смущают в одном контексте слова "случайные" и "монотонно возрастающие".
более того,
Цитата Сообщение от newbie666 Посмотреть сообщение
плавно возрастающие.
0
859 / 448 / 112
Регистрация: 06.07.2013
Сообщений: 1,491
02.09.2013, 12:25
Цитата Сообщение от vndtta Посмотреть сообщение
Всё верно, но этот номер может повторится при повторном запуске программы
одной и той же даты, учитывая год, быть 2 раза не может) только в другом измерении наверное

Цитата Сообщение от 0x10 Посмотреть сообщение
Меня вообще смущают в одном контексте слова "случайные" и "монотонно возрастающие".
наверное что то типа

C++
1
num[a] = num[a-1] + rand()%2;
0
Почетный модератор
Эксперт С++
 Аватар для SatanaXIII
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
02.09.2013, 12:31
Цитата Сообщение от newbie666 Посмотреть сообщение
программа будет запускаться тысячи раз, то уникальность случайных номеров, даже в формате long long ставится под вопрос
Положите в коробку два шарика - черный и белый. Достаньте из нее один. Запомните цвет извлеченного. Положите обратно. Посмотрите на звезды, почитайте бальмонта, полистайте календарь майя. Теперь достаньте еще раз шар из коробки. Какова вероятность, что он будет такого же цвета как в прошлый раз?

Это я к тому, что если так критично появление тех же чисел в заданном диапазоне, исключайте их.
Или придумайте кардинально новый подход к генерации псевдослучайных чисел. Но опыт поколений показал, что это не так-то и просто.

Добавлено через 51 секунду
Цитата Сообщение от Raali Посмотреть сообщение
одной и той же даты, учитывая год, быть 2 раза не может
12.12.12
0
Эксперт С++
 Аватар для Thinker
4267 / 2241 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
02.09.2013, 12:32
Цитата Сообщение от Raali Посмотреть сообщение
C++
1
num[a] = num[a-1] + rand()%2;
не стыкуется
Цитата Сообщение от newbie666 Посмотреть сообщение
чтоб они были всё время разные
0
859 / 448 / 112
Регистрация: 06.07.2013
Сообщений: 1,491
02.09.2013, 12:36
Цитата Сообщение от Thinker Посмотреть сообщение
Сообщение от newbie666
чтоб они были всё время разные
если перед запуском делать srand от даты, то будут разные

Цитата Сообщение от SatanaXIII Посмотреть сообщение
12.12.12
и когда второй раз при нашей жизни такое будет
0
Эксперт С++
 Аватар для Thinker
4267 / 2241 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
02.09.2013, 12:39
Цитата Сообщение от Raali Посмотреть сообщение
если перед запуском делать srand от даты, то будут разные
речь не о srand, а об алгоритме

Цитата Сообщение от Raali Посмотреть сообщение
num[a] = num[a-1] + rand()%2;
0
Почетный модератор
Эксперт С++
 Аватар для SatanaXIII
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
02.09.2013, 12:43
Цитата Сообщение от Raali Посмотреть сообщение
и когда второй раз при нашей жизни такое будет
В сто двенадцатом году. "Проблема две тысячи" - не слыхали?
Я к тому, что от формата зависит.

Цитата Сообщение от Raali Посмотреть сообщение
если перед запуском делать srand от даты, то будут разные
ТС говорит, что возможен вариант запуска второй копии программы, при еще не сменившемся значения времени. Надо какую-нибудь развертку монитора тогда уж приплетать. )
1
Заблокирован
02.09.2013, 12:55  [ТС]
да..... думаю случайного генератора в размерности Long long будет достаточно ))) Вот где бы взять такой генератор, что б генерил огромные числа в формате unsigned Long long и чтоб можно было бы задавать кол-во циферок, тоесть чтоб все номера были бы одной длинны как бы, например, максимальной для беззнакового long long ....
0
3258 / 2060 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
02.09.2013, 13:03
Короче, пошла какая-то муть.
Автор, сформулируйте задачу полностью.

Не по теме:

id пользователя генерит чтоли...

0
Заблокирован
02.09.2013, 13:06  [ТС]
id пользователя генерит чтоли...
Что то вроде того ))) Вот и задача сформулирована )
0
3258 / 2060 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
02.09.2013, 13:27
newbie666, под виндой доступна функция UuidCreate http://msdn.microsoft.com/en-u... 85%29.aspx
Под никсами uuid_generate http://linux.die.net/man/3/uuid_generate
2
93 / 69 / 22
Регистрация: 17.10.2011
Сообщений: 235
02.09.2013, 13:44
Цитата Сообщение от SatanaXIII Посмотреть сообщение
12.12.12
штамп времени включает в себя: год месяц число час минута секунда - и это минимум
0
Заблокирован
02.09.2013, 13:48  [ТС]
Цитата Сообщение от vndtta Посмотреть сообщение
год месяц число час минута секунда
там ещё и миллисекунды есть, но этого не достаточно )

Добавлено через 50 секунд
вряд ли конечно, т.к. винда - это не ОСРВ, но всё же, может кто слышал как получить время с точностью до наносекунд в windows ? ))))
0
859 / 448 / 112
Регистрация: 06.07.2013
Сообщений: 1,491
02.09.2013, 13:59
Цитата Сообщение от newbie666 Посмотреть сообщение
вряд ли конечно, т.к. винда - это не ОСРВ, но всё же, может кто слышал как получить время с точностью до наносекунд в windows ? ))))
это для того чтобы была разница между временем запуска приложений?) наверное придется создавать какой то общий сервер все таки, который распределяет данные...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
02.09.2013, 13:59
Помогаю со студенческими работами здесь

Как можно из ASP генерить файл word-а?
Подскажите как можно из ASP генерить файл word-а

Как заставить bash генерить в 16тиричной системе?
приветствую подскажите, пожалуйста, как в данном варианте скрипта for ip in {10..40}; do /sbin/ifconfig eth0 inet6 add...

Проверить, монотонно ли растут числа в массиве
{ int a={1,8,56,98,25,-9,45,64,17,5,79}; for (int k = 0; k < 12; k++) { bool swaped=false; for (int i = 0; i < 12-1; i++) { ...

Напишите программу, которая печатает все возрастающие последовательности длины m, элементами которых являются натуральные числа от 1 до n (m <= n)
Напишите программу, которая печатает все возрастающие последовательности длины m, элементами которых являются натуральные числа от 1 до n...

Напишите программу, которая печатает все возрастающие последовательности длины m, элементами которых являются натуральные числа от 1 до n (m <= n). Ук
Во всех заданиях предполагается создание отдельного проекта, полное описание всех необходимых классов, ввода / вывода (по желанию —...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru