Скачать 320.07 Kb.
|
операторыгруппы 1 ELSEIF(Л.В.2) THEN [имя] операторыгруппы 2 … [ELSE [имя] операторы группы n] ENDIF [имя] В случае истинности логического вы- ражения Л.В.1 выполняются “операторы группы 1” и управление передается за ENDIF. Если логичес- кое выражение Л.В.1 ложно, то управление пере- дается на следующий ELSEIF, то есть вычисляется значение логического выражения Л,В.2, и если оно истинно, то выполняются “операторы группы 2”. Если оно ложно, то управление передается на следующий ELSEIF, и так далее. Если ложны все Л.В., то выполняются операторы группы n, следующие за завершающим ELSE. Если завершающий ELSE отсутствует, то управление передается за ENDIF. Число операторов ELSEIF в конструкции может быть произвольным. Имя, если оно задано, во всех частях конструкции должно быть одинаковым. Следует обратить внимание, что вся конструкция завершается одним ENDIF. Конструкция SELECT CASE Общий вид: [имя:] SELECT CASE (тест-выражение) CASE ( СП1) [имя] “операторы группы 1” [CASE (СП2) [имя] [“операторы группы 2”]] … [CASE DEFAULT [имя] [“операторы группы n”]] ENDSELECT [имя] Тест-выражение – целочисленное, символьное типа CHARACTER(1) или логическое скалярное выражение. СП – список констант, тип которых должен соответствовать типу тест -выражения. СП может содержать одно значение, или несколько констант, разделенных запятыми, или быть задан как диапазон разделенных двоеточием значения, например 5:10 или ‘I’:’N’, или :10 (опущена левая граница), или 2: (опущена правая граница). Каждое значение, даже если оно задано в диапазоне значений, может появляться только в одном СП. Пример: СASE (0, 1, 3, 20:25, 50). Конструкция SELECT CASE работает так: Вычисляется значение тест – выражения. Если полученное значение находится в списке СП1, то выполняются “операторы группы 1”; далее управление передается за ENDSELECT. Если значение в СП1 не находится, то проверяется, есть ли оно в СП2, и так далее. Если значение тест – выражения не найдено ни в одном списке и присутствует оператор CASEDEFAULT, то выполняются “операторы группы n”, а далее выполняется расположенный за ENDSELECT оператор. Если же значение тест - выражения не найдено ни в одном списке и CASEDEFAULT отсутствует, то ни одна группа операторов не выполняется и управление передается за ENDSELECT. Вспомогательные управляющие операторы Оператор STOP Прекращает выполнение программы. Общий вид: STOP [сообщение] Сообщение – символьная или целочисленная константа. Эта константа выводится на экран монитора после логического завершения программы по оператору STOP. При отсутствии сообщения по умолчанию выводится строка STOP – Program terminated Оператор PAUSE Оператор временно приостанавливает выполнение программы и позволяет пользователю выполнить команды операционной системы. Общий вид: PAUSE [сообщение] Если сообщение отсутствует, то после выполнения оператора PAUSE выводится строка: Please enter a blank line (to continue) or a system command(пожалуйста, введите пробел для продолжения программы или команду системы). 5. Циклические конструкции При решении многих задач часто возникает ситуация, когда некоторый набор действий требуется повторить многократно. При этом сами выполняемые команды остаются неизменными, но данные, с которыми они работают, могут меняться. Такие вычислительные действия называются циклическими. В Фортране различают три вида циклов:
Ц икл с “параметром” Блок – схема: Общий вид: [имя:] DO dovar = start, stop, [, inc] … тело цикла … ENDDO [имя] dovar – целая, вещественная (одинарной или двойной точности) переменная, назы- ваемая переменной цикла или параметром цикла; start, stop – целые, вещественные (одинарной или двойной точности) скалярные выражения, задающие диапазон изменения dovar; inc – приращение или шаг цикла; целое, вещественное ( одинарной или двойной точности) скалярное выражение. Inc может быть > 0 (тогда start < stop) и < 0 (тогда start > stop), но inc 0. Если inc = 1, то, как правило, 1 не указывается. Число итераций цикла определяется по формуле , где max – функция выбора наибольшего значения, а функция int возвращает значение, равное целой части числа. После завершения цикла значение переменной цикла dovar равно (inc>0):
Для случая inc <0 значение переменной цикла определяется аналогично. Конструкция цикла с “параметром” работает следующим образом:
Правила:
Цикл “пока” Блок – схема: О бщий вид: [имя:] DO WHILE (Л.В.) … тело цикла … ENDDO [имя] Если в теле цикла отсутствуют операторы прерывания цикла (GOTO, EXIT, CYCLE), то тело цикла выполняется до тех пор, пока истинно скалярное Л.В.. Причем проверка истинности Л.В. выполняется перед началом очередной итерации ( цикл с условием). Цикл DO (бесконечный цикл) Блок – схема: О бщий вид: [имя:] DO … тело цикла … ENDDO [имя] Цикл DO отличается от цикла “пока” тем, что проверка истинности Л.В. осуществляется после выполнения очередной итерации( итератив- ный цикл). Конструкция цикла DO задает бесконечный цикл. Поэтому такой цикл должен содержать по крайней мере один оператор прерывания цикла, например, GOTO, EXIT, CYCLE. Оператор EXIT Общая форма: EXIT [имя] Передает управление из DO – конструкции на первый, следующий за конструкцией выполняемый оператор. Если [имя] опущено, то EXIT обеспечивает выход из текущего цикла, в противном случае EXIT обеспечивает выход из цикла, имя которого присутствует в операторе EXIT. Оператор EXIT отдельно не применяется, а встраивается в конструкцию IF. Оператор CYCLE Общая форма: CYCLE [имя] Передает управление на начало DO – конструкции. При этом операторы, расположенные между CYCLE и оператором ENDDO конца цикла, не выполняются. Если имя опущено, то CYCLE обеспечивает переход на начало текущего цикла, в противном случае CYCLE обеспечивает переход на начало цикла, имя которого присутствует в операторе CYCLE. Оператор CYCLE отдельно не применяется, а встраивается в конструкцию IF. Вложенные циклы DO – конструкции могут быть вложенными (цикл в цикле). Степень вложенности не ограничена. Вложенным DO – конструкциям целесообразно давать имена, что повышает их наглядность. D1: DO while( Л.В.1) Для каждой итерации цикла D1 будут выполняться все итерации внутреннего цикла D2. … D2: DO while ( Л,В.2) … ENDDO D2 … ENDDO D1 D Для каждой итерации внешнего цикла DX (т.е. для каждого x) будут выполняться все итерации внутреннего цикла DY (т.е. все y). Общее число итераций: X: DO x=a, b, hx … DY: DO y=c, d, hy … ENDDO DY … 0> |
Курс посвящен изучению языка гипертекстовой разметки html. Рассматриваются основные конструкции языка, приемы разметки и связь с... | Назовите основные разделы науки о языке и единицы языка, изучаемые в этих разделах | ||
Данное пособие по английской разговорной речи содержит фразы, необходимые для общения в большинстве повседневных ситуаций. Предлагаемый... | Как связаны язык и общество? Как связаны язык и речь? Каковы основные уровни языка?Как отражаются в русском языке материальная и... | ||
Программа рассчитана на изучение французского языка по 2 часа в неделю 68 часов в учебном году | Художник учится смешивать краски и наносит мазок на холст. Музыкант учится этюдам. Журналист и писатель осваивают приемы письменной... | ||
Освоить основные приемы массажа, научиться использовать вспомогательные приемы массажа, освоить методику проведения массажа различных... | В результате освоения дисциплины студенты должны уметь осуществлять коммуникации на иностранном языке в профессиональной среде и... | ||
Цель работы: приобретение практических навыков работы в интегрированной среде C, изучение структуры программы на языке С | С обучением на венгерском языке. Данный вариант возможен даже для тех кто не знает венгерского языка, в данном случае наши специалисты... |
Поиск Главная страница   Заполнение бланков   Бланки   Договоры   Документы    |