Тема: Разветвляющиеся алгоритмы
Лабораторная работа №2
Выполнил студент гр. Б01-712-1 Адонин А.А.
Проверил: к.т.н, доцент. Н.Н. Князева
Ижевск, 2013
Цель работы: Изучение логических операций и цыклических алгоритмов
Ход работы: if условие then оператор 1 else оператор 2; условие - это логическое выражение, в зависимости от которого выбирается одна из двух альтернативных ветвей алгоритма. Если значение условия истинно (TRUE), то будет выполняться оператор 1, записанный после ключевого слова then. В противном случае будет выполнен оператор 2, следующий за словом else, при этом оператор 1 пропускается. После выполнения указанных операторов программа переходит к выполеннию команды, стоящей непосредственно после оператора if. Необходимо помнить, что перед ключевым словом else точка с запятой никогда не ставится! else - часть в операторе if может отсутствовать: if условие then оператор 1; Тогда в случае невыполнения логического условия управление сразу передается оператору, стоящему в программе после конструкции if. Следует помнить, что синтаксис языка допускает запись только одного оператора после ключевых слов then и else, поэтому группу инструкций обязательно надо объединять в составной оператор (окаймлять операторными скобками begin... end). В противном случае возникает чаще всего логическая ошибка программы, когда компилятор языка ошибок не выдает, но программа тем не менее работает неправильно. Оператор цикла с постусловием REPEAT…UNTIL. Применяется для организации циклов с неизвестным заранее числом повторений, логика которых предполагает выполнение цикла до тех пор пока не станет истинным некоторое условие. Синтаксис оператора REPEAT…UNTIL: REPEAT Операторы (Оператор1, Оператор2, … ОператорN), образующие тело цикла, будут выполнятся циклически, до тех пор пока значение “Условия” не станет равно TRUE (истина). Иными словами, в цикле REPEAT…UNTIL условием продолжения итераций является невыполнение “Условия” (его значение FASLE – ложь). Условие цикла может быть логической константой, переменной или логическим выражением. Оператор REPEAT…UNTIL имеет две части: начальную (слово REPEAT) и завершающую (слово UNTIL), которые охватывают группу операторов, составляющих тело цикла. Поэтому необходимости в использовании составного оператора для построения тела цикла из нескольких простых операторов не возникает.
Задание 1 вариант 48 Блок схема: Программа: Program one; Var x,y,k,f:real; n,i,j:integer; Begin k:=1; if (x>0) and (x<=20) then for i:=1 to n do y:=y+k*(exp(i/3*ln(x))/2*i+1); k:=-k else begin f:=1; for j:=1 to n do begin F:=f*j; y:=(ln(abs(x))/ln(10))/f end; end; writeln('y= ', y:10:3); readln; end. Задание 2 вариант 48 Блоксхема: Программа: Program two; uses crt; Var a, z:real; Begin readln(a); z:=(2*a)/(exp(a)*(sin((5*pi)/180)))/(cos((5*pi)/180))); Writeln (‘Z= ‘, s:10:3); Readln; End.
Литература: Методические указания к лабораторным по курсу «Информатика» (программироавние на алгоритмическом языке Turbo Pascal, часть1)/Сост. Князева Н.Н.- Ижевск: Изд-во ИжГТУ,2010.-36с. Программирование в среде Turbo Pascal7.0/сост. Епанешников А.М., Епанешников В.А.-Диалог-МИФИ.1995
|