![]() КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Операторы цикла
End. Else Begin End. Begin Var Begin End. End Begin Else Begin Var End Begin End. Begin write ('введите числа a,b'); readln(a, b); if a > b then max:=a else max:=b; writeln (max:10:2) Если a > b, то выполняется оператор max:=a (ветвь then), в противном случае – оператор max:=b (ветвь else). После выполнения любой ветви следующим будет выполнен оператор вывода. Если в одной или в обеих ветвях оператора if необходимо разместить не один, а несколько операторов, то каждую такую группу следует представить в виде одного составного оператора. Составной оператор используется в тех случаях, когда в соответствии с правилами построения конструкций языка можно использовать один оператор, а выполнить нужно несколько действий. Составной оператор начинается служебным словом begin и заканчивается словом end. Между этими словами размещаются необходимые для вычислений операторы. Слова begin и end играют в составном операторе роль скобок и называются, поэтому операторными скобками. Например c:=a; a:=b; b:=c Пример 4.9. Решить уравнение ax2 + bx + c = 0 (a ¹ 0) a, b, c, x1, x2, d: real; write ('введите a,b,c '); readln (a,b,c); d:= sqr(b) – 4*a*c; if (d < 0) then write ('корни комплексные ') d:= sqrt (d); a:=2*a; x1:= (- b + d) / a; x2:= (- b – d) / a; writeln (x1:10:2, x2:10:2) Если условие d < 0 истинно, выводится сообщение «корни комплексные», после чего работа программы заканчивается. В противном случае выполняется else-ветвь, содержащая составной оператор (четыре оператора присваивания и оператор вывода). Краткая форма условного оператора if. Эта форма используется при программировании ответвлений и имеет вид: if Логическое выражение then оператор 1;. Если логическое выражение есть tru e, то выполняется оператор 1, в противном случае выполняется следующий оператор программы. Пример 4.10. Даны два числа. Если второе число больше первого – уменьшить его в два раза. var a, b: real; write ('введите a, b '); readln (a, b); if a < b then b:= b / 2; writeln (a:10:2, b:10:2) end.
В операторе if непосредственно за ключевыми словами then и else могут следовать любые операторы, в том числе и операторы if. В этом случае они называются вложенными. Ниже приведены примеры, в которых используются вложенные операторы if. Пример 4.11. Вычислить значение функции у по формуле при a > b.
Блок-схема алгоритма приведена на рис. 4.1. Здесь в линейную структуру вложена ветвящаяся, ветвь «нет» которой, в свою очередь, составляет еще одна ветвящаяся структура. Глубина вложения такой ветвящейся структуры равна 2.
Программа имеет следующий вид.
x, y, a, b: real; writeln ('введите x, a, b '); readln (x, a, b); if x <= a then y:= sqr (x) else if x > b then y:= sqr (sqr (x)) else y:= x * sqr (x); writeln (y:10:2) Пример 4.12. Составить программу решения следующей задачи
Схема алгоритма на рис 4.2.
Программа имеет следующий вид: var x, a, z: real; write ('введите x,a'); readln (x, a); if (a = 2) and (x = 1) then z:= sqr (a * x) if (a = 3) or (x = 2) then z:= exp (1 / 3 * ln (x*a)) else z:= exp (1 / 5 * ln (x)); writeln (z:10:2) В отличие от предыдущих примеров, где в качестве условий в операторах if использовались выражения отношения, здесь условия представляют собой более сложные логические выражения, содержащие логические операции and и or. В большинстве случаев это делает программу более простой и понятной.
Циклическим называют вычислительный процесс, алгоритм которого представляет собой линейную структуру с вложенными в нее одной или несколькими циклическими структурами, каждая из которых имеет глубину вложения равную 1. Для организации циклов используются специальные операторы языка, называемые операторами цикла. В языке TurboPascal таких операторов три: цикл с предусловием While, цикл с постусловием Repeat и цикл с параметром For.
Дата добавления: 2014-01-06; Просмотров: 341; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |