Turbo Pascal. Разработка программ, содержащих оператор ветвления

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


Все познается через труд, через преодоление ошибок (собственных), через процесс решения задач. С.Окулов. “Основы программирования”

Изучение программирования и языков программирования, таких как Basic, Pascal, C++, Delphi и др. является неотъемлемой частью информатики. С помощью языков программирования можно создавать свои программы, решать нестандартные задачи, решить которые в стандартных пользовательских программах невозможно. Программирование вырабатывает у учащихся следующие развивающие функции: четкое логическое мышление, аккуратность и внимательность, и при этом развивает находчивость, изобретательность, фантазию и творческие способности. Недаром программирование, называют не только наукой, но и искусством.

Программирование – одна из самых традиционных тем в информатике. В течение всего периода преподавания информатики методика преподавания тем “Алгоритмика”, “Программирование” претерпела значительные изменения. Это связано с уменьшением количества уроков, отводимых на изучение этой темы в старших классах, но требования к уровню усвоения знаний и умений этого раздела программы по информатике нисколько не изменились, так как он остается основой фундаментальных знаний по предмету. Часто при изучение программирования целью становится - демонстрация языка на примерах простых программ с краткими комментариями. Времени на более глубокое изучение, на самостоятельное решение задач практически не остаётся. Но все - таки необходимо изыскать все возможности, чтобы преподавание темы “Программирование” оставалось на достаточном теоретическом и практическом уровне. Это возможно и за счет построения моделей в среде программирования при изучении темы “Моделирование”, и за счет внеклассных занятий по информатике - работы кружка “Основы программирования”.

Считаю наиболее целесообразным начинать изучение программирования с языка Паскаль. Язык Паскаль был создан в 1971 году Никлаусом Виртом как учебный язык. Основной принцип заложенный в нем – это поддержка структурной методики программирования. Большим плюсом при выборе языка программирования в пользу Паскаля, является и то, что русскоязычный Алгоритмический язык и Паскаль очень похожи, поэтому освоив первый, даже те учащиеся, которые испытывают затруднения при составлении программ, могут действовать “по образцу”.

Изучение базового курса информатики в нашей школе начинается с 8 класса, поэтому в календарное планирования в 8 кл. включены темы “Алгоритмика”, “Программирование”. За основу взят учебник С.М. Окулова “Основы программирования”. Данное учебное пособие позволяет построить занятия с максимальным использованием компьютера на занятиях, и при этом формируется определенный стиль мышления. Из нехватки времени алгоритмизацию, и язык программирования осваиваем параллельно.

При изучении данной темы в среднем звене возникают определенные трудности:

  • дети еще недостаточно подготовлены (отсутствует необходимая теоретическая подготовка детей по математике и физике и др.);
  • ученики считают, что информатику можно знать без темы “Программирование”, хотя значимость темы никто не отрицает;
  • ученики еще не сделали для себя выбор в профессиональной подготовке и не уверены, что занятия программированием им необходимы.

Больше внимания уделять программированию в старших классах заставляет и ЕГЭ. Экзамен по информатике в основном выбирают выпускники, ориентированные на получение высшего профессионального образования в сфере информационно-коммуникационных технологий. А что бы учащиеся имел отметку “4” или “5” ему необходимо сделать часть 2, которая включает задания по теме “Алгоритмика и программирование” и задания части 3, направленные на проверку сформированности важнейших умений записи и анализа алгоритмов, предусмотренных требованиями к обязательному уровню подготовки по информатике учащихся средних общеобразовательных учреждений. В этой части также проверяются умения на повышенном и высоком уровне сложности по теме “Технология программирования”.

Учитель должен помнить, что изучать программирование необходимо:

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

Тип урока: урок изучения новых знаний и их первичное закрепление.

Цели урока:

  1. Дидактическая: способствовать осознанию и осмыслению новой учебной информации;
  2. Образовательная:
  • сформировать представление о принципе работы условного материала
  • сформировать навыки программирования в среде TP
  1. Развивающая:
  • формирование ИКТ- компетентности;
  • развитие алгоритмического мышления.
  1. Воспитательная: способствовать формированию партнерских отношений в классе.

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

Структура урока:

  1. Организационный момент.
  2. Актуализация опорных знаний и умений.
  3. Мотивация. Сообщение темы цели и темы урока.
  4. Объяснение нового материала.
  5. Первичное закрепление нового материала
  6. Выполнение заданий.
  7. Рефлексия.
  8. Итог урока.

Ход урока

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

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

Читает задание

Какие числа относятся к типу

Integer
Real

  1. Исправь ошибки в программе

Program 2 pr;
Var b,s: real;
Begin
Writeln (Введите числа b и с)
Readln( b,c);
A=b+c;
Write ln ( ‘a=’,a);
End.

  1. Запиши на языке программирования следующее математическое выражение:

х2+2ху-у2

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

Sqrt(x)*3 – (a+2)/b

Ученики выполняют задания, ответ записывают в путевой лист.
  1. Program pr;
    Var a, b,s: real;
    Begin
    Writeln (‘Введите числа b и с’);
    Readln( b,c);
    A=b+c;
    Write ln ( ‘a=’,a);
    End.
  2. SQR(x) +2*x*y –SQR(y)
  3. 3*x2 -
Работа с интерактивной доской. Приложение 1 (Приложение можно взять у автора). Ученики выходят к доске, выполняют задание, делают пояснения. Проверка задание. Работа в паре. Меняются с соседом тетрадями. Оценивают работу.
  1. Мотивация целеполагание. Сообщение темы урока.
Показ презентации.  (Слайд 2), ученики дают подробные пояснения к ответам.
  1. Задает вопросы:
  • Для решения какой задачи составлена программа.
  • Приведите пример, когда программа не будет работать. Объясните почему?
  • Можем ли мы изменить программу, что бы она была верной для любых чисел.
  • Почему?
  1. Предлагает определить тему урока и сформулировать цель.
  1. Отвечают на вопросы.
  • Данная программа составлена для решения квадратного уравнения.
  • Программа не будет работать при D< 0.
  • Мы не знаем, как можно в Паскале реализовать условную функцию.
  1. Предлагают свои варианты темы урока:
  • Условная функция. Ветвление.
  • Формулируют цель: узнать как выглядит условный оператор, научиться решать задачи с ветвлением.

Записывают тему урока и цель в тетрадь.

  1. Первичное восприятие нового материала.
Показ презентации. Показ слайда 4. Знакомит учащихся с условным оператором

Условные операторы позволяют выбирать для выполнения те или иные части программы в зависимости от некоторых условий. Если, например, в программе используются вещественные переменные x и z, и на каком-то этапе решения задачи требуется вычислить z=max(x, y), то желаемый результат получается в результате выполнения либо оператора присваивания z:=x, либо оператора присваивания z:=y. Поскольку значения переменных x и y заранее неизвестны, а определяются в процессе вычислений, то в программе необходимо предусмотреть оба эти оператора присваивания. Однако на самом деле должен выполниться один из них. Поэтому в программе должно содержаться указание о том, в каком случае надо выбирать для исполнения тот или иной оператор присваивания.

Это указание естественно сформулировать с использованием отношения x>y. Если это отношение при текущих значениях x и y справедливо (принимает значение true), то для исполнения должен выбираться оператор z:=x; в противном случае для исполнения должен выбираться оператор z:=y (при x=y безразлично, какой оператор выполнять, так что выполнение оператора z:=y в этом случае даст правильный результат).

Для задания подобного рода разветвляющихся вычислительных процессов в языках программирования существуют условные операторы. Рассмотрим полный условный оператор Паскаля: If b then S1 else S2;

Здесь if (если), then (то) и else (иначе) являются служебными словами, В – логическое выражение, а S1 и S2 – операторы.

Посмотрите на слайд. Программа для решения какой задачи составлена? Подчеркните условный оператор.

Ученики слушают, делают записи в тетрадях.
Показ слайда 5.

При формулировании алгоритмов весьма типичной является такая ситуация, когда на определенном этапе вычислительного процесса какие-либо действия надо выполнить только при выполнении некоторого условия, а если это условие не выполняется, то на данном этапе вообще не нужно выполнять никаких действий. Простейшим примером такой ситуации является замена текущего значения переменной х на абсолютную величину этого значения: если x<0, то необходимо выполнить оператор присваивания x:= - x; если же x>=0, то текущее значение х должно остаться без изменений, т.е. на данном этапе вообще не надо выполнять каких-либо действий.

В подобных ситуациях удобна сокращенная форма записи условного оператора в Паскале: if B then S;

  • Отвечают на вопросы учителя.
  • На экран выводится наибольшее из двух чисел.
  • Дают пояснения к программе на слайде.
  1. Первичное осознание и осмысление нового материала

Показ презентации. Показ слайда

Выполните задания:
  1. Запишите условный оператор, в котором значение переменной с вычисляется по формуле: a+b, если а нечетное и a*b, если а четное.
  2. Запишите условный оператор, который вычисляет значение функции:

  1. Решите задачу. Вывести на экран наибольшее из трех чисел.
  • Составляют программу
  • Проверяют, дают пояснения.
  1. Применение полученных знаний.
Слайд 10.

Работа с интерактивной доской. Приложение 2. (Приложение можно взять у автора)

Учитель предлагает задания.
  1. В начале урока мы рассматривали программу для решения квадратного уравнения. Можем ли теперь её решить теперь?
  2. Какое будет значение будет принимать переменная х?

A:=5; b:=4; c:=3;
If a>b then x:=a+b
Else begin
A:=b+c; x:=a-3*b;
End.

A:=9; b:=8; c:=2;
If (a>b) and (b>c) then x:=2*a+b+c
Else begin
A:=b+c; x:=a-3*b;
End.

A:=1; b:=4; c:=8;
If (a<=b) or (a>c) then x:=5*a-b
Else
x:=4*a*b;
End.

a:=7; b:=3; c:=6;
If (a<b) and (a>c) then x:=4*a-b*a
Else x:=a-b;
End.

a:=53; b:=14;
If a<=b then x:=a+b
Else x:=2*a-4*b;
End.

a:=3; b:=4;
If a>b then x:=a*b else x:=a;
End.

Да. Теперь мы знаем, как можно записать условный оператор на Паскале.

Составляют программу.

  1. Рефлексия
Приложение (анкета) Дает пояснения к заполнению анкеты. 

Заполняют анкету.

  1. Итоги урока
  1. Домашнее задание
Слайд 11.
  • Напишите фрагмент программы, подсчитывающих сумму только положительных из трёх данных чисел.
  • Дано трехзначное число. Напишите программу определения, является ли оно полидромом (“перевертышем”)
Записывают домашнее задание.

Приложение

Литература.

  1. Окулов. С.М., Основы программирования. – 3-е изд. – M: БИНОМ. Лаборатория знаний, 2006.
  2. Задачник – практикум по информатике. Учебное пособие для средней школы. Под. Ред. И. Семакина, Е. Хенера. – Лаборатория Базовых Знаний., 2004
  3. Семакин И.Г., Залогова Л.А., Русаков С.В., Шестакова Л.В., Информатика. Базовый курс для 7 -9 кл. – М. Лаборатория Базовых Знаний, 2004.