(развилка) – это такая форма организации действий, при которой в зависимости от выполнения или невыполнения некоторого условия совершается либо одна, либо другая последовательность действий Ветвление
IF THEN ; IF THEN ELSE ; Неполное Полное Х УЦУЦ да нет Х1Х2 УЦ данет Выполнение программы может пойти двумя различными (альтернативными) путями.
да нет НЕПОЛНОЕ При выполнении одной из ветвей никаких изменений данных, поступающих на вход, не происходит.
данет ПОЛНОЕ
РЕШЕНИЕ ЗАДАЧ Даны значения двух величин, выбрать большее из них. Program Primer1; Var A, B, C: real; Begin Write(Введите два числа ); Readln(A,B); If A > B then C:= A else C:=B; Writeln( Большее:, C:5:1); Readln; End. Значения данных переменных определим как А и В. Результат сохраним в С. А, В, С – числа вещественного типа. А > В Начало Ввод А, В С:=AС:=B Вывод С Конец данет Анализ результатов. Для проверки работоспособности данной программы ее необходимо выполнить как min 2 раза: 1.А = 1, В = 2. 2.А = 2, В = 1.
Program Primer2; Var A, B, C: real; Begin Write(Введите два числа ); Readln(A,B); C:= A; If B > C then C:= B; Writeln( Большее:, C:5:1); Readln ; End. Другой вариант решения этой же задачи В > C Начало Ввод А, В С:=В Вывод С Конец С:=A данет Анализ результатов: 1.Введите два числа 1 2 Большее: Введите два числа 2 1 Большее: 2.0
Даны значения трех величин, выбрать большее из них. Начало Ввод А,В,C Вывод D Конец D:=A А > В D:=B D:=C C > DC > D Напишите в тетради условие задачи что дано; что получить; тип данных. Напишите программу для данного алгоритма. Проведите анализ результатов. Спишите предложенный алгоритм
Второй вариант решения задачи Начало Ввод А,В,C Вывод D Конец D:=B B > CB > C D:=C A > BA > B D:=A А > C D:=C
При вложении более трех структур ВЕТВЛЕНИЯ возрастает вероятность появления ошибок. В этом случае можно использовать структуру ВЫБОРВЫБОР ЗАДАНИЕ. 1.Проанализируйте каким образом соединяются алгоритмические конструкции при решении данной задачи первым и вторым вариантами. соединяются алгоритмические конструкции 2.Какой способ решения данной задачи выберете вы?
Program Primer4; Var A, B, C,D: real; Begin Write(Введите три числа ); Readln(A,B,С); If A > B then if A > C then D:=A else D:=C else if := B > C then D:=B else D:=C; Writeln( Большее:, D:5:1); Readln; End. Анализ результатов: 1.А = 1, В = 2, С = 3; 2.А = 1, В = 3, С = 2; 3.А = 2, В = 1, С = 3; 4.А = 2, В = 3, С = 1; 5.А = 3, В = 1, С = 2; 6.А = 3, В = 2, С = 1. Для какого варианта написана данная программа? Спишите программу в тетрадь рядом с соответствующей ей вариантом алгоритма.
ВЫБОР Предназначен для выбора из многих вариантов Case k of k1: D1; k2: D2; … kn: Dn; else Dx; End; k D1 D2D2 Dn Dx k1 k2 kn …
Написать программу для вывода дня недели по номеру дня. Program namber; var n: integer; Begin write( Введите номер дня недели ); readln(n); Case n of 1: writeln( Понедельник); 2: writeln( Вторник); 3: writeln( Среда); 4: writeln( Четверг); 5: writeln( Пятница); 6: writeln( Суббота); 7: writeln( Воскресенье); Else writeln( Такого дня в неделе нет); End; Readln End.
Решение задач 1.Составить программу, которая в зависимости от порядкового номера месяца (1,2,…,12) выводит на экран количество дней в этом месяце. 2.Дата некоторого дня определяется тремя натуральными числами: g (год), m (порядковый номер месяца) и n (число). По заданным номерам g, m и n определить: oдату предыдущего дня; oдату следующего дня.
Задача В древнем японском календаре был принят 60-летний цикл, состоящий из пяти 12-летних подциклов. Подциклы обозначались названиями цветов: зеленый, красный, желтый, белый и черный. Внутри каждого подцикла годы носили название животных: крыса, корова, тигр, заяц, дракон, змея, лошадь, овца, обезьяна, курица, собака и свинья. Например, 1984 год – год начала очередного цикла – назывался годом зеленой крысы. Составить программу, которая по заданному номеру года нашей эры n выводит его название по древнему японскому календарю. Рассмотреть два случая: Значение n>= 1984; Значение n может быть любым натуральным числом.
Cамостоятельная работа Дано X, вычислить Y(x) 20 -x, если х 0; Y = x, если 0 < х 2; 2, в остальных случаях. x y 2
X
Cамостоятельная работа Дано X, вычислить Y(x) x y x, если х 0; x, если х > 0; Y =
x y Y= - x - 1 Y= x + 1Y= - x + 1Y= x - 1
Какое значение будет иметь переменная x после выполнения операторов? 1. y := 7; z:= 4; If y - z >= 3 Then x := y Else x := z; x:= x +4; 2. y := 7; z:= 4; If y - z >= 3 Then x := y Else begin x := z; x:= x +4; end; 3. x := 0; z := 5; y := 5; If z > 2 Then If y > 2 Then x:= 1 Else x := 2;
y := 7; z:= 4; If y - z >= 3 Then x := y Else x := z; x:= x +4; y := 7 z:= 4 y - z >= 3 x := y x := z x:= x +4 да нет y := 7 z:= 4 y - z >= 3 x := y x := z x:= x +4 да нет
y := 7; z:= 4; If y - z >= 3 Then x := y Else begin x := z; x:=x +4; end; y := 7 z:= 4 y - z >= 3 x := y x := z x:= x +4 да нет
x := 0; z := 5; y := 5; If z > 2 Then If y > 2 Then x:= 1 Else x := 2; x := 0 z := 5 y := 5 z > 2 x := 1 x:= 2 данет y > 2 да нет
Задача Даны радиус круга и сторона квадрата. У какой фигуры площадь больше? Skr=Pi*R^2 Skv=A^2 Skv >Skr да нет Площадь квадр > Площадь круга > R, A Дано: R – радиус круга; A – сторона квадрата. Получить: Сообщение «Площадь квадрата больше» или «Площадь круга больше»
R A Известны площадь круга и площадь квадрата Уместится ли круг в квадрате? Skv = A*A A = Skv R = Skr/Pi Skr = Pi*R 2
A R 2R
В 19 часов будет дождь? Почитаю книгу Пойду гулять да нет Планы на вечер
Контрольная работа 1в. Задача: Известны два расстояния: одно в километрах, другое – в футах (1 фут = 0.45 м). Какое из расстояний меньше? Задание: Написать алгоритм и программу на ЯП Паскаль. Проанализировать полученный результат. 2в. Задача: Известны две скорости: одна в километрах в час, другая – в метрах в секунду. Какая из скоростей больше? Задание: Написать алгоритм и программу на ЯП Паскаль. Проанализировать полученный результат.
Перевод: 1 фут = 0.45 м = км 1м = 20/9 фут 1км = 20000/9 фут Перевод: 1 км/час = 1000/3600=10/36 м/сек. 1м/сек = 36/10 км/час
Известны два расстояния: одно в километрах, другое – в футах (1 фут = 0.45 м). Какое из расстояний меньше? Fut_km= *Fut Km < Fut_km да нет В км < В фут < Km,Fut
A R A