- •Предисловие
- •Раздел 1. Изучение интегрированной среды delphi
- •1.1. Вводные замечания
- •Основные понятия
- •1.3. Контрольные вопросы
- •1.4. Задания к лабораторной работе № 1
- •Раздел 2. Программирование линейных алгоритмов в системе delphi
- •2.1. Вводные замечания
- •2.2. Основные понятия
- •2.3. Пример программирования линейного алгоритма
- •2.3.1. Разработка алгоритма
- •2.3.3.Текст программы:
- •2.4. Контрольные вопросы
- •2.5. Задания к лабораторной работе № 2
- •Раздел 3. Программирование
- •3.3.2. Разработка формы
- •3.4. Контрольные вопросы
- •3.5. Задания к лабораторной работе № 3
- •Раздел 4. Программирование простых циклических алгоритмов в системе
- •4.1. Вводные замечания
- •4.2. Основные понятия
- •4.3.1. Разработка алгоритма
- •4.4. Контрольные вопросы
- •Раздел 5. Программирование с использованием одномерных массивов в системе delphi
- •5.1. Вводные замечания
- •5.2 Основные понятия
- •5.3. Пример программирования с использованием одномерного массива
- •5.3.1. Разработка алгоритма
- •5.4. Контрольные вопросы
- •5.5. Задания к лабораторной работе № 5
- •Раздел 6. Программирование с использованием двумерных массивов в системе delphi
- •6.1. Вводные замечания
- •6.2. Основные понятия
- •6.3. Пример программирования с использованием двумерного массива
- •6.3.1. Разработка алгоритма
- •Раздел 7. Символы и строки
- •Раздел 8. Файлы
- •Задание 1
- •Раздел 9. Программирование в системе delphi с использованием подпрограмм
- •7.3. Пример программирования с использованием подпрограмм
- •Учебно-методическое обеспечение курса
- •Средства обеспечения освоения дисциплины
Раздел 3. Программирование
РАЗВЕТВЛЕННЫХ АЛГОРИТМОВ
В СИСТЕМЕ DELPHI
3.1. Вводные замечания
В данном разделе изучаются логические операции, условные операторы, составной оператор и оператор выбора, а также осуществляется приобретение навыков программирования разветвленных алгоритмов.
3.2. Основные понятия
Составной оператор представляет собой группу операторов, отделенных друг от друга точкой с запятой и ограниченную операторными скобками begin и end.
Пример:
begin
оператор 1; оператор 2;
оператор n; end; Пример:
begin
а:=а+12; с:=а*b+2; end;
Составной оператор воспринимается как единое целое и может находится в любом месте программы.
В языке Delphi имеются две формы условного оператора: полный и неполный.
Полный условный оператор
Ключевые слова if, then, else означают, соответственно, «если», «то», «иначе». Условие - выражение булевского типа. При записи условия могут использоваться операции отношения =, <>,
>, >= <, <= и логические операции and, or, not,xor
Рис. 3.1. Блок-схема алгоритма полного условного оператора
Здесь si, s2 - один простой или составной оператор.
Если после ключевых слов then или else следует выполнить не один, а несколько операторов, то необходимо использовать составной оператор.
Приоритеты выполнения операций:
not,
* , /, div , mod, and;
+, -, or , xor ;
4) >, >= ,< ,<=, = ,<>.
Результатом вычисления условия может являться истина (true) или ложь (false). Если условие истинно, то выполняется оператор si, иначе - оператор s2.
Пример:
а:=1; b:=2; с:=0; if a>b then с:=а else c:=b;
Так как выражение а>b ложно, то будет выполнятся оператор после else, т.е. с:=b.
Неполный условный оператор
Рис. 3.2. Блок-схема алгоритма неполного условного оператора
Если результат вычисления условия - истина, то выполняется оператор s1. Если ложь, то выполняется оператор, непосредственно следующий за условным оператором //
Пример:
а:=2; b:=8; с:=0;
if a>b then:=a+b;
с:=с+12;
Результатом выполнения данного примера будет с=12, так как выражение а>b ложно и оператор с:=а+b не будет выполняться. Если после ключевого слова then следует выполнить не один, а несколько операторов, то необходимо использовать составной оператор.
Оператор выбора Case
Оператор выбора Case является обобщением оператора if и позволяет сделать выбор из произвольного числа вариантов.
Case <выражение - селектор>оf
<список1>:<оператор1>; <список2>:<оператор2>;
<cписокN>:<onepaтopN> else <оператор> end;
Оператор Case работает следующим образом. Сначала вычисляется значение выражения - селектора, затем обеспечивается реализация того оператора, константа выбора которого равна текущему значению селектора. Если ни одна из констант не равна текущему значению селектора, выполняется оператор, стоящий за словом else. Слово else может отсутствовать. Если слово else отсутствует, то активизируется оператор, стоящий непосредственно за словом end, т.е. первый оператор за границей Case. Селектор не может иметь вещественный тип. Тип констант в любом случае должен совпадать с типом селектора.
Примеры записи оператора Case
1) Селектор целочисленного типа.
Case k of
l:z:=k+10;
2:z:=k+100;
3..9:z:=k+1000
end;
2) Селектор символьного типа.
Case n of
'A', 'a': label1.Caption:='ap6y3’;
4B', 'в': 1аbе11.Cарtion:='вишня';
'С, 'с': labell.Caption:='слива';
else label 1.Cарtiоn:='ошибка ввода'
end;
3.3.1. Разработка алгоритма
Входные данные
х - действительная переменная. Выходные данные
F - действительная переменная. Промежуточные данные
В данной программе промежуточные данные не используются.