Вход/Регистрация
Технологии программирования
вернуться

Камаев В А

Шрифт:

Действия достижения сильного успеха. Рассчитывается X? и Q?. Наилучшая из точек ? или ? записывается на место наихудшей k-точки симплекса.

Действия отсутствия успеха. Рассчитывается X? и Q?. Далее выполняется действие по изменению симплекса при отсутствии успеха.

Действие по изменению симплекса при отсутствии успеха представляет собой альтернативу: если Q? <= Qk, то точка ? записывается на место k-точки, иначе, если точка ? хуже точки k, выполняется процедура редукции симплекса.

При выполнении процедуры редукции симплекса все точки симплекса стягиваются к лучшей точке симплекса на половину своего прежнего удаления и далее выполняется процедура расчета значений целевой функции во всех точках симплекса.

5.8. КОДИРОВАНИЕ ТИПОВЫХ СТРУКТУР НА ЯЗЫКАХ ПРОГРАММИРОВАНИЯ

Обычно разработку алгоритмов программ совмещают с кодированием текста программы. Отдельное от программирования написание алгоритмов практически ничем не отличается от написания инструкций.

Кодирование программы должно осуществляться только с использованием стандартных структур! Запрещено использование меток, операторов безусловного перехода на метку (go to), операторов досрочного выхода из структуры break!

При кодировании на языке С оператор break может использоваться только при кодировании структуры switch.

При использовании другого процедурно-ориентированного языка программирования (не Pascal) необходимо предварительно закодировать на используемом языке программирования все описанные в этом подразделе стандартные структуры без изменения их логики!

Так, при программировании на языке С структура УНИВЕРСАЛЬНЫЙ ЦИКЛ — "ДО" будет включать операцию "!" (НЕ):

/* подготовка цикла */

do

{

/* Тело цикла */

…

}

while (! (L));

В приведенной выше структуре ненулевое значение переменной L соответствует окончанию выполнения цикла, а не его продолжению выполнения, как в операторе языка программирования! Использование "линией" операции (!) НЕ никак не удлинит программу. Современные компиляторы автоматически инвертируют логическое условие завершения цикла.

Структуре СЛЕДОВАНИЕ в программах могут соответствовать: выполнение всей программы; вызов процедуры.

Согласно стандарту проекта, АЛЬТЕРНАТИВА имеет четыре конструкции. Рассмотрим их запись на языке программирования Pascal.

Конструкция для одной альтернативы:

if L then begin

{Действие при L=True}

…

end;

Конструкция для двух альтернатив:

if L then begin

{Действие при L=True}

…

end

else

begin

{Действие при L=False}

…

End;

Первый вариант конструкции для нескольких альтернатив (ВЫБОРА):

if L1 then Begin

{Действие при L1=True}

end;

…

if L2 then

begin

{Действие при L2=True}

…

end;

if L3 then

begin

{Действие при L3=True}

…

end;

Второй вариант конструкции для нескольких альтернатив (ВЫБОРА):

Switch:= 0;

L1:=…;

L2:=…;

L3:=…;

…

if L1 then Switch:= 1;

if L2 then Switch:= 2;

if L3 then Switch:= 3;

…

case Switch of

1:begin

{Действие при L1=True}

…

end;

2:begin

  • Читать дальше
  • 1
  • ...
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • ...

Ебукер (ebooker) – онлайн-библиотека на русском языке. Книги доступны онлайн, без утомительной регистрации. Огромный выбор и удобный дизайн, позволяющий читать без проблем. Добавляйте сайт в закладки! Все произведения загружаются пользователями: если считаете, что ваши авторские права нарушены – используйте форму обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

Подпишитесь на рассылку: