Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Лабораторная работа №6 Решение уравнений и неравенств






Цель работы: Получение навыков использования условных операторов в процессе решения уравнений и неравенств.

Памятка по использованию операторов:

Оператор безусловного перехода(GoTo)

GoTo< метка>;

Оператор безусловного перехода GoTo передаёт управление оператору программы, перед которым стоит метка, указанная в операторе GoTo. Все метки должны быть описаны в разделе объявлений Label. Область действия оператора не может выходить за пределы блока, в котором описана метка.

П р и м е р использования оператора GoTo

Label End1;

...

GoTo End1;

...

End1: x: =x+2;...

Составной оператор(Begin … End)

Составной оператор – это последовательность операторов заключённая в операторные скобки Begin < операторы> End; Составной оператор используется для объединения нескольких операторов в виде одного в тех местах, где допустимо использование именно одного оператора. Эта ситуация характерна для операторов условного перехода и операторов циклов, которые рассматриваются в следующих разделах. Всегда сразу же пишите и begin и end, причем оба слова с новой строки на одном уровне. Затем наполняйте их внутренними операторами с отступом в 2 пробела. Такой стиль написания программы существенно облегчает её понимание и снижает количество возможных ошибок.

 

Операторы условного перехода(If, Case)

Оператор If имеет следующую структуру:

If< условие> Then< оператор> [Else< оператор> ];

где условие – это некоторое логическое выражение. Если оно является истинным, т.е. - True, то выполняется оператор (составной оператор), следующий за Then. Иначе, при наличии Else, выполняется оператор (составной оператор) следующий за Else. Если Else-часть отсутствует, то выполняется очередной оператор после If. Else-часть относится к ближайшей If-части. Обращаем Ваше внимание, что в частях Then и Else может присутствовать только один оператор. Если Вы хотите там выполнить несколько операторов, то их необходимо оформить как один составной оператор, т. е. заключить в«операторные скобки» begin … end.

П р и м е р использования условного оператора

Нахождение корней квадратного уравнения

Var a, b, c, D, x, x1, x2: Double;

begin

{ Ввод коэффициентовa, b, c квадратного уравнения... }

D: =b*b-4*a*c; // вычисление дискриминанта

IfD> 0 then

Begin

x1: =(-b+Sqrt(D))/(2*a);

x2: =(-b-Sqrt(D))/(2*a);

{ вывод двух решенийx1, x2… }

end

else {еслиD< =0} IfD=0 then

begin

x: =-b/(2*a);

{ вывод единственного решенияx … }

end

else { еслиD< 0} { вывод комментария: Уравнение не имеет решений}

end;

Если оператор If содержит длинное сложное условие, то заключайте

его в круглые скобки, это поможет компилятору правильно обработать If.

Наиболее вероятные условия пишите слева, а менее вероятные – в else-части и во вложенных If.

 

Следующий условный оператор– Case. Он позволяет сделать выбор

из множества вариантов без использования сложных вложенных конструкций из операторов If…else. Он имеет структуру:

Case< селектор> Of

< метка1>: < Оператор>;

< метка2>: < Оператор>;

...

[Else< Оператор>; ]

End { конец Case };

Селектор – это выражение перечислимого типа, значение которого вычисляется и последовательно сравнивается с указанными метками, представляющими собой заранее определенные возможные значения селектора. При совпадении значения селектора с какой-либо меткой выполняется соответствующий оператор (составной оператор). Оператор, следующий за Else, выполняется в том случае, если значение селектора не совпало ни с одной из указанных меток.

П р и м е р использования Case

Var Operator: Char; X: Double;

Begin

{ Вввод значения переменнойOperator… }

Case Operator Of

'p': X: =X+5; {выполняется если значение Operator=’p’ }

'm': X: =X-5; {выполняется если значение Operator=’m’ }

'c': X: =X*5; {выполняется если значение Operator=’с’ }

end;

< Вывод значенияX >

end; В качестве метки может быть множество или диапазон возможных

значений селектора.

П р и м е р 2

Ввод целых чисел с комментариями, пока не будет введено число отрицательное или большее 12.

LabelRestart;

Var I: Integer;

begin

Restart:

< Ввод целого значения переменнойI … >

Case I Of

0: < вывод комментария: 'I=0' >

2, 4, 6, 8: < 'Чётное положительное, меньше10>

1, 3, 5, 7, 9: < 'Нечётное положительное, меньше10' >

Low(Integer)..-1: < 'Отрицательное' >

10..High(Byte): < 'От10 до255' >

else begin

< Вывод: 'Число больше255' … >

Close; {закрыть приложение}

end;

GoToRestart; // Повторить всё с начала

End;

Если begin следует за else, то их целесообразно писать на одной строке.

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.