ПРОГРАММИРОВАНИЕ РАЗВЕТВЛЯЮЩИХСЯ АЛГОРИТМОВ НАЧАЛА ПРОГРАММИРОВАНИЯ.

Презентация:



Advertisements
Похожие презентации
ПРОГРАММИРОВАНИЕ РАЗВЕТВЛЯЮЩИХСЯ АЛГОРИТМОВ НАЧАЛА ПРОГРАММИРОВАНИЯ.
Advertisements

ПРОГРАММИРОВАНИЕ РАЗВЕТВЛЯЮЩИХСЯ АЛГОРИТМОВ НАЧАЛА ПРОГРАММИРОВАНИЯ.
ПРОГРАММИРОВАНИЕ РАЗВЕТВЛЯЮЩИХСЯ АЛГОРИТМОВ НАЧАЛА ПРОГРАММИРОВАНИЯ.
АЛГОРИТМИЧЕСКАЯ КОНСТРУКЦИЯ ВЕТВЛЕНИЕ ОСНОВНЫЕ АЛГОРИТМИЧЕСКИЕ КОНСТРУКЦИИ.
АЛГОРИТМИЧЕСКАЯ КОНСТРУКЦИЯ ВЕТВЛЕНИЕ ОСНОВНЫЕ АЛГОРИТМИЧЕСКИЕ КОНСТРУКЦИИ.
АЛГОРИТМИЧЕСКАЯ КОНСТРУКЦИЯ ВЕТВЛЕНИЕ ОСНОВЫ АЛГОРИТМИЗАЦИИ.
АЛГОРИТМИЧЕСКАЯ КОНСТРУКЦИЯ ВЕТВЛЕНИЕ ОСНОВЫ АЛГОРИТМИЗАЦИИ.
Проверка домашнего задания 4 с с , 5, 9 с. 144 – 145, 3 с. 144.
АЛГОРИТМИЧЕСКАЯ КОНСТРУКЦИЯ ВЕТВЛЕНИЕ ОСНОВЫ АЛГОРИТМИЗАЦИИ.
АЛГОРИТМИЧЕСКАЯ КОНСТРУКЦИЯ ВЕТВЛЕНИЕ
Условный оператор (ветвление) (урок 5). Ветвление Если то иначе кон If then begin end else begin end;
Алгоритмическая структура «Ветвление» Тема урока.
Организация программ разветвляющейся структуры. Условный оператор.
Условный оператор Полная форма Неполная форма If условие Then оператор_1 If условие Then оператор Else оператор_2 Пример: Построить алгоритм вычисления.
Условный оператор Информатика и ИКТ 9 класс Гимназия 1 г. Новокуйбышевска Учитель информатики: Красакова О.Н.
Программирование ветвлений на Паскале. Оператор ветвления или условный оператор if then else if - " если ", then - " то ", else - " иначе "
Алгоритмы ветвления. Условный оператор 9 класс. Повторение 1. Что такое алгоритм? 2. Какие типы алгоритмов вы знаете? 3. Какой алгоритм называется линейным?
ВетвлениеВетвлениеопределение Разветвляющимся называется процесс, в котором естественный порядок выполнения нарушается в зависимости от условия.
1 Программирование на языке Паскаль Тема 2. Ветвления © К.Ю. Поляков,
PASCAL Условный оператор. Повторение.. Этот оператор используется для выполнения одного из двух возможных вариантов программы. Условный оператор если.
Транксрипт:

ПРОГРАММИРОВАНИЕ РАЗВЕТВЛЯЮЩИХСЯ АЛГОРИТМОВ НАЧАЛА ПРОГРАММИРОВАНИЯ

Ключевые слова условный оператор неполный условный оператор составной оператор вложенные ветвления

Общий вид условного оператора else Перед else знак «;» не ставится. Полная форма условного оператора: ifthenelse if then else Неполная форма условного оператора: ifthen if then Операции отношений Операции отношений Логические операции Логические операции Простые Сложные Условия - логические выражения !

Условный оператор program n_9; var x, a, b: real; begin writeln ('Определение принадлежности точки отрезку'); write ('Введите а, b>>'); readln (a, b); write ('Введите x>>'); readln (x); if (x>=a) and (x<=b) then writeln ('Точка принадлежит отрезку') else writeln ('Точка не принадлежит отрезку') end. a, b, x (x>=a) and (x<=b) ДАНЕТ да-нет

Неполная форма условного оператора program n_10; var y, a, b, c: integer; begin writeln ('Нахождение наибольшей из трёх величин'); write ('Введите а, b, с>>'); readln (a, b, c); y:=a; if (b>y) then y:=b; if (c>y) then y:=c; writeln ('y=', y) end. Y:=A B>Y Y:=B Y:=C C>Y да-нет да-нет

Составной оператор thenelse В условном операторе и после then, и после else можно использовать только один оператор. then else Если в условном операторе после then или после else нужно выполнить несколько операторов, то используют составной оператор – конструкцию вида: begin end

begin x1:=(-b+sqrt(d))/2/a; x2:=(-b-sqrt(d))/2/a; writeln ('Корни уравнения:'); writeln ('x1=', x1:9:3); writeln ('x2=', x2:9:3) end; begin x1:=(-b+sqrt(d))/2/a; x2:=(-b-sqrt(d))/2/a; writeln ('Корни уравнения:'); writeln ('x1=', x1:9:3); writeln ('x2=', x2:9:3) end; begin x:=-b/2/a; writeln ('Корень уравнения x=', x:9:3) end; begin x:=-b/2/a; writeln ('Корень уравнения x=', x:9:3) end; program n_11; var a, b, c: real; var d: real; var x, x1, x2: real; begin writeln ('Решение квадратного уравнения'); write ('Введите коэффициенты a, b, c >>'); readln (a, b, c); d:=b*b-4*a*c; if d<0 then writeln ('Корней нет'); if d=0 then if d>0 then end.

Блок-схема решения КВУР Конец Вывод «Корни уравнения: х 1=», х 1, «х 2=», х 2 х 1:=(-b+sqrt(d))/2/a Начало Введите коэффициенты a, b, c d:=b*b-4*a*c d < 0 да Вывод «Корней нет» нет d:= 0 да x:=-b/2/a Вывод «Корень уравнения х=», х нет х 2:=(-b-sqrt(d))/2/a ? Соответствуют ли программа и блок-схема друг другу?

Вложенные ветвления Возможна следующая конструкция: ifthen if then else else elseif else всегда относится к ближайшему оператору if !

Решение линейного уравнения program n_12; var a, b, x: real; begin writeln ('Решение линейного уравнения'); write ('Введите коэффициенты a, b>>'); readln (a, b); if a<>0 then begin x:=-b/a; writeln ('Корень уравнения x=', x:9:3) end else if b<>0 then writeln ('Корней нет') else writeln ('x – любое число'); end. Корней нет Список данных a, b, x - вещ a, b a<>0 x:=-b/a b<>0 Любое число нет да нет

Самое главное При записи на языке Паскаль разветвляющихся алгоритмов используют условный оператор: if then else Для записи неполных ветвлений используется сокращённый условный оператор: if then Если при некотором условии требуется выполнить определённую последовательных операторов, то их объединяют в один составной оператор, имеющий вид: begin end.

Вопросы и задания Как на языке Паскаль записывается полное и неполное ветвление? Является ли условным оператором последовательность символов? а) if x<y then x:=0 else read (y) б) if x>=y then x:=0; y:=0 else write (z) в) if x<y <z then a:=a+1 Что такое составной оператор? Для чего он используется в условном операторе? Используя составной оператор, упростите следующий фрагмент программы: if a>b then c:=1; if a>b then d:=2; if a<=b then c:=3; if a<=b then d:=4 Дано трёхзначное число. Напишите программу, которая определяет: есть ли среди цифр заданного целого трёхзначного числа одинаковые ; Пример входных данных Пример выходных данных 123Нет 121Да 222Да является ли число «перевёртышем», т. е. числом, десятичная запись которого читается одинаково слева направо и справа налево. Пример входных данных Пример выходных данных 123Нет 121Перевёртыш 222Перевёртыш Даны две точки в плоской прямоугольной системе координат. Напишите программу, определяющую, которая из точек находится ближе к началу координат. Пример входных данных Пример выходных данных Координаты 1-й точки>>1, 2 Координаты 2-й точки>>3, 4 Первая точка ближе Пример входных данных Пример выходных данных a b c>> 1 2 1Не существует a b c>> 2 2 2Равносторонний a b c>> Равнобедренный a b c>> 3 4 5Разносторонний Даны три натуральных числа. Напишите программу, определяющую, существует ли треугольник с такими длинами сторон. Если такой треугольник существует, то определите его тип (равносторонний, равнобедренный, разносторонний). Имеются данные о количестве полных лет трёх призёров спартакиады. Напишите программу, выбирающую и выводящую возраст самого младшего призёра. Пример входных данных Пример выходных данных k, l>>-1 5 xa, ya >>1 2 Точка лежит под прямой k, l>>-1 5 xa, ya >>1 10 Точка лежит над прямой k, l>>-1 5 xa, ya >>1 4 Точка лежит на прямой Напишите программу, определяющую, лежит ли точка А(ха, ya ): а) на прямой y = kx + l, над ней или под ней; б) на окружности x 2 + y 2 = r 2, над ней или под ней. Примеры входных данных и соответствующих им выходных данных разработайте самостоятельно. Пример входных данных Пример выходных данных x >> 5 y >> 6 x = 5 y = 6 x >> 6 y >> 5 x = 5 y = 6 Напишите программу, которая производит обмен значений переменных x и y, если x больше y. Дан условный оператор: If a<5 then c:=1 else if a>5 then c:=2 else c:=3 Какое значение имеет переменная а, если в результате выполнения условного оператора переменной с присваивается значение 3? Пример входных данных Пример выходных данных -5y = - 1 0y = 0 5y = 1 Напишите программу, вычисляющую значение функции: -1 при x <0 0 при x =0 1 при x >0 y = Составьте программу для решения задачи: Известно, что 31 января 2011 года приходится на понедельник. Какие значения должны быть присвоены литерной переменной y в алгоритме, определяющем день недели для любого числа (chislo) января 2011 года? chislo:= chislo mod 7 если chislo=3 то у:='… если chislo=4 то у:='… если chislo=5 то у:='… если chislo=6 то у:='… если chislo=0 то у:='… если chislo=1 то у:='… если chislo=2 то у:='… Пример входных данных Пример выходных данных Координаты 1 – го поля >> 2 2 Координаты 2 – го поля >> 3 3 Поля одного цвета Координаты 1 – го поля >> 2 3 Координаты 2 – го поля >> 3 3 Поля разного цвета Координаты 1 – го поля >> 2 7 Координаты 2 – го поля >> 5 4 Поля одного цвета Поле шахматной доски определяется парой натуральных чисел, каждое из которых не превосходит 8. Напишите программу, которая по введённым координатам двух полей ( k, l ) и ( m, n ) определяет, являются ли эти поля полями одного цвета. Напишите программу, в которой пользователю предлагается дополнить до 100 некоторое целое число а ( а - случайное число, меньшее 100). Ответ пользователя проверяется и комментируется.

Опорный конспект Условный оператор if then else if then begin end Полная форма Неполная форма Составной оператор