![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
Проверка наличия числа в массивеDelphi , Синтаксис , Массивы
Автор: Dimka Maslov { **** UBPFD *********** by delphibase.endimus.com **** >> Функция проверяет, находится ли число N в массиве Values Зависимости: нет Автор: Dimka Maslov, mainbox@endimus.ru, ICQ:148442121, Санкт-Петербург Copyright: Dimka Maslov Дата: 28 мая 2002 г. ***************************************************** } function Among(N: Integer; const Values: array of Integer): LongBool; asm push ebx xor ebx, ebx @@10: test ecx, ecx jl @@30 cmp eax, [edx] jne @@20 not ebx jmp @@30 @@20: add edx, 4 dec ecx jmp @@10 @@30: mov eax, ebx pop ebx end; Пример использования: Among(N, [1, 2, 3, 4, 5]) Функция Among! Функция Among
Функция Among проверяет, есть ли заданное целое число Ассемблерный код
Код функции реализован с помощью ассемблера, что обеспечивает низкоуровневую оптимизацию и эффективность. Вот разбор кода:
1. Пример использования Как показано в примере использования кода:
Это вернет Альтернативное решение
Если вам не нужно низкоуровневая оптимизация, предоставляемая ассемблером, вы можете реализовать эту функцию с помощью встроенного метода Delphi
Эта реализация проще и легче поддерживать, чем оригинальная версия на ассемблере. Однако она может не быть столь эффективной для очень больших массивов или конкретных случаев использования, где производительность критична. В статье описана функция в программном языке Delphi, которая проверяет наличие заданного числа N в массиве Values и возвращает результат в виде булевого значения. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |