Подраздел FAQ (ЧАВО, ЧАстые ВОпросы) предназначен для размещения готовых рабочих программ, реализаций алгоритмов. Это нечто вроде справочника, он наполнялся в течение 2000х годов. Ваши вопросы, особенно просьбы решить задачу, не пройдут предмодерацию. Те, кто наполнял раздел, уже не заходят на форум, а с теми, кто на форуме сейчас, лучше начинать общение в других разделах. В частности, решение задач — здесь.
Улучшение кода, Уменьшение времени работы программ
Проведение теста: сортировка массива (array[1..20] of integer) методом пузырька. Всего было проведено 30 тестов : 10 c n= 10^4; 10 c n= 10^5; 10 c n= 10^6; и один тест с n=10^7 (один, т.к. с увеличением степени n на 1, время проведения теста увеличивается соответственно в 10 раз)
Результат: Во всех случаях (каждый тест - новый массив) самой быстрой конструкцией оказалась "While ... do...", следом за ней "If ... then Goto..."
Вот еще: Если в программе используется write и writeln, то следует убрать последнюю, а использовать только write и управляющие символы. Доказательство преимущества этого способа: 1 байт с проги снимется, т.к. writeln и write процедуры вне кода описанны, и компилтруются в расчете на FAR. А так, вместо 2 байт на дальнюю модель памяти (т.е. на адрес процедуры) уйдет только 1 байт!
====== добавил позже =======
Облом. Я проверил все. 1. Логические операции бесполезно упрощать! 2. Writeln работает быстрее, чем write('ddfd',#13,#10), и к тому же на 100 кб(!!) меньше код получается (использовался один раз). 3. Сильно уменьшает код (на 150-200 кб) следующие директивы (применять только на уже оптимизированных программах)
Цитата
N+ - сопроцессор E+ - эмуляция сопроцессора I- - отключение проверок ввода/вывода R- - отключение проверок на границы массивов S- - отмена проверки на переполнение стека Q- - отмена проверок на границы типов (overflow, underflow) B- - быстрое вычисление логических условий D- - отключить информацию для отладки (пропадает возможность отлаживать программу!!!)
(взял с сурсов.) Очень полезные директивы. Только две первые не влияют на размер.
Сообщение отредактировано: Oleg_Z -
--------------------
Помогая друг другу, мы справимся с любыми трудностями! "Не опускать крылья!" (С)