![]() |
Модераторы: Snowy, MetalFan, bems, Poseidon |
![]() ![]() ![]() |
|
Костя039 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 27.4.2012 Репутация: нет Всего: нет |
Помогите кто может! вообще сооброзить не могу как делать
![]() нужно создать аутентификационую форму, без логина: "Простой пароль не короче 7 символов, в котором не должно быть повторяющихся символов. Через 6 дней программа предлагает изменить пароль. Если пароль длинее 10 символов, при запуске системная дата меняеться на день назад!" |
|||
|
||||
Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 11 Всего: 130 |
И что именно непонятно? В одном предложении масса вопросов, и все на разные темы.
-------------------- There's nothing left but silent epitaphs. |
|||
|
||||
Костя039 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 27.4.2012 Репутация: нет Всего: нет |
1.как прописать что бы в пароле небыло повторяющихся символов? 2.что бы при не верном вводе пароля длиной больше 10 символов менялась системная дата на день назад? |
|||
|
||||
Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 11 Всего: 130 |
1.
2. ИМХО обычный ДОСовский DATE, запускаемый через ShellExecute, подойдёт. Хотя тут ещё от прав пользователя в винде зависит. -------------------- There's nothing left but silent epitaphs. |
|||
|
||||
Костя039 |
|
||||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 27.4.2012 Репутация: нет Всего: нет |
1. можно чуть подробнее? ![]() |
||||
|
|||||
Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 11 Всего: 130 |
Костя039, что именно подробнее? Цикл непонятен?
-------------------- There's nothing left but silent epitaphs. |
|||
|
||||
Костя039 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 27.4.2012 Репутация: нет Всего: нет |
да именно он!( |
|||
|
||||
Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 11 Всего: 130 |
Проходим по каждому символу строки, запоминая его и сравнивая с символами во втором цикле. Если символы равны и это не один и тот же символ, то булевой переменной приравниваем false.
-------------------- There's nothing left but silent epitaphs. |
|||
|
||||
XperT |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 269 Регистрация: 19.8.2006 Репутация: нет Всего: 4 |
Кстати код можно оптимизировать следущим образом:
Выигрыш в скорости для мелких строк никакой, но лучше сразу приучать писать оптимизированные алгоритмы, тем более, что в данном случае меньше проверок и читабельность кода выше. |
|||
|
||||
MetalFan |
|
|||
![]() Аццкий Сотона ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3815 Регистрация: 2.10.2006 Где: Moscow Репутация: 22 Всего: 128 |
А можно еще и после присвоения false из циклов вывалиться. Зачем их дальше гонять? -------------------- There are always someone smarter than you... |
|||
|
||||
Keeper89 |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2580 Регистрация: 26.2.2009 Репутация: 9 Всего: 58 |
Это сообщение отредактировал(а) Keeper89 - 27.4.2012, 19:00 |
|||
|
||||
XperT |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 269 Регистрация: 19.8.2006 Репутация: нет Всего: 4 |
Да, я тоже думал над этим, но для строк в немного больше десятка символов это не сыграет роли,а нужно как минимум один break добавить, плюс в первом цикле проверку и break. В общем, я подумал, что займусь только упрощением кода, хотя по правде говоря, сам бы не побрезговал добавить break для такой, пусть и мелкой, но оптимизации. По опыту знаю, что то, что сейчас кажется мелочью, в будущем может перерасти во что-то очень большое и даже маленькие недочеты серьезно влияют на скорость работы программы. |
|||
|
||||
Keeper89 |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2580 Регистрация: 26.2.2009 Репутация: 9 Всего: 58 |
||||
|
||||
XperT |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 269 Регистрация: 19.8.2006 Репутация: нет Всего: 4 |
Там не совсем O(n), так как поиск в словаре это всё равно не одна итерация, но не спорю, быстрее будет. Только не понятно зачем использовать словарь, если не используем его по назначению, не лучше бы было использовать сортированный список с бинарным поиском? |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: Для новичков" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Для новичков | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |