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

Цели урока: 1.Формирование компетентности в сфере познавательной деятельности;

2.Формирование компетентности в сфере коммуникативной деятельности.

Задачи урока: 1. Познакомиться с правилами записи разветвляющихся алгоритмов, условного оператора;

2. Рассмотреть примеры программирования алгоритмов ветвления;

3. Подвести учащихся к выводу что для решения одной и той же задачи можно разрабатывать разные алгоритмы;

4. Сформировать умения записывать на языке программирования короткие алгоритмы с ветвлениями;

5. Получить опыт программирования ветвлений.

Скачать:


Предварительный просмотр:

УРОК ИНФОРМАТИКИ ПО ТЕМЕ:

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

Предмет: Информатика

Тема: «Программирование разветвляющихся алгоритмов. Условный оператор».

Класс: 9

Учитель: Суханова Ольга Владимировна

Школа: ГБОУ гимназия № 363 г. Санкт Петербург.

Цели урока: 1 . Формирование компетентности в сфере познавательной деятельности;

2.Формирование компетентности в сфере коммуникативной деятельности.

Задачи урока: 1 . Познакомиться с правилами записи разветвляющихся алгоритмов, условного оператора;

2. Рассмотреть примеры программирования алгоритмов ветвления;

3. Подвести учащихся к выводу что для решения одной и той же задачи можно разрабатывать разные алгоритмы;

4. Сформировать умения записывать на языке программирования короткие алгоритмы с ветвлениями;

5. Получить опыт программирования ветвлений.

Планируемы образовательные результаты:

Предметные – умение записывать на языке программирования короткие алгоритмы, содержащие алгоритмическую конструкцию «ветвление»;

Метапредметные – умение самостоятельно планировать пути достижения целей; умение соотносить свои действия с планируемыми результатами, осуществлять контроль своей деятельности, определять способы действий в рамках предложенных условий, корректировать свои действия в соответствии с изменяющейся ситуацией; умение оценивать правильность выполнения учебной задачи;

Личностные – алгоритмическое мышление, необходимое для профессиональной деятельности в современном обществе; представление о программировании как сфере возможной профессиональной деятельности.

Тип урока: комбинированный, урок- игра совершенствования умений и навыков, обобщения знаний, практических заданий.

Основные организационные формы обучения на уроке:

  • фронтальная работа с классом
  • индивидуальная работа за компьютером
  • групповая работа

Оборудование:

  1. персональные компьютеры учащихся с установленным на них программным обеспечением: операционная система Windows 7; PascalABC.net;
  2. персональный компьютер (ПК) учителя, мультимедийный проектор, экран;
  3. демонстрационные материалы (задания для двух команд, карточки для ответов, – приложение 1); презентация «Программирование разветвляющихся алгоритмов»,
  4. в папке каждого учащегося в электронном виде на ПК заготовки – материал для составления программы для выбранной задачи из учебника.

Технология занятия.

  1. Актуализация опорных знаний.
  2. Инструктирование учащихся по выполнению задания в PascalABC.net;.
  3. Самостоятельная работа в группах за ПК по созданию собственной программы.
  4. Представление выполненных работ на обсуждение одноклассниками.
  5. Домашнее задание.
  6. Подведение итогов урока. Рефлексия.
  7. Список литературы.

Ход урока

  1. Организационный момент. Цели и задачи урока.

Приветствие. Объявление темы и задачи урока. (3 мин)

  1. Актуализация опорных знаний. (8 мин)

В начале урока проводиться:

  1. проверка изученного материала по данной теме в форме игры «Паскаль в морском бою». (Приложение 1 ). Повторяются с учащимися следующие вопросы:

Что входит в состав алфавита языка Паскаль?

Каких требований следует придерживаться при выборе имен для различных объектов на языке Паскаль и какие типы данных он использует?

Какую структуру имеет программа, записанная на языке Паскаль?

Какие операторы используются для ввода и вывода данных?

  1. визуальная проверка домашнего задания в тетради.
  2. рассмотрение заданий, вызвавших затруднения при выполнении домашнего задания.
  3. изучение новой темы «Программирование разветвляющихся алгоритмов», начав её с темы «Условный оператор», которую ученики прорабатывали дома, используя подготовленные для них учителем материалы,
  4. проверка учителем изученного учениками материала, для этого вызывается произвольный ученик к доске и записывает:

if then else

if then

Учитель просит ученика разъяснить, что означают ключевые слова в данной записи; if ….. then ……. else, как они переводятся на русский язык.

  1. обсуждение на занятии двух примеров из учебника для 9 класса. Л.Л. Босова, А.Ю. Босова – первая программа, согласно которой можно определить принадлежность точки х отрезку [ А,В ] (Приложение 2).

Ученики определяют, все ли верно записано на доске одноклассником, если потребуется то они должны внести коррективы.

Следующим шагом ученикам предлагается написать на доске вторую программу нахождения наибольшего из трёх чисел (Приложение 2).

Если учитель видит, что ученики усвоили материал, целесообразно перейти к следующему этапу занятия – практической работе

  1. Инструктирование учащихся по выполнению практического задания в программе PascalABC.net (2 мин).

Для этого урока учащимися самостоятельно подготовлены материалы для выполнения практического задания с помощью программы PascalABC.net. В тетрадях учащихся записана математическая постановка задачи, составлен алгоритм выполнения задачи, которую они программируют.

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

Можно предложить ученикам еще раз внимательно посмотреть на записанную программу и обсудить, всё ли верно в ней. Если ошибок в программе нет, то надо перейти к процессу набора программного кода на компьютере учащимися.

  1. Самостоятельная работа по написанию программы (задание в учебнике) с использованием неполного условного оператора и выполнение её на компьютере (20 мин) (Приложение 3).

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

Ученики, объединенные в группы, выполняют самостоятельно практическую работу по набору и запуску своей программы в среде языка Паскаль, задают вопросы друг другу и педагогу, при этом они сами обучают и поддерживают друг друга, используют рекомендации и сохраняют результат в своей личной папке.

Для проверки правильности программы ученикам можно предложить использовать данные, в результате они должны будут увидеть вариант ответа у себя на экране.

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

  1. Представление выполненных работ. (10 мин) .

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

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

Ученики высказывают своё мнение по поводу получившейся работы.

  1. Домашнее задание.

Повторить пройденный материал по теме: « Программирование разветвляющихся алгоритмов. Условный оператор».

  1. Подведение итогов урока. Рефлексия. (2 мин).

Учитель подводит итоги урока. Проверяет выполненные задания и выставляет оценки. Все ученики успешно справились с заданием.

Ученики усвоили, что такое условный оператор, и поняли что, можно использовать разные варианты записи ветвлений.

Рефлексия .

Что нового мы сегодня узнали на уроке? Чему научились?

Какое задание вызвало затруднение?

Правильно ли я набрал программу для решения выбранной задачи?

Сегодня я узнал …..

Сегодня я понял …..

Список литературы:

  1. Информатика: учебник для 9 класса. Л.Л. Босова, А.Ю. Босова. – М.: БИНОМ. Лаборатория знаний, 2013.
  2. Информатика. методическое пособие для 7-9 классов: Л.Л. Босова, А.Ю. Босова. – М.: БИНОМ. Лаборатория знаний, 2015.
  3. Информатика. рабочая тетрадь для 8 класса: Л.Л. Босова, А.Ю. Босова. – М.: БИНОМ. Лаборатория знаний, 2015.
  4. Информатика: учебник для 8 класса. Л.Л. Босова, А.Ю. Босова. – М.: БИНОМ. Лаборатория знаний, 2013.

Приложение 1. Задания для первой команды

  1. Что называют операторными скобками:

3а) () 4В) {} 6ж) 1г) begin…end

  1. Какая из записей заголовка программы правильная:

8а) Program задача 1 4д) Program 1

1к) Program zadacha_1 6 ж) Program 1_zadacha

  1. Как записывается оператор ввода:

6к) WRITELN(X,Y) 2б)READ(X,Y)

8в) WRITE(X; Y) 2и)READ(X;Y)

  1. Как записывается оператор присваивания:

2к) A:=B+5 3а) A=B+5 6к) A:=B+5 3в) B+5:=A

  1. Запись на языке Pascal выражения у=5х – 10х+2:х будет иметь вид:

10а) y=5*x-10*x+2/x 6д) y=5x-10x+2/x

9и) y:=5x-10x+2:x 3б) y:=5*x-10*x+2/x

  1. Какой из операторов ошибочен, если заданы описания: var i,j: integer; x,y: real;

5а) х:= i*y 4е) у:= i/i 3е) j:= i/2 6и) j:=i*i

  1. Условный оператор записывается в виде:

1ж) While do

4к) If then else

8б) :=

4и) If then ;

1д) if b>5 then b:=b-3; else b:=b+15

3г) if b>5 then b:=b+15; else b:=b-3

5в) if b>5 then b:=b+15 else b:=b-3

10к) if b>5 then b:=b+15 b:=b-3

  1. После выполнения операторов присваивания: а:=3; b:=5, с:=7, d:=a; a:=b; b:=c, c:=d, соотношение значений переменных а, b, с следующее:

3а) a>b>c 5и) b>c>a 8ж) c>b>a 6з) b>a>c

  1. Определите значение целочисленных переменных х, у и t после выполнения фрагмента программы: х:=5; у:=7; t:=x; x:=y mod x; y:=t;

7а) x=2, y=5, t=5 3в) х=7, у=5, t=5 2е) х=2, у=2, t= 2

7к) х=5, у=5, t=5

  1. Чему будет равно значение переменной К после выполнения следующих действий?

К:=5;

S:=К+2;

К:=S+2;

К:=К+10+S;

6и) 5 7ж) 12 6ж) 7 7з) 26

  1. В результате выполнения программы

Program klass;

begin

writeln (45/(12-3));

write("классов");

end.

на экране появится запись:

8в) 5 классов 10в) 9 классов

9в) 5 классов; 10г) 9 классов

Приложение 1. Задания для второй команды

  1. В каком разделе происходит описание переменных:

1д) в разделе описания констант 2а) в разделе описания типов

1а) в разделе описания переменных 6с) в разделе описания выражений

  1. Чем заканчивается программа:

2б) READLN 6б) READLN; END 1е) END 1б)END

  1. Как записывается оператор вывода:

1г) WRITELN(A, D) 2в) READLN (A, D)

1ж) WRITE(A; D) 6к) READ(A; D)

  1. Оператор присваивания имеет вид:

2г)=

4д):=

3е)::=

10в) :=

  1. Выражение x= 4вс-ч+2:(в+3) на языке Паскаль будет записано в виде :

6и) х=4вс-ч+2:(в+3) 2д) х:=4*в*с-ч+2/(в+3)

3ж) х:=4*в*с-ч+2/(в+3) 1з) х:=4*в*с-ч+2:(в+3)

  1. Какой из операторов записан правильно, если заданы описания:

Var i,j: integer; x,y: real

4а) х:=i*j 1 и)y:=i/x 3з)j:=i+2 6г)j:=i*y

  1. Условие «если А больше или равно С, то В равно 1» соответствует фрагмент программы:

2е) if A>C then B:=1 6з) if A>B =C then B:=1

4к) if A>=C then B=1 1к) if A>=C then B:=1

  1. После выполнения операторов присваивания: а:=с; b :=d ; a:=a+b; b:=a-b; a:=a-b, переменные а и b принимают значения переменных:

9а) a=c, b=d 5б) a=c, b=c 7д) a=d, b=c 3к) a=c+d, b=c-d

  1. Определите значения целочисленных переменных а и b после выполнения фрагмента программы: а:=42; b:=14; а:=а div b; b:=a*b; a:=b div a;

10з) а=42, b=14 8г) а=1, b=42

5б) а=0, b=588 7з) а=14, b=42

  1. Чему равно значение переменной К после выполнения следующих действий?

К:=10;

Ы:=К+К+5;

К:=Ы

Ы:=К-10

3и) 10 6к) 15 7в) 5 7и) 25

  1. Высказывание «Если значение переменной b больше 5, то увеличить значение b на 15, иначе значение b уменьшить на 3», соответствует оператор:

1д) if b>5 then b:=b-3; else b:=b+15

3г) if b>5 then b:=b+15; else b:=b-3

5в) if b>5 then b:=b+15 else b:=b-3

10к) if b>5 then b:=b+15 b:=b-3

  1. B результате выполнения программы

Program klass;

begin

writeln (30/(11-5));

write("классов");

end.

на экране появится запись:

8в) 5 классов 10в) 6 классов

9в) 5 классов; 10г) 6 классов

Приложение 3.

Практическое задание для двух групп на уроке:

Задание для 1 группы:

Дано трёхзначное число. Напишите программу, которая определяет есть ли среди цифр заданного целого трёхзначного числа одинаковые;

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

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

Задание для 2 группы:

Ввести с клавиатуры три числа А, В, С . Определить, равны ли введенные числа. С клавиатуры.

Задания №3 (усложненный вариант)

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


| Планирование уроков на учебный год (ФГОС) | § 3.4. Программирование разветвляющихся алгоритмов

Уроки 27 - 28
§ 3.4. Программирование разветвляющихся алгоритмов

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

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

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

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

if <условие> then <оператор_1> else <оператор_2>

Для записи неполных ветвлений используется неполная форма условного оператора:

if <условие> then <оператор>

Слова if - then - else переводятся с английского языка на русский как если - то - иначе , что полностью соответствует записи ветвления на алгоритмическом языке.

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

В качестве условий используются логические выражения:

Простые - записанные с помощью операций отношения;
сложные - записанные с помощью логических операций.

Пример 1. Запишем на языке Паскаль рассмотренный в п. 2.4.2 (пример 8) алгоритм определения принадлежности точки х отрезку [а, b ].

Пример 2. Воспользуемся неполным условным оператором для записи на языке Паскаль рассмотренного в п. 2.4.2 (пример 9) алгоритма присваивания переменной у значения наибольшей из трёх величин а, b и с .

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

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

В условном операторе и после then , и после else можно использовать только один оператор. Если при некотором условий требуется выполнить определённую последовательность операторов, то их объединяют в один составной оператор.

Конструкция вида

begin <последовательность операторов> end называется составным оператором .

Пример. Алгоритм решения квадратного уравнения вам хорошо известен. Запишем соответствующую программу на языке Паскаль.


3.4.3. Многообразие способов записи ветвлений

В качестве оператора после then и else можно использовать условный оператор. Например, возможна следующая конструкция:

if <условие1> then

if <условие2> then <оператор1>

else <оператор2>

При использовании таких сложных конструкций (их ещё называют вложенными ветвлениями) следует иметь в виду, что else всегда относится к ближайшему оператору if .

Пример. Воспользуемся вложенным ветвлением для записи на языке Паскаль рассмотренного в п. 2.4.2 (пример 10) алгоритма решения линейного уравнения.

Как правило, для решения одной и той же задачи можно предложить несколько алгоритмов. Убедимся в этом, записав программу решения линейного уравнения, не прибегая к вложенным ветвлениям.

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

if <условие> then <оператор_1> else <оператор_2>

Используйте вложенные ветвления для записи программы, определяющей принадлежность точки х отрезку [а, b].

if <условие> then <оператор>

САМОЕ ГЛАВНОЕ

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

if <условие> then <оператор_1> else <оператор_2>

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

if <условие> then <оператор>

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

begin <последовательность операторов> end

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

1. Ознакомьтесь с материалами презентации к параграфу, содержащейся в электронном приложении к учебнику. Используйте эти материалы при подготовке ответов на вопросы и выполнении заданий.

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

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

а) if х<у then х:=0 else read (у)
б) if х>=у then х:=0; у:=0 else write (z)
в) if xthen a:=a+l

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

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

if a>b then с:=1;
if a>b then d:=2;
if a<=b then c:=3;
if a<=b then d:=4

6. Дано трёхзначное число. Напишите программу, которая определяет:

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


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

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

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

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

10. Напишите программу, определяющую, лежит ли точка А(ха, уа) на прямой у = kx + l на ней или под ней.

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

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

if а<5 then с:=1 else

if а>5 then с: =2

else с:=3

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

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

14. Составьте программу для решения задачи № 21 к § 2.4 (определение дня недели).

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

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

Методическая разработка урока

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

Идея урока:

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

Цель урока:

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

Задачи:

    Обучение самостоятельной практической деятельности.

    Выбор эффективных решений.

    Развитие навыков работы в коллективе.

    Формирование навыков самоанализа и самооценки.

Планируемые результаты:

    Предметные

Познакомиться с ветвлением, логическим оператором.

    Метапредметные

    1. Регулятивные:

    самостоятельно формулировать познавательную цель;

    планировать действия в соответствии с выбранной целью;

    прогнозировать результаты своей работы;

    уметь наблюдать и анализировать собственную учебную и познавательную деятельность и деятельность других обучающихся в процессе само и взаимопроверки;

    оценивать достигнутый результат.

    1. Коммуникативные:

    Осуществлять совместную деятельность в группе;

    Уметь строить речевые высказывания;

    Задавать вопросы с целью получения необходимой информации.

2.3 Познавательные :

    составлять математические модели по реальным жизненным ситуациям;

    выделять значимую для решения задачи и избыточную информацию;

    познакомиться с разветвляющимся алгоритмом;

    изучить запись разветвляющегося алгоритма словесную и с помощью блок-схем;

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

    для закрепления результата учащиеся должны составить алгоритмы и условные операторы по нескольким задачам;

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

    Личностные :

    развивать логическое мышление, умение обобщать, конкретизировать;

    формирование устойчивой мотивации к самообразованию и применению полученных навыков на практике;

    формирование внимания, умения наблюдать и закреплять знания;

    формирование способности сопоставлять, находить отличия и сходства.

Технологии обучения :

На занятии используются элементы проектного обучения, проблемного обучения, ИКТ технологий.

Используемые на уроке средства ИКТ: экран, компьютер.

Информационные ресурсы:

    Учебник для 8 класса «Информатика». Л.Л. Босова, А.Ю. Босова. – М..: Бином, 2014;

    Учебное пособие «Программирование и основы алгоритмизации». /А.Г. Аузяк, Ю.А. Богомолов, А.И. Маликов, Б.А. Старостин. - Казань: Изд-во КНИТУ- КАИ, 2013.

    Учебное пособие Фаронова В.В. «Турбо Паскаль 7.0. Начальный курс». – М.: ОМД Групп, 2013;

Технологическая карта занятия

Действия учителя

Деятельность обучающихся

1-ый этап - Смыслообразующий

Сегодня мы познакомимся с разветвляющимися алгоритмами и условным оператором, реализующим разветвляющийся алгоритм.

Что такое алгоритм?

Какими способами записи алгоритмов пользуются чаще всего?

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

При разработке программ чаще всего пользуются словесно-формульным и блок-схемным способами.

Какими бывают алгоритмы по типу вычислительного процесса?

По типу используемого вычислительного процесса алгоритмы бывают линейными (прямыми), разветвляющимися и циклическими.

Разветвляющимся алгоритмом описывается вычислительный процесс, реализуемый по одному из нескольких заранее предусмотренных направлений - ветвей. Выбор конкретной ветви вычисления зависит от результатов проверки выполнения некоторого логического условия. Результатом проверки является: "истина" (да) при выполнении условия, и "ложь" (нет), если не выполняется условие.

Записывают определение разветвляющегося алгоритма

2-ой этап – Операционно-деятельностный

Пример 1. Разработать алгоритм определения функции

F(x) = 2 x при x > 0 и

F(x) = х 2 при x <= 0.

Записывают пример 1 в тетради.

Словесный алгоритм данной задачи будет таким:

Проверяется, переменная Х больше или меньше нуля;

Если переменная Х больше нуля, то значение функции F (x )=2х;

Если переменная Х меньше нуля, то значение функции F (x )=х 2 .

Записывают словесный алгоритм примера 1.

Разветвляющийся алгоритм представляется на блок-схеме блоком «Условие» в виде ромба, имеющего один вход и как минимум 2 выхода: «Да» при выполнении условия в блоке и «Нет» при не выполнении условия в блоке. Но выходов из условного блока может быть и несколько, рассмотрим этот вариант позже.

Записывают условный блок

Нет да

Блок - схему разветвляющегося алгоритма для рассматриваемого примера 1 представляет рисунок 1.

да нет

Рисунок 1 - Разветвляющийся алгоритм

Рисуют в своих тетрадях блок-схему алгоритма примера 1.

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

If <условие> then <оператор>; - это неполная форма алгоритма с ветвлением.

Пример 2:

If x <5 then writeln (x );

Условие (в данном случае x<5) – это любое выражение типа boolean .

Записывают в тетради неполный условный оператор

Рисунок 2 – Блок-схема неполной формы алгоритма с ветвлением (Пример 2)

Зарисовывают Блок-схему неполной формы алгоритма с ветвлением

Программная реализация примера 1:

If x >0 then f :=2* x else f := x * x ;

Изменим немного эту задачу:

Пример 3: Если х<5, то вывести на экран х, иначе вывести текст “ x >=5”. В обоих случаях х нужно увеличить на 1.

Здесь используется расширенный условный оператор – полная форма ветвления:

If … then else …; Переводится так:

Если … то. .. иначе …;

Формат записи оператора:

If <условие> then <оператор-да> else <оператор-нет>;

Запомните: перед оператором else точка с запятой не ставится!

Записывают программную реализацию примера 1.

Записывают измененное условие задачи (пример 3) и расширенный условный оператор.

Записывают расширенный формат условного оператора.

Записывают данное условие, выделенное жирным и!

Блок-схема примера 3:

да нет

Рисунок 3 – Блок-схема примера 3

Зарисовывают блок-схему примера 3

Программная реализация примера 3 по блок-схеме на рис. 3:

If x<5 then writeln(x)
else writeln(‘x>=5’);

x := x +1;

Обратите внимание, что оператор else лучше записывать под оператором then как написано выше, так удобнее читать программы и разбираться в них.

Записывают программную реализацию примера 3

Условный оператор может иметь несколько уровней вложенности. Рассмотрим Пример 4:

y (x ) =

Записывают Пример 4 с несколькими уровнями вложенности

да нет да

Нет

Рисунок 4 – Блок-схема примера 4

Зарисовывают блок-схему примера 4

Программная реализация примера 4 на языке Паскаль будет выглядеть так:

If x=0 then y:=1 else if x>0 then y:=x else y:=x*x;

Уровней вложенности может быть и больше.

Записывают программную реализацию примера 4

3-ий этап - Оценочно -рефлексивный

Для закрепления материала нужно самостоятельно составить блок-схемы и программы, c компилировать, запустить их и получить результаты.

Напишем программу для примера 4:

Program Prim 4;

Var x,y: real;

begin

Write(‘ Введите значение х ’);

If x=0 then y:=1
else if x>0 then y:=x
else y:=x*x;

Writeln(‘x=’,x,’ y=’,y);

End .

В программе сначала объявляются переменные х, у, затем вводится значение х, затем условным вложенным оператором проверяется значение х и в зависимости от значения х присваивается значение у. Отметим, что оператор else относится к последнему оператору then .

После определения у печатаются значения х и у. оператор Writeln (‘ x =’, x ,’ y =’, y ); выполняется в любом случае.

Записывают программу Prim 4 в тетради и набирают программу Prim 4 на компьютере.

Записывают также замечания по программе.

Alt - F 9.

В случае успешной компиляции запускается на выполнение Ctrl - F 9 для х=3.

Ответ: х=3 у=3.

Проверяет, правильно ли ученики набирают программу.

Пример 5: Ввести три числа а, b , c . Если ни одно из чисел не равно нулю, то в переменную sr записать среднее арифметическое трех чисел.

Составить блок-схему алгоритма и написать программу для примера 5.

Блок-схема алгоритма:

Нет

Да

Программа на языке Паскаль:

Program Prim5;

var

a, b, c: integer;

sr: real;

begin

Writeln(‘ Введите числа a, b, c’);

Read(a, b, c);

If (a<>0)and(b<>0)and(c<>0) then sr:=(a+b+c)/3;

End .

Числа а, b , c вводятся с клавиатуры через пробел.

Учитель проверяет правильность составления блок-схем, набора программ учениками и правильность ответа.

Составляют блок-схему и программу на компьютере по примеру 5

Исправляют ошибки компиляции, если они есть, затем запускают на выполнение для набора чисел: 5 8 11.

Ответ: 8.

Если после выполнения условия, т.е. после оператора then , или после оператора else нужно выполнить несколько операторов, то эти несколько операторов заключаются в составной оператор, образуемый операторами begin и end .

Пример 6:

y (x ) =

Программная реализация примера 6:

If x >0 then begin y := x * x ; x := x +1; end

else y:=x;

Записывают пример 7 и его программную реализацию.

Пример 7: Ввести три числа а, b , c . Определить максимальное из них. Составить блок-схему и написать программу. Блок-схема алгоритма:

да

Нет

нет

Нет да

Программа:

Program Prim 7;

Var a, b, c, m: integer;

begin

Writeln(‘ Введите числа a, b, c’);

Read(a, b, c);

M:=a;

If b>m then m:=b;

If c>m then m:=c;

Writeln (‘Максимальное число=’, m );

End.

Составляют блок-схему и программу на компьютере по примеру 7.

После набора программы запускают компиляцию Alt - F 9, при наличии ошибок исправляют.

После успешной компиляции запускают на выполнение Ctrl - F 9 для набора чисел: 4 7 18.

Ответ: 18.

Проверяет по рядам, как кто справился с этим заданием, поправляя блок-схемы и программы, чтобы поставить оценку за усвоение материала.

Самоанализ методической разработки

Урок состоит из трех этапов.

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

    Направленность содержания урока на формирование личностных, метапредметных и предметных планируемых результатов образования. Возможности урока для формирования универсальных учебных действий.

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

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

    Направленность содержания урока на решение задач духовно-нравственного развития и воспитания личности гражданина России, формирования базовых национальных ценностей

Оценочно-рефлексивный этап урока. На данном этапе организуется итоговое оценивание (элементы промежуточного оценивания и самооценивания органично проводились на протяжении всего урока) в рамках процедуры рефлексии. Обучающиеся демонстрируют умение самостоятельно составлять блок-схемы алгоритмов и программ, успешно компилировать и выполнять, оценивать результаты своей деятельности и деятельности одноклассников.

Были применены объяснительно-иллюстративный, исследовательский, проблемный методы.

Направленность содержания урока на формирование личностных, метапредметных и предметных планируемых результатов образования. Возможности урока для формирования универсальных учебных действий (УУД).

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

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

Материалы информационных уроков вообще и данного урока в частности ориентированы на становление личностных характеристик выпускника ступени основной школы согласно требованиям ФГОС, в частности умение справиться с такими сложными заданиями как программирование вызывает чувство удовлетворения своим трудом, воспитания достоинства ученика.

    Использование современных методов и технологий организации учебно-воспитательной работы с учениками в процессе урочной и внеурочной деятельности (краткое описание этих методов или ссылка на источники)

Использование современных методов и технологий организации учебно-воспитательной работы с учениками в процессе урочной и внеурочной деятельности (краткое описание этих методов или ссылка на источники).

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

    Включение в структуру и содержание урока современных методов и приемов, стимулирующих познавательную мотивацию учащихся (краткое описание этих методов или ссылка на источники)

Включение в структуру и содержание урока современных методов и приемов, стимулирующих познавательную мотивацию учащихся (краткое описание этих методов или ссылка на источники).

В структуру урока включены следующие методы и приемы, стимулирующие познавательную мотивацию учащихся: создание проблемной ситуации, групповая форма работы, решение практико-значимых для учащихся заданий, проблемно-поисковый метод.

(Современные образовательные технологии: учебное пособие/Под ред. Н.В. Бордовской. – М.: КНОРУС, 2011).

    Включение в структуру и содержание урока современных методических приемов активного целеполагания, групповой/совместной работы, элементов проектной деятельности (описание этих методов или ссылка на источники)

Включение в структуру и содержание урока современных методических приемов активного целеполагания, групповой/совместной работы, элементов проектной деятельности (описание этих методов или ссылка на источники).

На первом этапе урока – смыслообразующем – учащимися на основе включения в активную деятельность сформулирована тема и цель урока. На втором этапе урока – операционно-деятельностном – учащиеся вовлечены в проектную работу, работу в группах.

    Включение в структуру и содержание урока современных методов оценки, позволяющих измерять метапредметные результаты, формировать самооценку у учащихся (описание этих методов или ссылка на источники)

Включение в структуру и содержание урока современных методов оценки, позволяющих измерять метапредметные результаты, формировать самооценку у учащихся (описание этих методов или ссылка на источники).

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

На заключительном этапе урока – оценочно-рефлексивном – учащиеся закрепляют полученные знания на практике, самостоятельно составляя блок-схемы алгоритмов и программы, самостоятельно выполняя их и проверяя правильность выполнения заданий, оценивают в целом свою работу на уроке, достигнутые результаты.

(Современная оценка образовательных достижений учащихся/Под ред. И.В. Муштавинской. – СПб.: КАРО, 2015).

Алгоритм называется разветвляющимся, если в зависимости от выполнения некоторого условия он реализуется по одному из нескольких, заранее предусмотренных направлений. Каждое направление называется ветвью алгоритма. За одно выполнение программы, в зависимости от условия, вычисления производятся по одной из ветвей алгоритма. В блок-схемах разветвляющиеся алгоритмы изображаются так, как показано на рис. 4.1.

Рис. 4.1. Фрагмент разветвляющегося алгоритма

Если условие истинно, то выполняется оператор 1, если ложно – оператор 2.

Для проверки условий в MathCAD используются операции отношения. Для ввода знаков отношения можно использовать панель инструментов Логический, либо сочетания клавиш, которые появляются в форме всплывающих подсказок при наведении указателя мыши на кнопки панели Логический (рис. 4.2).

Рис. 4.2. Панель инструментов Логический

Операция отношения принимает одно из двух значений: 1 (истина) - если заданное отношение выполняется или 0 (ложь) – в противном случае.

В MathCAD’e можно в одном выражении проверять несколько условий. Результат вычисления операций отношения:

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

В MathCAD используются четыре логические операции: логическое отрицание (Ø), логическое И (Ù), логическое ИЛИ (Ú) и логическое исключающее ИЛИ (Å).

Логическое выражение принимает только одно из значений: 1 (ИСТИНА) или 0 (ЛОЖЬ) и вычисляется с учетом приоритета операций, входящих в выражение. Самый высокий приоритет из логических операций имеет операция логическое отрицание, затем по убыванию: И, ИЛИ и исключающее ИЛИ (имеют одинаковый приоритет).

Операция логическое отрицание дает результат, противоположный значению операнда: отрицание ИСТИНЫ дает ЛОЖЬ и наоборот.

Результатом операции И будет значение ИСТИНА только в том случае, когда значение ИСТИНА имеют оба её операнда.

Операция ИЛИ имеет значение ИСТИНА, когда значение ИСТИНА имеет хотя бы один из операндов.

Операция исключающее ИЛИ имеет значение ИСТИНА, когда значение ИСТИНА имеет только один из операндов.

Для обозначения логических операций И и ИЛИ можно использовать знаки “*” (в тексте это точка) и “+” соответственно:

Определение значений логических выражений:

Для программирования разветвляющихся алгоритмов в Mathcad используется условная функция и условный оператор.

Условная функция if

Эта функция записывается в виде (символы if вводятся с клавиатуры):

if (<логич. выраж.>, <выражение1>, <выражение2>)


Функция принимает значение выражения 1, если логическое выражение равно 1 и значение выражения 2, если логическое выражение равно 0.

Например: X← if (A > B, Y, Z) или if (A > B, X Y, X Z)

Пример 4.1. Вычислить значение переменной y. .

Можно использовать и такой вариант решения примера:

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

Структура условного оператора: <выражение> if <условие>

Действие оператора if начинается с проверки условия. Если оно истинно (равно 1), то возвращается значение выражения слева от оператора if . Это соответствует условной структуре, называемой ЕСЛИ – ТО.

Для вставки условного оператора в программу необходимо (рис. 4.3):

Ввести имя программы-функции со списком формальных параметров и символ “:”;

Щелкнуть кнопку Add line панели Программирование ина ней кнопку условного оператора if ;

Справа от оператора if ввести условие, слева от if выражение, которое будет выполняться, если условие истинно; если в программе предусматриваются дополнительные условия, следует повторно нажать кнопку Add Line и ввести их аналогично, используя оператор if или otherwise .

Рис. 4.3. Вставка условного оператора

Для получения условной структуры ЕСЛИ–ТО–ИНАЧЕ используется оператор otherwise , который выполняется в том случае, если условие оператора if ложное.Для вставки оператора otherwise необходимо выделить поле, стоящее после оператора if , щелкнуть на кнопке otherwise панели Программирование и в поле оператора otherwise ввести соответствующее выражение.

Решим пример 4.1, используя в программе условный оператор if .

Блок-схема алгоритма:

Описание программы-функции и обращение к ней:

Пример 4.2. Вычислить значения полинома M(x) в зависимости от значения переменной y при x = 0,7 .

Описание программы-функции и обращение к ней имеет вид:

При программировании сложных разветвляющихся алгоритмов возникает необходимость выполнить несколько операторов и при выполнении и при невыполнении условия в операторе if . В этом случае для добавления дополнительных строк необходимо выделить поле 1 условного оператора и/или поле слева от оператора otherwise и щелкнуть повторно на кнопке Add line панели Программирование .

Пример 4.3. Даны числа a, b, c .Удвоить эти числа, если a≥b≥c и заменить их абсолютными значениями, если это не так.

Блок-схема алгоритма решения примера:

Описание и вызов программы-функции приведены на рис. 4.4. Входными параметрами являются переменные a, b, и с . Выходным параметром является вектор v , элементы которого содержат новые значения переменных a, b, c .


Рис. 4.4. Реализация алгоритма примера 4.5

Пример 4.4. Даны произвольные числа a, b, c . Если нельзя построить треугольник с такими длинами сторон, то вывести об этом сообщение, иначе вывести сообщение о виде треугольника.

Описание программы-функции и обращение к ней:

Разделы: Информатика

Класс: 9

Тип урока: комбинированный, изучение нового материала.

Место урока в теме : 1 урок

Цели урока:

  • Повторить и закрепить материал по теме “Алгоритм”
  • Ввести понятие “условный оператор”
  • Познакомить со способами записи разветвляющегося алгоритма на языке Pascal
  • Применить полученные знания при решении жизненных ситуаций и различных задач

Задачи урока:

  • Воспитательная – развитие познавательного интереса, логического мышления
  • Учебная – освоение умений составления разветвляющихся алгоритмов
  • Развивающая – развитие алгоритмического мышления, памяти, внимательности

Материально-техническое обеспечение урока:

  • Наглядные и дидактические материалы
  • Презентация для интерактивной доски, выполненная в программе Notebook (см. <Приложение 1 >)
  • Карточки с текстом задач

Технические средства обучения

  • ПК учителя
  • Мультимедийный проектор
  • Интерактивная доска SMART Board
  • ПК учащихся

Программные средства

Учебно-методическое обеспечение урока:

  1. Семакин И.Г., Залогова Л.А, Русаков С.В., Шестакова Л.В. Информатика и ИКТ. Базовый курс: Учебник для 9 класса. – М.: БИНОМ. Лаборатория знаний, 2011
  2. Задачник-практикум по информатике в II ч. / И. Семакин, Е. Хеннер – М.:БИНОМ. Лаборатория Базовых Знаний, 2010

План урока

  1. Организационный момент (1 мин)
  2. Повторение (8 мин)
  3. Изучение нового материала (7 мин)
  4. Закрепление (8 мин)
  5. Практическая работа (18 мин)
  6. Подведение итогов урока и задание на дом (3 мин)

