Модераторы: Snowy, MetalFan, bems, Poseidon
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Генераций ПИН-кодов, с заданием номера экз. серии и тиража 
:(
    Опции темы
_Ramzes_
Дата 3.4.2007, 15:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 3.3.2007
Где: Санкт-Петербург

Репутация: нет
Всего: нет



Здравствуйте!
Подскажите пожалуйста, как можно сгенерировать  серию и случайный ПИН-код с следующими условиями:
Файл данных  –  файл, в котором хранятся все ранее сгенерированные pin-коды 
Файл сессии   –  файл, в котором хранятся pin-коды только одного сеанса
Серия – не повторяющаяся последовательность цифр, предназначенная для установления соответствия аппаратного комплекса Multicode набору  pin-кодов и имеющая следующий вид:  
Количество цифр: 5
Формат: Smnnnn
Диапазоны: mЄ[1;9], nЄ[0;9] то есть m≠0, S-символ
Исключения: нет
Генерация: каждый последующий номер серии получается увеличением на единицу  предыдущего

Pin-код – последовательность цифр для аварийного запуска системы при утрате транспондерной метки, имеющий следующий вид:
Количество цифр: 5
Формат: mmmmm
Диапазоны: mЄ[0;9]
Исключения: последовательности из всех одинаковых цифр, последовательность вида 12345
Генерация: алгоритм генерации случайных чисел

При обнаружении одинаковых номеров серий необходимо выводить сообщение об ошибке. Да ,и самое главное, - это где это хранить?

Заранее спасибо
проект горит
PM MAIL ICQ   Вверх
_hunter
Дата 3.4.2007, 16:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 8564
Регистрация: 24.6.2003
Где: Europe::Ukraine:: Kiev

Репутация: нет
Всего: 98



и что конкретно тебе не понятно? с чем помогать?
или тебе работающий исходник нужен? -- так это не в этот раздел...


--------------------
Tempora mutantur, et nos mutamur in illis...
PM ICQ   Вверх
_Ramzes_
Дата 3.4.2007, 16:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 3.3.2007
Где: Санкт-Петербург

Репутация: нет
Всего: нет



мне не понятно-как генерировать пин-коды в случайном порядке. и проверять уже созданные через базу
PM MAIL ICQ   Вверх
_hunter
Дата 3.4.2007, 17:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 8564
Регистрация: 24.6.2003
Где: Europe::Ukraine:: Kiev

Репутация: нет
Всего: 98



для генерации пинов используй функцию Random
а зачем проверять через базу? -- у тебя же они в файле хранятся...


--------------------
Tempora mutantur, et nos mutamur in illis...
PM ICQ   Вверх
_Ramzes_
  Дата 3.4.2007, 20:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 3.3.2007
Где: Санкт-Петербург

Репутация: нет
Всего: нет



Вы могли бы привести пример того, как сгенерировать пин-код с помощью Random и как проверить в файле - есть этот пин или нет?
PM MAIL ICQ   Вверх
Alkash
Дата 4.4.2007, 08:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


коллекционер жизни
**


Профиль
Группа: Участник
Сообщений: 516
Регистрация: 5.7.2004
Где: /

Репутация: нет
Всего: нет



Код

function rnd():string;
var
    d, i: integer;
    s: string;
begin
randomize;
s:='';
for i:=1 to 6 do
  begin
    d:=Random(9);
    s:=s+IntToStr(d);
  end;
Result:=s;
end;

Примерно так генеришь случайное число, как сгенерировал - записываешь результат в переменную, дальше циклом пробегаешься по количеству записей в базе, и сравниваешь значения.......


--------------------
Подпись >> /dev/null
PM MAIL ICQ MSN   Вверх
gambit
Дата 4.4.2007, 11:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***
Награды: 1



Профиль
Группа: Комодератор
Сообщений: 1359
Регистрация: 25.6.2006
Где: я?

Репутация: нет
Всего: 40



Я не думал над этим вопросом,потому оспаривать ничего не буду, но мне кажется что вариант
Alkash, не очень коректен, так как основная часть времени работы проги будет уходить на поиск пина в базе, а после каждого прохода база становится больше, и шанс на то что данный пин уже есть орже возрастает, а значит прога прошла цикл зря.
Прошу прощения за  smile , и повторюсь что это только мое мнение, и я бы так не поступил.
PM MAIL ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Для новичков"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.1383 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.