Условный оператор используется, когда выполнение программы зависит от выполнения некоторого условия.
В Паскале различают две формы условного оператора: полная и сокращенная.
Полная форма условного оператора
Формат полной формы условного оператора имеет вид:
IF THEN оператор1
ELSE оператор2;
где IF (если), THEN (тогда), ELSE (иначе) – служебные слова; оператор1, оператор2 – простые или составные операторы.
Перед ELSE точка с запятой не ставится.
Условие – это любое выражение логического типа, использующее операции сравнения: =, <>, >=,
Пример 3.1. Вычислить y=x+1, если x
IF X ≥ 0 THEN Y:= SQRT(X)
Если условие сложное, то оно ставиться в круглые скобки.
Пример 3.2. Вычислить k=ln(x/y), если x>0 и y≠0, и k=sin(x), во всех остальных случаях.
IF (X>0) AND (Y<>0) THEN K:= LN(X/Y)
Пример 3.3. Вычислить:
Действие условного оператора расширяется, если использовать после служебных слов составной оператор. Составной оператор – это последовательность действий больше одного, которые заключаются в операторные скобки (begin, end).
Программирование алгоритмов разветвляющейся структуры
IF THEN
BEGIN
END
ELSE
BEGIN
END;
Пример 3.4.
Фрагмент программы
Блок-схема алгоритма
Краткая форма условного оператора
Формат краткой формы условного оператора:
IF THEN оператор1;
Если логическое условие истинно, то выполняется оператор1, если ложно, то выполняется оператор, следующий за оператором IF.
Пример 3.5. Запишем пример 1 при помощи краткой формы оператора IF.
IF X>=0 THEN Y:= SQRT(X);
Определение чётности и нечётности числа:
THEN WRITRELN (‘чётное число’);
THEN WRITELN (‘нечётное число’);
Задача 3.1. Определить, принадлежит ли точка с координатами (x,y) прямоугольнику с координатами x1, x2, y1, y2.
Примечание. Точка принадлежит прямоугольнику, если x ≥ x1, x ≤ x2; y ≥ y1, y ≤ y2.
Блок-схема алгоритма
Листинг программы
VAR X, X1, X2, Y, Y1, Y2: REAL;
READ(X1, X2, Y1, Y2);
THEN WRITE (‘точка принадлежит прямоугольнику’)
ELSE WRITE (‘точка не принадлежит прямоугольнику’);
Задача 3.2. Вычислить значение функции Y, которая принимает 3 значения.
Блок-схема алгоритма
Листинг программы
Задача 3.3. Пусть значение Y зависит от X, график зависимости приведён на рисунке.
Программа вычисления значения Y по значению X:
Задача 3.4. Разработать алгоритм и составить текст программы.
Блок-схема алгоритма
Листинг программы
IF X>Y THEN Z:=X ELSE Z:=Y;
WRITELN (‘Z = ’, Z:4:2);
Задача 3.5. Ввести 3 числа и расположить их по возрастанию (алгоритм перестановки или сортировки методом пузырька).
Блок-схема алгоритма
Листинг программы
WRITELN (‘B = ’, B:7:4);
Вопросы для самопроверки
1. В каком случае используется оператор условия?
VBA. Программирование алгоритмов линейной структуры
2. Какие существуют виды оператора условия?
3. Какова структура краткой формы оператора условия?
4. Какова структура полной формы оператора условия?
Лабораторная работа №3
Организация ПРОГРАММ РАЗВЕТВЛЯЮЩИХСЯ
СТРУКТУР
Работа посвящена изучению управляющих конструкций языка программирования при помощи различных форм оператора условия.
Цель работы. Изучить управляющие структуры языка и получить навыки составления программ с разветвлениями.
Задание. Проверить попадание точки в заданную область.
Постановка задачи. Записать логическое выражение, соответствующее заданной области истинности.
Варианты заданий
5 у 2 1 -2 -1 1 2 х 1 | 15 у 2 -2 1 2 3 х -2 | 25 у 2 r=2 -2 x 2 |
6 у 1 -1 1 х -1 | 16 у 2 -3 -2 -1 1 2 3 х -2 | 26 у 1 1 2 -1 х -2 |
7 у -2 -2 -1 1 2 х -2 | 17 у 2 1 3 1 х -2 | 27 у 2 -2 1 2 х 1 -2 |
8 у 2 1 -3 0 2 3 х -1 -2 | 18 у -2 -1 1 2 х -1 -2 | 28 у 2 1 -2 2 х -1 |
9 у 2 -2 -1 1 2 х -1 | 19 у 2 -1 2 х | 29 у 2 1 -2 -1 1 2 х -1 -2 |
10 у 3 45 2 3 х | 20 у 2 -2 -1 1 2 х -2 | 30 у 2 -2 1 2 х -1 -2 |
Источник: megalektsii.ru
1 Организация программ разветвляющейся структуры. Организация программ разветвляющейся структуры. Условный оператор. — презентация
Презентация на тему: » 1 Организация программ разветвляющейся структуры. Организация программ разветвляющейся структуры. Условный оператор.» — Транскрипт:
1 1 Организация программ разветвляющейся структуры. Организация программ разветвляющейся структуры. Условный оператор.
2 2 Форма организации действий, при которой в зависимости от выполнения некоторого условия совершается одна или другая последовательность действий, называется ветвлением.
4 4 ! В каждой из ветвей условного оператора может стоять один оператор языка Турбо-Паскаль. Если в ветви требуется выполнить несколько действий, используется составной оператор Begin … end; * Точка с запятой указывается только после полного завершения оператора, то есть после действия 2.
5 5 Пример 1: Составить алгоритм и программу. ПРОГРАММА: АЛГОРИТМ: Алг прим 1 ( цел X, Y, Z ) арг X, Y рез Z Нач ввод X, Y если X >Y то Z = X – Y иначе Z = Y + X + 1 все вывод Z кон 5
6 6 Конструкция If – Then – Else имеет сокращенный вариант, когда при невыполнении указанного условия ничего делать не надо.
7 7 Пример 2: Составьте алгоритм и программу, удваивающую значение целой переменной а, если а>5. Решение: Если а > 5, то значение а надо заменить на 2*а. В противном случае (а 5 Then а = а*2; WriteLn (а =’, а); End. АЛГОРИТМ: Алг прим 2 (цел А) органа ч ввод А если А>5 то А = А*2 все вывод А кон
8 Самостоятельно составить алгоритмы и программы: Запишите условный оператор, который вычисляет значение функции: 2. Запишите условный оператор, в котором значение переменной С вычисляется по формуле А+В, если А>100 и не изменяется в противном случае. Первоначальное значение С = 100.
9 9 Чтобы после ключевых слов Then или Else могла выполняться последовательность операторов, последние должны быть заключены в операторные скобки – ключевые слова Begin и End.
10 10 Пример 3 Даны целые числа х, у. Выведите сообщения о том, которое из чисел больше, а какое – меньше. Пример 3 Даны целые числа х, у. Выведите сообщения о том, которое из чисел больше, а какое – меньше.
11 11 Ветвление алгоритма на три и более ветвей. Если в программе требуется нарушить порядок выполнения операторов без предварительных проверок каких-либо условий, переход называется безусловным. Если в программе требуется нарушить порядок выполнения операторов без предварительных проверок каких-либо условий, переход называется безусловным.
Для реализации такого перехода в языке Турбо-Паскаль служит оператор безусловного перехода GoTo n Здесь n – метка строки в программе, которая должна выполняться после перехода. Для реализации такого перехода в языке Турбо-Паскаль служит оператор безусловного перехода GoTo n Здесь n – метка строки в программе, которая должна выполняться после перехода.
Метка – это либо целое число без знака в диапазоне 0…9999, либо идентификатор, определяемый программистом. Метки используются в разделе операторов. Они ставятся перед операторами и отделяются от них двоеточием. Метки должны быть объявлены в разделе описания меток прежде, чем они будут использоваться.
Объявление метки начинается словом Label, за которым следует список используемых меток, разделенных запятыми. Метка – это либо целое число без знака в диапазоне 0…9999, либо идентификатор, определяемый программистом. Метки используются в разделе операторов. Они ставятся перед операторами и отделяются от них двоеточием. Метки должны быть объявлены в разделе описания меток прежде, чем они будут использоваться. Объявление метки начинается словом Label, за которым следует список используемых меток, разделенных запятыми. * Но лучше метками и оператором GoTo не пользоваться, так как они усложняют программу * Но лучше метками и оператором GoTo не пользоваться, так как они усложняют программу
13 13 Варианты программ к данной задаче: Program P1; Uses Crt; Uses Crt; Var a,x: real; Var a,x: real; Label 1,2,3; Label 1,2,3; Begin Begin ClrScr; ClrScr; Writeln(‘ввести x’); Writeln(‘ввести x’); Read (x); Read (x); If x =10 Then Goto 2; If x>=10 Then Goto 2; a := 2*x; a := 2*x; Goto 3; Goto 3; 1: a := x+1; 1: a := x+1; Goto 3; Goto 3; 2: a:= 0; 2: a:= 0; 3: Writeln (‘A=’,a:6:2); 3: Writeln (‘A=’,a:6:2); End. End. Program P2; Var a,x:real; Var a,x:real; Begin Begin Writeln(‘ввести x’); Writeln(‘ввести x’); Read (x); Read (x); If x
14 14 Примеры программ: Если введенное с клавиатуры число положительно, вычислить его квадратный корень. program jkh; uses CRT; uses CRT; var a:Integer; var a:Integer; b:real; b:real;BEGIN clrscr; clrscr; writeln(‘введите число’); writeln(‘введите число’); readln(a); readln(a); if (a>0) if (a>0) then b:=sqrt(a); then b:=sqrt(a); writeln(‘b=’,b:2:2); writeln(‘b=’,b:2:2); readln; readln;END. Проверить на четность введенное с клавиатуры число. program jkh; uses CRT; uses CRT; var a:Integer; var a:Integer; b:real; b:real;BEGIN clrscr; clrscr; writeln(‘введите число’); writeln(‘введите число’); readln(a); readln(a); if (a mod 2 = 0) if (a mod 2 = 0) then writeln(‘четное’) then writeln(‘четное’) else writeln(‘нечетное’); else writeln(‘нечетное’); readln; readln;END.
15 15 ! Составить программу самостоятельно. GOTO N — переход OR — или AND — и
16 16 Условие кратности чисел: Если А mod B = 0 то A кратно B то A кратно B Если А mod B 0 то A не кратно B то A не кратно B НАПРИМЕР: 10 MOD 2 = 0 10 MOD 3 = 1 10 DIV 2 = 5 10 DIV 3 = 3
17 17 ЗАДАЧА: Ввести любое число, если оно кратно 8, прибавить к нему 100, иначе вычесть 300. Алг кратность (цел А) арг А рез А нач ввод А если A mod 8 = 0 то А = A+100 иначе А= А-300 все вывод А кон Самостоятельно составить программу.
18 18 В отличие от условного дает возможность выполнения большого количества различных блоков операторов. Его общая форма такова: Case expression of : ; : ;. Else End; ОПЕРАТОР ВЫБОРА. В отличие от условного дает возможность выполнения большого количества различных блоков операторов. Его общая форма такова: Case expression of : ; : ;. Else End; expression – проверяемое целое арифметическое, логическое или символьное выражение, которое в процессе выполнения программы принимает то или иное значение. представляют собой перечисления возможных значений выражения expression. При совпадении значения выражения хотя бы с одним из значений будет выполняться соответствующее и на этом выполнение команды выбора завершается.
19 19 Оператор выбора. Задача: program new; uses CRT; var m:Integer; BEGIN clrscr; writeln(‘введите номер месяца:’); readln(m); case m of 1,2,12: writeln(‘Зима’); 3,4,5: writeln(‘Весна’); 6,7,8: writeln(‘Лето’); 9,10,11: writeln(‘Осень’); end; readln; END. Оператор выбора. Задача: По введенному номера месяца написать какому времени года он принадлежит. program new; uses CRT; var m:Integer; BEGIN clrscr; writeln(‘введите номер месяца:’); readln(m); case m of 1,2,12: writeln(‘Зима’); 3,4,5: writeln(‘Весна’); 6,7,8: writeln(‘Лето’); 9,10,11: writeln(‘Осень’); end; readln; END.
20 20 Задание: По номеру введённого дня недели вывести количество уроков. алг расписание нач ввести дня (D) выбор если D >7 то «неверный день» если D=1 то « 3 урока» если D=2 то « 5 уроков» Если D=6 или D=7 То « выходной» кон Самостоятельно составить программу, используя оператор CASE
21 21 Составить алгоритмы и программы для задач: Составить алгоритмы и программы для задач: 1. Ввести любое число с клавиатуры. Найти его квадрат, если число отрицательное, в противном случае найти квадратный корень. 2. Вычислить значение функции Y в зависимости от заданного с клавиатуры значения аргумента X: X + 10 при Х >=0 Y = X – 10 при X =0 Y = X – 10 при X B, вывести на экран их сумму.
Переменной В присвоить значение, равное 10. Если С >B, вывести на экран их сумму. 4. Решить квадратное уравнение. 5. Определить площадь треугольника по формуле Герона.
22 22 САМОСТОЯТЕЛЬНАЯ РАБОТА (по карточкам)
Источник: www.myshared.ru
Презентация, доклад Организация программ: линейной, разветвляющейся и циклической структуры
Вы можете изучить и скачать доклад-презентацию на тему Организация программ: линейной, разветвляющейся и циклической структуры. Презентация на заданную тему содержит 57 слайдов. Для просмотра воспользуйтесь проигрывателем, если материал оказался полезным для Вас — поделитесь им с друзьями с помощью социальных кнопок и добавьте наш сайт презентаций в закладки!
Презентации » Образование » Организация программ: линейной, разветвляющейся и циклической структуры