Ход урока

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

2. Повторение

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

Проверим, как вы усвоили этот материал.

Работаем устно.

<Рисунок1>.

Рисунок1

Задание№1

1) Прокомментируйте каждую строку программы (см. <Рисунок1>):

Дополнительные вопросы:

Перечислите целые типы Pascal;

Перечислите операторы ввода;

Для чего служит оператор присваивания;

Перечислите операторы вывода;

Какие переменные будут входными, какие выходными.

2) Определите результат выполнения программы при следующих входных данных.

На доску проецируется слайд презентации, содержащий <Рисунок2>.

Рисунок2

Задание№2

Установите соответствие между математической записью алгебраического выражения и записью алгебраического выражения на языке Pascal (см. <Рисунок2>).

Какое алгебраическое выражение соответствует пункту а?

Назовите математический смысл функций sqr и sqrt.

Как записываются на Pascal арифметические операции над целыми числами и вещественными числами?

На доску проецируется слайд презентации, содержащий <Рисунок3>.

Рисунок3

Задание№3

1) Найдите 5 ошибок в программе вычисления значения переменной y (см. <Рисунок3>).

2) Перечислите вещественные типы Pascal.

Изучение нового материала

На доску проецируется слайд презентации, содержащий <Рисунок4 >.

У всех рассмотренных нами до сих пор программ была линейная структура

Т.е. команды выполнялись последовательно одна за другой в том, порядке в котором они были записаны.

Однако не любую задачу можно решить с помощью линейного алгоритма

Например, значение переменной y, заданной формулой ,

в зависимости от значения переменной x будет вычисляться либо по формуле , либо по формуле 2.

В данном случае мы имеем дело с другой алгоритмической структурой – разветвлением.

Сегодня на уроке:

  • вы узнаете, как решаются подобные задачи;
  • научитесь составлять программы разветвляющихся алгоритмов на языке Pascal

Запишите тему урока

“Программирование разветвляющихся алгоритмов на языке Pascal”

Вспомним:

1) Какой алгоритм называется разветвляющимся?

2) Что означает структура ветвления? (выбор одного из альтернативных путей работы алгоритма в зависимости от результата проверки условия)

Существуют две формы ветвления: полная и неполная (<Рисунок5>)

В полной форме при истинности условия выполняется действие 1, при ложности условия – действие 2.

(Пример – Если у меня повысилась температура, то я вызываю врача,…иду на работу)

В неполной форме действие выполняется только при истинности условия.

(Пример – Если на улице дождь – то я беру с собой зонт)

Для реализации структуры “ветвления” на языке Pascal используется условный оператор.

Запись в тетрадях:

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

IF условие THEN действие1 ELSE действие2;

2) Неполная форма условного оператора

IF условие THEN действие;

Русский перевод условного оператора: IF-если, THEN- то, ELSE – иначе.

Условия могут быть простыми и сложными.

Для составления простых условий используют операции сравнения: <, >, <=, >=, <>, =.

Слева и справа от знака сравнения записывают арифметические выражения.

Рассмотрим примеры записи условных операторов.

Закрепление материала

На доску проецируется слайд презентации, содержащий <Рисунок6>.

Задание№4

Дано ветвление (см. <Рисунок6>):

1) Назовите условие

2) Назовите действие, которое будет выполняться в случае Истинности условия; в случае Ложности условия.

3) Запишите условный оператор (записи ведутся на интерактивной доске и в тетрадях учащихся).

4) При каких значениях x выполняется действие y:= x-1? (x4)

Условия x>4 и x4 два взаимоисключающих условия в нашем случае

1 – Истинно 2 – Ложно

1 – Ложно 2 – Истинно

Во второй блок-схеме в качестве условия укажем x4

5) Заполните действия во второй блок-схеме (записи ведутся на интерактивной доске и в тетрадях учащихся).

6) Заполните условный оператор для второй блок-схемы (записи ведутся на интерактивной доске и в тетрадях учащихся).

Получили две записи одного и того же алгоритма ветвления.

Практическая работа

Выполнение практического задания.

На доску проецируется слайд презентации, содержащий <Рисунок7>

Карточка №1

Задание№5

Составьте программу вычисления значения переменной

= ; x, y – целые числа

Этапы работы:

Составление блок-схемы (см. <Рисунок7>)

(записи ведутся на интерактивной доске и в тетрадях учащихся)

Составление компьютерной модели (учащиеся работают за ПК)

На доску проецируется слайд презентации, содержащий <Рисунок8>

Компьютерный эксперимент (тестирование программы)(см. <Рисунок8>)

Анализ результатов компьютерного эксперимента

Самостоятельное выполнение практического задания.

На доску проецируется слайд презентации, содержащий <Рисунок9>, содержащий тест для программы.

Подведение итогов урока и задание на дом

Оценивание работы учащихся на уроке, оценивание практической работы.

Мы познакомились с условным оператором

Научились составлять программы для разветвляющихся алгоритмов

На следующем уроке мы продолжим изучения данной темы

Рассмотрим правила составления сложных условий, познакомимся с логическими операциями

Задание на дом:

Параграф 37, записи в тетради, решить задачу:

“Даны числа x и y. Вычислите число z, равное (x+y), если x y и (1-x+y) в противном случае”

Похожие публикации