|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
14.08.2015, 09:36 | #11 | |
Старожил
Регистрация: 04.02.2009
Сообщений: 17,351
|
Цитата:
Маньяк-самоучка
Utkin появился в результате деления на нуль. Осторожно! Альтернативная логика |
|
14.08.2015, 10:04 | #12 |
Старожил
Регистрация: 31.05.2010
Сообщений: 13,543
|
За счёт того что в Паскале проблемы с оптимизацией на уровне релиза компиля. Не знаю как дела обстоят с Дельфином, но с ТурбоПаскалем, так оно и есть.
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder |
14.08.2015, 15:52 | #13 |
Форумчанин
Регистрация: 30.06.2015
Сообщений: 353
|
Померяй эти:
|
14.08.2015, 15:55 | #14 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
for однозначно оптимальнее while при всех прочих равных условиях
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
14.08.2015, 16:00 | #15 |
Форумчанин
Регистрация: 30.06.2015
Сообщений: 353
|
С чего вдруг? Обоснуйте?
Большинство компиляторов сделает одинаковый Asm-код из For первого поста и While написанного мною. |
14.08.2015, 16:32 | #16 | |
Новичок
Джуниор
Регистрация: 11.10.2011
Сообщений: 3,882
|
Цитата:
|
|
14.08.2015, 16:55 | #17 | |
Старожил
Регистрация: 26.04.2008
Сообщений: 2,645
|
Это на уровне логики высокого языка не происходит.
На уровне низкого проверка происходит каждый раз, просто переменная с которой сравнивается в цикле не изменяется. На асме в конечном счёте все сводится к сравнению и перепрыгиванию Цитата:
Последний раз редактировалось eoln; 14.08.2015 в 16:57. |
|
14.08.2015, 17:02 | #18 |
Форумчанин
Регистрация: 01.06.2015
Сообщений: 497
|
Delphi 7, без оптимизации:
Код:
Код:
Если помог, буду очень благодарен за Ваш отзыв (весы в левой нижней части сообщения).
Последний раз редактировалось Krasiosoft; 14.08.2015 в 17:14. |
14.08.2015, 18:16 | #20 |
Старожил
Регистрация: 26.04.2008
Сообщений: 2,645
|
0.jpg
Ну вот же сравнение до 9. И прыжок при 9 итерации. Как и говорил, границы заранее вычислены, но проверки каждый раз. Да, цикл фор тут быстрее отработает, но только потому, что примеры неравнозначны. Последний раз редактировалось eoln; 14.08.2015 в 18:53. Причина: в другую сторону считал |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Чем можно заменить или как ускорить TImageList? | garuna | Общие вопросы Delphi | 10 | 06.12.2014 15:07 |
как ускорить | AlexVI | Общие вопросы C/C++ | 10 | 15.07.2014 23:42 |
Как можно ускорить скорость макроса? | staniiislav | Microsoft Office Excel | 7 | 21.12.2011 09:44 |
Можно ли ускорить выполнение этого кода? | Velross | Помощь студентам | 3 | 07.01.2010 19:37 |
Можно ли как-то ускорить выполнение этого кода (обработка примечаний)? | motorway | Microsoft Office Excel | 2 | 23.07.2009 17:06 |