Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Безусловный оператор перехода
Это единственный оператор, в котором используется метка. Он имеет вид: Go To <метка>; После выполнения этого оператора будет осуществлен переход на оператор, перед которым стоит указанная метка. Использование безусловных передач управления в программе считается теоретически избыточным для многих языков высокого уровня и способствует созданию малопонятных и трудно модифицируемых программ, которые вызывают сложности при отладке и сопровождении. Если же программист считает, что без условных переходов не обойтись, то необходимо выполнять следующие условия: 1. Не допускаются переходы внутрь подпрограмм (процедур и функций) или из них. 2. Переход внутрь структурного оператора может вызвать непредсказуемые эффекты, хотя компилятор не выдает сообщение об ошибке. Примером на условный и безусловный операторы можно считать алгоритм вычисления кубического корня, хотя реально для этих целей удобнее и нагляднее использовать один из операторов цикла без параметра. Program S; Label L; Const Eps = 1E-6; {определим точность как константу} Var a,x,y:real; Begin WriteLn (‘Введите число для определения кубического корня’); Read (a); x:= a; L: y:= x; {«старим» предыдущее значение} x:= 1/3*(a/sqr(y)+2*y); {вычисляем новое значение} If Abs(x-y)>Eps Then GoTo L; {повторим, если разность старого и нового значений не достигла заданной точности} WriteLn (‘Значение корня:’, x:10:6); End. Условный оператор При составлении по алгоритму программы на месте блока «Решение» записывается условный оператор, который может иметь 2 формы. В общем виде полная форма записывается как: If <логическое выражение> Then <оператор1> Else < оператор2>; а сокращенная: If < логическое выражение > Then < оператор1>; В первом случае, если логическое выражение истинно (True), то выполняется оператор1, а если ложно, то оператор2. Во втором случае при ложности логического выражения просто осуществляется переход к следующему оператору. Наиболее простой пример – вычисление значения кусочно-непрерывной функции: Program Function; Var f,x:real; Begin Read (x); If x>=0 Then F:= x*x {первый вариант} Else F:= sqrt (x); {второй вариант} WriteLn ('Значение функции =',F:8:3); end. Заметим, что значение функции используется как имя переменной. Оно не должно содержать скобок, поэтому здесь вместо F (x) используется просто F (можно функцию назвать и по-другому, например Fx). Date: 2016-07-22; view: 339; Нарушение авторских прав |