OberonCore https://forum.oberoncore.ru/ |
|
Поиск элемента матрицы https://forum.oberoncore.ru/viewtopic.php?f=82&t=2356 |
Страница 3 из 3 |
Автор: | AVC [ Среда, 17 Февраль, 2010 16:02 ] |
Заголовок сообщения: | Re: Поиск элемента матрицы |
Илья Ермаков писал(а): Вообще, термин "встроенная функция" сбивает. Это просто оператор языка, с функциональной формой записи. Посмотрим "ширше". Например, в Си стандартная функция fabs(x) не является оператором языка (т.е. не встроена на уровне языка). |
Автор: | AVC [ Среда, 24 Февраль, 2010 12:20 ] |
Заголовок сообщения: | Re: Базовые паттерны циклов |
Info21 писал(а): Там однократный while. Стандартный пример из Дейкстры. i := 0; j := 0; WHILE j < N DO INC( i ); IF i = N THEN i := 0; INC( j ) END END; Не будет ли здесь проблем с оптимизацией цикла (выделением индуктивной переменной)? |
Автор: | Info21 [ Среда, 24 Февраль, 2010 12:34 ] |
Заголовок сообщения: | Re: Базовые паттерны циклов |
AVC писал(а): Не будет ли здесь проблем с оптимизацией цикла (выделением индуктивной переменной)? Оптимизация -- отдельный предмет, практически не совместимый с хорошей структурой.Почему обязательно должна быть какая-то переменная. |
Автор: | Valery Solovey [ Среда, 03 Март, 2010 17:10 ] |
Заголовок сообщения: | Re: Поиск элемента матрицы |
В таком случае, возвращаемся опять к WHILE (i < N*M) & ~(arr[i MOD N, i DIV N] = x) DO INC (i) END Вынесение умножения и деления можно считать оптимизацией. Правда её использование структуру не нарушит. Возможно отрывать руки всё-таки надо в случае, когда программист на этом варианте и остановился? А не за само наличие такого промежуточного варианта в программе, где этот участок должен быть эффективным. |
Страница 3 из 3 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |