СДЕЛАЙТЕ СВОИ УРОКИ ЕЩЁ ЭФФЕКТИВНЕЕ, А ЖИЗНЬ СВОБОДНЕЕ

Благодаря готовым учебным материалам для работы в классе и дистанционно

Скидки до 50 % на комплекты
только до

Готовые ключевые этапы урока всегда будут у вас под рукой

Организационный момент

Проверка знаний

Объяснение материала

Закрепление изученного

Итоги урока

Программирование разветвляющихся алгоритмов

Категория: Информатика

Нажмите, чтобы узнать подробности

Цель урока: Знакомство с понятием «условный оператор», его структурой; изучение способов записи алгоритмов ветвящейся структуры на языке Паскаль; закрепление новых знаний, выявление пробелов в знаниях по теме и их устранение; способствовать развитию алгоритмического мышления, внимательности, познавательной активности, самостоятельности обучающегося, стимулирование интереса обучающегося к данной теме и предмету в целом.

Просмотр содержимого документа
«Программирование разветвляющихся алгоритмов»

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

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

НАЧАЛА ПРОГРАММИРОВАНИЯ

Ключевые слова условный оператор сокращённая форма условного оператора составной оператор вложенные ветвления

Ключевые слова

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

Общий вид условного оператора

Полная форма условного оператора:

if then else

Сокращённая форма условного оператора:

if then

!

Перед else знак «;» не ставится.

Условия - логические выражения

Простые

Сложные

Операции

отношений

Логические

операции

'); readln (a, b); write ('Введите x'); readln (x); if (x=a) and (x writeln ('Точка принадлежит отрезку') else writeln ('Точка не принадлежит отрезку') end . a, b, x (x=a) and (xнет да НЕТ ДА " width="640"

Условный оператор

program n_9;

var x, a, b: real;

begin

writeln ('Определение принадлежности

точки отрезку');

write ('Введите а, b');

readln (a, b);

write ('Введите x');

readln (x);

if (x=a) and (x

writeln ('Точка принадлежит отрезку')

else writeln ('Точка не принадлежит отрезку')

end .

a, b, x

(x=a) and (x

нет

да

НЕТ

ДА

'); readln (a, b, c); y:=a; if (by) then y:=b; if (cy) then y:=c; writeln ('y=', y) end. Y:=A нет да BY Y:=B да нет CY Y:=C " width="640"

Сокращённая форма условного оператора

program n_10;

var y, a, b, c: integer;

begin

writeln ('Нахождение наибольшей из трёх величин');

write ('Введите а, b, с');

readln (a, b, c);

y:=a;

if (by) then y:=b;

if (cy) then y:=c;

writeln ('y=', y)

end.

Y:=A

нет

да

BY

Y:=B

да

нет

CY

Y:=C

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

Составной оператор

В условном операторе и после then , и после else

можно использовать только один оператор .

Если в условном операторе после then или после else

нужно выполнить несколько операторов , то

используют составной оператор – конструкцию вида:

begin end

0 x : =-b/2/a да Вывод «Корень уравнения х=», х х1:= (-b+sqrt(d) ) /2/a х 2 := (-b-sqrt(d) ) /2/a Вывод «Корни уравнения: х1=», х1, «х2=», х2 Конец " width="640"

Блок-схема решения КВУР

Начало

Введите коэффициенты a, b, c

d : =b*b-4*a*c

нет

да

d

да

нет

d : = 0

Вывод

«Корней нет»

d0

x : =-b/2/a

да

Вывод

«Корень уравнения х=», х

х1:= (-b+sqrt(d) ) /2/a

х 2 := (-b-sqrt(d) ) /2/a

Вывод

«Корни уравнения:

х1=», х1, «х2=», х2

Конец

'); readln (a, b, c); d:=b*b-4*a*c; if dthen writeln ('Корней нет'); if d=0 then begin x:=-b/2/a; writeln ('Корень уравнения x =', x :9:3) end; if d0 then 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; end. " width="640"

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 dthen writeln ('Корней нет');

if d=0 then

begin

x:=-b/2/a;

writeln ('Корень уравнения x =', x :9:3)

end;

if d0 then

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;

end.

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

Вложенные ветвления

Возможна следующая конструкция:

if then

if then

else

else

!

else всегда относится к ближайшему оператору if

'); readln (a, b); if a0 then begin x:=-b/a; writeln ( 'Корень уравнения x=', x:9:3) end else if b0 then writeln ('Корней нет') else writeln ( 'x – любое число'); end . Любое число Корней нет " width="640"

Решение линейного уравнения

Список данных

a, b, x - вещ

a, b

да

нет

a 0

да

нет

b0

x:= - b/a

program n_12;

var a, b, x: real;

begin

writeln ('Решение линейного уравнения');

write ('Введите коэффициенты a , b ');

readln (a, b);

if a0 then

begin

x:=-b/a;

writeln ( 'Корень уравнения x=', x:9:3)

end

else if b0 then writeln ('Корней нет')

else writeln ( 'x – любое число');

end .

Любое число

Корней нет

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

Самое главное

При записи на языке Паскаль разветвляющихся алгоритмов используют условный оператор:

if then else

Для записи неполных ветвлений используется сокращённый условный оператор:

if then

Если при некотором условии требуется выполнить определённую последовательных операторов, то их объединяют в один составной оператор, имеющий вид:

begin end .

5 then c:=2 else c:=3 Какое значение имеет переменная а , если в результате выполнения условного оператора переменной с присваивается значение 3? Напишите программу, которая производит обмен значений переменных x и y , если x больше y . Используя составной оператор, упростите следующий фрагмент программы: if ab then c:=1; if ab then d:=2; if aif a Имеются данные о количестве полных лет трёх призёров спартакиады. Напишите программу, выбирающую и выводящую возраст самого младшего призёра. Что такое составной оператор? Для чего он используется в условном операторе? Является ли условным оператором последовательность символов? а) if xб) if x=y then x:=0; y:=0 else write (z) в) if x есть ли среди цифр заданного целого трёхзначного числа одинаковые ; Даны две точки в плоской прямоугольной системе координат. Напишите программу, определяющую, которая из точек находится ближе к началу координат. -1 при x 0 при x =0 1 при x 0 Напишите программу, в которой пользователю предлагается дополнить до 100 некоторое целое число а ( а - случайное число, меньшее 100). Ответ пользователя проверяется и комментируется. является ли число «перевёртышем», т. е. числом, десятичная запись которого читается одинаково слева направо и справа налево. Пример входных данных k, 1-1 5 xa, ya 1 2 Пример выходных данных Точка лежит под прямой k, 1-1 5 xa, ya 1 10 k, 1-1 5 xa, ya 1 4 Точка лежит над прямой Точка лежит на прямой Как на языке Паскаль записывается полное и неполное ветвление? Пример входных данных x 5 y 6 Пример выходных данных x = 5 y = 6 x 6 y 5 x = 5 y = 6 y = Пример входных данных Координаты 1 – го поля 2 2 Координаты 2 – го поля 3 3 Пример выходных данных Координаты 1 – го поля 2 3 Координаты 2 – го поля 3 3 Поля одного цвета Координаты 1 – го поля 2 7 Координаты 2 – го поля 5 4 Поля разного цвета Поля одного цвета Пример входных данных a b c 1 2 1 Пример выходных данных a b c 2 2 2 Не существует Равносторонний a b c 20 20 30 a b c 3 4 5 Равнобедренный Разносторонний Пример входных данных Пример входных данных Пример входных данных 123 123 Координаты 1-й точки 1, 2 Координаты 2-й точки 3, 4 Пример выходных данных Пример выходных данных Пример выходных данных 121 121 Нет Первая точка ближе Нет Перевёртыш 222 Да 222 Да Перевёртыш Пример входных данных -5 Пример выходных данных 0 y = - 1 5 y = 0 y = 1 б) на окружности x 2 + y 2 = r 2 , над ней или под ней. Примеры входных данных и соответствующих им выходных данных разработайте самостоятельно. " width="640"

Вопросы и задания

Поле шахматной доски определяется парой натуральных чисел, каждое из которых не превосходит 8.

Напишите программу, которая по введённым координатам двух полей ( k, l ) и ( m, n ) определяет, являются ли эти поля полями одного цвета.

Дано трёхзначное число.

Напишите программу, которая определяет:

Напишите программу, определяющую, лежит ли точка

А(ха, ya ):

а) на прямой y = kx + 1, над ней или под ней;

Напишите программу, вычисляющую значение функции:

Составьте программу для решения задачи:

Известно, что 31 января 2011 года приходится на понедельник. Какие значения должны быть присвоены литерной переменной y в алгоритме, определяющем день недели для любого числа ( chislo ) января 2011 года?

chislo:= chislo mod 7

если chislo=3 то у:='…‘

если chislo=4 то у:='…‘

если chislo=5 то у:='…‘

если chislo=6 то у:='…‘

если chislo=0 то у:='…‘

если chislo=1 то у:='…‘

если chislo=2 то у:='…‘

Даны три натуральных числа. Напишите программу, определяющую, существует ли треугольник с такими длинами сторон.

Если такой треугольник существует, то определите его тип (равносторонний, равнобедренный, разносторонний).

Дан условный оператор:

If athen c:=1

else if a5 then c:=2

else c:=3

Какое значение имеет переменная а , если в результате выполнения условного оператора переменной с присваивается значение 3?

Напишите программу, которая производит обмен

значений переменных x и y , если x больше y .

Используя составной оператор, упростите следующий фрагмент программы:

if ab then c:=1;

if ab then d:=2;

if a

if a

Имеются данные о количестве полных лет трёх призёров спартакиады.

Напишите программу, выбирающую и выводящую возраст самого младшего призёра.

Что такое составной оператор?

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

Является ли условным оператором последовательность символов?

а) if x

б) if x=y then x:=0; y:=0 else write (z)

в) if x

есть ли среди цифр заданного целого трёхзначного числа одинаковые ;

Даны две точки в плоской прямоугольной системе координат. Напишите программу, определяющую, которая из точек находится ближе к началу координат.

-1 при x

0 при x =0

1 при x 0

Напишите программу, в которой пользователю предлагается дополнить до 100 некоторое целое число а ( а - случайное число, меньшее 100).

Ответ пользователя проверяется и комментируется.

является ли число «перевёртышем», т. е. числом, десятичная запись которого читается одинаково слева направо и справа налево.

Пример входных данных

k, 1-1 5

xa, ya 1 2

Пример выходных данных

Точка лежит под прямой

k, 1-1 5

xa, ya 1 10

k, 1-1 5

xa, ya 1 4

Точка лежит над прямой

Точка лежит на прямой

Как на языке Паскаль записывается полное и неполное

ветвление?

Пример входных данных

x 5

y 6

Пример выходных данных

x = 5

y = 6

x 6

y 5

x = 5

y = 6

y =

Пример входных данных

Координаты 1 – го поля 2 2

Координаты 2 – го поля 3 3

Пример выходных данных

Координаты 1 – го поля 2 3

Координаты 2 – го поля 3 3

Поля одного цвета

Координаты 1 – го поля 2 7

Координаты 2 – го поля 5 4

Поля разного цвета

Поля одного цвета

Пример входных данных

a b c 1 2 1

Пример выходных данных

a b c 2 2 2

Не существует

Равносторонний

a b c 20 20 30

a b c 3 4 5

Равнобедренный

Разносторонний

Пример входных данных

Пример входных данных

Пример входных данных

123

123

Координаты 1-й точки 1, 2

Координаты 2-й точки 3, 4

Пример выходных данных

Пример выходных данных

Пример выходных данных

121

121

Нет

Первая точка ближе

Нет

Перевёртыш

222

Да

222

Да

Перевёртыш

Пример входных данных

-5

Пример выходных данных

0

y = - 1

5

y = 0

y = 1

б) на окружности x 2 + y 2 = r 2 , над ней или под ней.

Примеры входных данных и соответствующих им

выходных данных разработайте самостоятельно.

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

Опорный конспект

Условный оператор

Полная форма

if then else

Неполная форма

if then

Составной оператор

begin en d


Скачать

Рекомендуем курсы ПК и ППК для учителей

Вебинар для учителей

Свидетельство об участии БЕСПЛАТНО!