Программирование разветвляющихся алгоритмов начала программирования. Программирование разветвляющихся алгоритмов Задание на дом

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

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

Идея урока:

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

Цель урока:

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

Задачи:

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

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

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

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

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

    Предметные

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

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

    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).


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


>"); readln (a, b); write ("Введите x>>"); readln (x); if (x>=a) and (x=a) and (x" title="Условный оператор program n_9; var x, a, b: real; begin writeln ("Определение принадлежности точки отрезку"); write ("Введите а, b>>"); readln (a, b); write ("Введите x>>"); readln (x); if (x>=a) and (x=a) and (x" class="link_thumb"> 4 Условный оператор program n_9; var x, a, b: real; begin writeln ("Определение принадлежности точки отрезку"); write ("Введите а, b>>"); readln (a, b); write ("Введите x>>"); readln (x); if (x>=a) and (x=a) and (x >"); readln (a, b); write ("Введите x>>"); readln (x); if (x>=a) and (x=a) and (x"> >"); readln (a, b); write ("Введите x>>"); readln (x); if (x>=a) and (x=a) and (x"> >"); readln (a, b); write ("Введите x>>"); readln (x); if (x>=a) and (x=a) and (x" title="Условный оператор program n_9; var x, a, b: real; begin writeln ("Определение принадлежности точки отрезку"); write ("Введите а, b>>"); readln (a, b); write ("Введите x>>"); readln (x); if (x>=a) and (x=a) and (x">
>"); readln (a, b); write ("Введите x>>"); readln (x); if (x>=a) and (x=a) and (x" title="Условный оператор program n_9; var x, a, b: real; begin writeln ("Определение принадлежности точки отрезку"); write ("Введите а, b>>"); readln (a, b); write ("Введите x>>"); readln (x); if (x>=a) and (x=a) and (x">


>"); readln (a, b, c); y:=a; if (b>y) then y:=b; if (c>y) then y:=c; writeln ("y=", y) end. " title="Сокращённая форма условного оператора 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. " class="link_thumb"> 5 Сокращённая форма условного оператора 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 данет данет >"); readln (a, b, c); y:=a; if (b>y) then y:=b; if (c>y) then y:=c; writeln ("y=", y) end. "> >"); 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 данет данет"> >"); readln (a, b, c); y:=a; if (b>y) then y:=b; if (c>y) then y:=c; writeln ("y=", y) end. " title="Сокращённая форма условного оператора 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. ">
>"); readln (a, b, c); y:=a; if (b>y) then y:=b; if (c>y) then y:=c; writeln ("y=", y) end. " title="Сокращённая форма условного оператора 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. ">


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


0 да Начало Введите коэффициенты a, b, c d:=b*b-4*a*c d 0 да Начало Введите коэффициенты a, b, c d:=b*b-4*a*c d 7 Блок-схема решения КВУР Конец Вывод «Корни уравнения: х1=», х1, «х2=», х2 х1:=(-b+sqrt(d))/2/a d>0 да Начало Введите коэффициенты a, b, c d:=b*b-4*a*c d 0 да Начало Введите коэффициенты a, b, c d:=b*b-4*a*c d 0 да Начало Введите коэффициенты a, b, c d:=b*b-4*a*c d 0 да Начало Введите коэффициенты a, b, c d:=b*b-4*a*c d 0 да Начало Введите коэффициенты a, b, c d:=b*b-4*a*c d title="Блок-схема решения КВУР Конец Вывод «Корни уравнения: х1=», х1, «х2=», х2 х1:=(-b+sqrt(d))/2/a d>0 да Начало Введите коэффициенты a, b, c d:=b*b-4*a*c d


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 d0 then end. >"); readln (a, b, c); d:=b*b-4*a*c; if d0 then end.">




>"); readln (a, b); if a0 then begin x:=-b/a; writeln ("Корень уравнения x=", x:9:3) end else if b0 then wri" title="Решение линейного уравнения 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 wri" class="link_thumb"> 10 Решение линейного уравнения 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. Корней нет Список данных a, b, x - вещ a, b a0 x:=-b/a b0 Любое число нет да нет >"); readln (a, b); if a0 then begin x:=-b/a; writeln ("Корень уравнения x=", x:9:3) end else if b0 then wri"> >"); 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. Корней нет Список данных a, b, x - вещ a, b a0 x:=-b/a b0 Любое число нет да нет"> >"); readln (a, b); if a0 then begin x:=-b/a; writeln ("Корень уравнения x=", x:9:3) end else if b0 then wri" title="Решение линейного уравнения 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 wri">
>"); readln (a, b); if a0 then begin x:=-b/a; writeln ("Корень уравнения x=", x:9:3) end else if b0 then wri" title="Решение линейного уравнения 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 wri">


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


>3, 4 Первая точк" title="Вопросы и задания Как на языке Паскаль записывается полное и неполное ветвление? Является ли условным оператором последовательность символов? а) if x=y then x:=0; y:=0 else write (z) в) if xb then d:=2; if a1, 2 Координаты 2-й точки>>3, 4 Первая точк" class="link_thumb"> 12 Вопросы и задания Как на языке Паскаль записывается полное и неполное ветвление? Является ли условным оператором последовательность символов? а) if x=y then x:=0; y:=0 else write (z) в) if xb then d:=2; if a1, 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, 1>>-1 5 xa, ya >>1 2 Точка лежит под прямой k, 1>>-1 5 xa, ya >>1 10 Точка лежит над прямой k, 1>>-1 5 xa, ya >>1 4 Точка лежит на прямой Напишите программу, определяющую, лежит ли точка А(ха, ya): а) на прямой y = kx + 1, над ней или под ней; б) на окружности 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 a5 then c:=2 else c:=3 Какое значение имеет переменная а, если в результате выполнения условного оператора переменной с присваивается значение 3? Пример входных данныхПример выходных данных -5y = - 1 0y = 0 5y = 1 Напишите программу, вычисляющую значение функции: -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). Ответ пользователя проверяется и комментируется. >3, 4 Первая точк"> >3, 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Разносторонний Даны три натуральных числа. Напишите программу, определяющую, существует ли треугольник с такими длинами сторон. Если такой треугольник существует, то определите его тип (равносторонний, равнобедренный, разносторонний). Имеются данные о количестве полных лет трёх призёров спартакиады. Напишите программу, выбирающую и выводящую возраст самого младшего призёра. Пример входных данныхПример выходных данных k, 1>>-1 5 xa, ya >>1 2 Точка лежит под прямой k, 1>>-1 5 xa, ya >>1 10 Точка лежит над прямой k, 1>>-1 5 xa, ya >>1 4 Точка лежит на прямой Напишите программу, определяющую, лежит ли точка А(ха, ya): а) на прямой y = kx + 1, над ней или под ней; б) на окружности 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 a5 then c:=2 else c:=3 Какое значение имеет переменная а, если в результате выполнения условного оператора переменной с присваивается значение 3? Пример входных данныхПример выходных данных -5y = - 1 0y = 0 5y = 1 Напишите программу, вычисляющую значение функции: -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). Ответ пользователя проверяется и комментируется."> >3, 4 Первая точк" title="Вопросы и задания Как на языке Паскаль записывается полное и неполное ветвление? Является ли условным оператором последовательность символов? а) if x=y then x:=0; y:=0 else write (z) в) if xb then d:=2; if a1, 2 Координаты 2-й точки>>3, 4 Первая точк"> title="Вопросы и задания Как на языке Паскаль записывается полное и неполное ветвление? Является ли условным оператором последовательность символов? а) if x=y then x:=0; y:=0 else write (z) в) if xb then d:=2; if a1, 2 Координаты 2-й точки>>3, 4 Первая точк">



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

Класс: 9

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

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

Цели урока:

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

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

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

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

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

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

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

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

  • Операционная система Windows ХР
  • Система программирования Free Pascal
  • Программное обеспечение интерактивной доски 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) в противном случае”