Страница: 1 |
Страница: 1 |
Вопрос: Алгоритм есть…
Добавлено: 04.09.05 14:58
Автор вопроса: Aндрей | ICQ: 259020622
Есть алгоритм и я не знаю насколько он полезен и можно ли что-то аналогичное юзать.
Метод защиты от опечаток при вводе цифровых данных в БД.
Есть какое-то значение состоящее из цифр: 123456945, его цифры нужно сложить и поделить на 11, остаток дописать в конец, а если остаток 10, то повторить последнюю инф цифру.
Т.е. 1234569457
При получении введенного значения программа сверяет остаток информационной части и последнюю цифру, если последняя инф цифра и дописанная нами равны, то проверить ее и 10. Если все сходится, то программа принимает данные, иначе предупреждает.
При перестановках цифр, не сработает наверное.
Ответы
Всего ответов: 11
Номер ответа: 1
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #1
Добавлено: 04.09.05 18:50
Private Sub Form_Load()
MsgBox IsNumeric("123"
MsgBox IsNumeric("abc"
End Sub
Номер ответа: 2
Автор ответа:
Aндрей
ICQ: 259020622
Вопросов: 30
Ответов: 71
Профиль | | #2
Добавлено: 04.09.05 20:30
Это к чему?
Тут проверятся последовательность цифр на соответсвие закону или чето вроде того.
Номер ответа: 3
Автор ответа:
HOOLIGAN
Вопросов: 0
Ответов: 1066
Профиль | | #3
Добавлено: 04.09.05 21:58
Алгоритмов существует несметное количество. И ты будешь изучать полезность каждого встретившегося?
Номер ответа: 4
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #4
Добавлено: 04.09.05 22:54
Ну тебе надо проверить являются ли введённые в ячейку данные числами? IsNumeric возвратит True когда в переменной будут только числа.
Номер ответа: 5
Автор ответа:
GSerg
Вопросов: 0
Ответов: 1876
Профиль | | #5
Добавлено: 05.09.05 03:14
Нет. Ему надо проверять, что введённые числа правильные. Для этого он пытается использовать примерно тот же метод, что используется при проверке штрихкода.
Номер ответа: 6
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #6
Добавлено: 05.09.05 13:55
Один вопрос - как ты 1234569457 получил? ) Сколько не считал, 1234569456 получалось.
Способ не особо надежный, оператор задолбается считать суммы цифр и брать остатки на 11.
Номер ответа: 7
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #7
Добавлено: 05.09.05 14:07
хм.. ну тогда сорри, я не правельно понял.
Номер ответа: 8
Автор ответа:
Aндрей
ICQ: 259020622
Вопросов: 30
Ответов: 71
Профиль | | #8
Добавлено: 05.09.05 19:47
Оператор введет просто строку откудобы нибыло, а машина сама подсчитает, она и быстрее и совершенней...
Можно все цифры сложить и получится 1234569456
или поделить число 123456945 и получится 1234569457, сложно сказать как оно лучше...
2 GSerg Че за метод для штрихкодов?
Номер ответа: 9
Автор ответа:
Black Dragon
ICQ: 321186096
Вопросов: 30
Ответов: 347
Web-сайт:
Профиль | | #9
Добавлено: 05.09.05 21:58
А там, берется сумма цифр на четных позициях и умножается на 3. Потом к результату добавляется сумма цифр на нечетных позициях. Если результат кратен 10, то штрих-код плавильный, иначе - нет.
Номер ответа: 10
Автор ответа:
Black Dragon
ICQ: 321186096
Вопросов: 30
Ответов: 347
Web-сайт:
Профиль | | #10
Добавлено: 05.09.05 21:59
Забыл добавить - правило для штрих-кодов формата EAN-13 (может, подходит и для других, не проверял).
Номер ответа: 11
Автор ответа:
Aндрей
ICQ: 259020622
Вопросов: 30
Ответов: 71
Профиль | | #11
Добавлено: 05.09.05 22:12
Списибо, а таким способом исключена ошибка?
EAN-13?!
При делении всего инф. числа т.е. 123456945 mod 11 исключен промах при перестановках чисел.