Автор работы: Пользователь скрыл имя, 10 Апреля 2014 в 16:20, лекция
Учащиеся записывают тему урока и формулируют цели урока.
Изучение нового материала
На прошлых уроках вы научились составлять линейные и ветвящиеся программы. Сегодня мы научимся программировать циклы. Часто задача, которую нужно решить, сформулирована не математическим языком. Для решения такой задачи на компьютере следует привести её к форме математической задачи, а потом программировать.
Организационный момент 1 минута
Изучение нового материала 20 минут
Закрепление полученных знаний 15 минут
Контроль и коррекция 6 минут
Подведение итогов 2 минуты
Домашнее задание 1 минута
Министерство образования и науки Российской
Федерации
Федеральное государственное бюджетное
образовательное учреждение высшего профессионального
образования
"Петрозаводский
Математический факультет
Кафедра
Теории и методики обучения математике и ИКТ в образовании
Конспект урока по информатике
Тема: «Циклические алгоритмы с предусловием»
Класс: 9 «а»
Студентка: Вдовина Д.С.
551 группа
Учитель: Рукина Л.Ф.
Методист: Лисовская Т.А.
Петрозаводск
2013
Школа: МОУ «СОШ №2 г. Кондопоги»
Тема урока: Циклические алгоритмы с предусловием
Тип урока: изучение нового материала
Место урока в курсе 8 урок темы «Программное управление работой компьютера»
Возраст учащихся 15-16 лет
Цели урока:
Научиться программировать циклы с предусловием на Паскале
Развитие логического и алгоритмического мышления учащихся.
Развитие коммуникативных навыков и интереса к предмету.
Воспитание культуры работы на ПК.
Формы работы учащихся: фронтальная и индивидуальная работа
План урока:
Техническая база кабинета и программное обеспечение, используемое на уроке:
Проектор, презентация, компьютеры с установленным пакетом Turbo Pascal 7.0.
Ход урока:
№ |
Этап урока |
Деятельность | |
учителя |
учеников | ||
1 |
Организационный момент, введение в тему урока |
Приветствие, фиксация отсутствующих, проверка подготовленности учащихся к уроку.
Сегодня на уроке мы рассмотрим, как использовать цикл с предусловием. Запишите тему «Циклические алгоритмы с предусловием». |
Приветствуют учителя.
Учащиеся записывают тему урока и формулируют цели урока. |
2 |
Изучение нового материала |
На прошлых уроках вы научились составлять линейные и ветвящиеся программы. Сегодня мы научимся программировать циклы. Часто задача, которую нужно решить, сформулирована не математическим языком. Для решения такой задачи на компьютере следует привести её к форме математической задачи, а потом программировать. Работа по решению таких задач состоит из нескольких этапов, последовательность которых называется технологией решения задачи на компьютере:
/задаётся вопрос: Что такое алгоритм?
Какие способы описания алгоритмов вы знаете?/
Для примера решим следующую задачу: Дано N кубиков, на которых написаны разные буквы. Сколько различных N-буквенных слов можно составить из этих кубиков (слова не обязательно должны иметь смысл)?
Распишем задачу, согласно этапам, которые мы записали. Первый пункт- постановка задачи. Что дано и что нужно найти?( что нужно найти обозначьте любой буквой) /запись на доске: Дано: N Найти: M /
На этапе математической формализации получим формулу для подсчёта количества слов. Для этого сначала рассмотрим несколько конкретных примеров. Например, имеются два кубика с буквами А и Б. Сколько слов можно из них составить? Сколько слов можно составить из трёх букв А,Б,В?
Сколько будет слов, если добавить ещё одну букву?
Ясно, что из 5 букв слов станет в 5 раз больше и т.д… Подобные задачи решает раздел математики, который называется «комбинаторика». Количество различных комбинаций из N предметов, получаемых изменением их порядка, называется числом перестановок. Это число выражается функцией N, которая называется факториалом и записывается как N! Читается «N факториал». Вычисляется факториал, как произведение последовательных натуральных чисел от 1 до N: 1!=1 2!=1*2 3!=1*2*3 … Теперь вернёмся к условию задачи. Если количество кубиков –N, а количество слов из них-M, то как будет выглядеть формула для подсчёта слов?
На третьем этапе мы будем строить алгоритм. Поскольку алгоритм не должен зависеть от значения количества кубиков-N,-то его нельзя сделать линейным. (для разных N надо выполнить разное количество умножений). Алгоритм решения данной задачи будет циклическим. Где вы уже встречали циклические алгоритмы?
Дайте определение цикла.
Вы знаете такую алгоритмическую структуру, как «цикл с предусловием». Составьте блок-схему для решения данной задачи. И запишите алгоритм словами. /один ученик выходит к доске/
Итак, мы подошли к четвёртому этапу - составление программы. Чтобы это сделать, нужно научиться программировать циклы в Паскале. Основной циклической структурой является «цикл с предусловием» или, иначе, «цикл-пока». С помощью этой структуры можно построить любой циклический алгоритм. Оператор цикла с предусловием в Паскале имеет следующий формат:
While <условие> do<оператор>;
Оператор, стоящий после слова do, называется телом цикла. Тело цикла может быть простым или составным оператором. Если в теле цикла используется последовательность операторов, то между ней следует поставить служебные слова begin и end.
Теперь, опираясь на алгоритм и блок-схему, запрограммируем решение нашей задачи на Паскале, организуя диалог.
Для начала вспомним с каких слов начинается программа на Паскале, как она правильно записывается, какой тип переменных нам нужен и почему. Какие начальные данные нам даны?
/запись на доске, после ответа учеников: Program words; Var M,N,R: integer; Begin Write(‘введите число кубиков’); Readln(N); F:=1; R:=1; While R<=N do begin F:=F*R; R:=R+1; End; Write(‘Из’ ,N, ‘кубиков можно составить’,M,’слов’); END.
После того, как программа составлена нужно произвести её отладку и тестирование. То есть испытать работу программы и исправить ошибки. Проверка правильности производится с помощью тестов. Тест - конкретный вариант значений исходных данных, для которого известен ожидаемый результат. Шестой этап-проведение
Сейчас, пожалуйста, наберите нашу программу на компьютерах и посмотрите правильность её работы. Протестируёте задачу на число N=6. Должен получиться ответ 720. |
(Ведут краткую запись.)
Алгоритм- это последовательность команд, предназначенная исполнителю, в результате выполнения которой он должен решить поставленную задачу
блок-схемы и алгоритмический язык.
Записывают в тетрадь задачу и разбирают её по пунктам)
Дано количество кубиков- N, а найти нужно количество слов, которое можно составить из этих кубиков-M.
2 слова – АБ и БА.
АБВ, АВБ, БАВ, БВА, ВАБ, ВБА- 6 слов ( в 3 раза больше) В 4 раза больше, то есть 24 слова.
M=N!
В графическом исполнителе.
Цикл-это команда исполнителю многократно повторять определённую последовательность действий (команд).
Алг СЛОВА Цел M, N, R Нач Ввод N M:=1 R:=1 Пока R<=N, повторять Нц M:=M*R R:=R+1 Кц Вывод M кон
Заголовок программы начинается со слова Program, далее следует имя программы. Раздел переменных var, в котором опишем переменные вещественного типа integer, так как количество кубиков не может быть дробным числом, начало программы отмечается служебным словом begin, заканчивается словом end с точкой. После каждого оператора ставится « ;». Начальные данные-количество кубиков.
( ученики пересаживаются за компьютеры и выполняют задание). |
3 |
Закрепление новых знаний |
Решите самостоятельно задачу: Вычислить сумму натурального ряда чисел от 1 до N. Запишите в тетради что дано, что нужно найти, постройте блок-схему или запишите алгоритм. Решите задачу на Паскале. Протестируйте для N=4.
/после решения задачи проверить её решение с классом; для более сильных учеников приготовить дополнительную задачу на карточке/ |
Запись учеников в тетрадях: 1.Дано: N ( конечное число ряда) Найти: S (сумма ряда). 2. Алг Ряд Цел N,S,i нач ввод N i:= 1 нц пока i <= N S:= S+i i:= i+1 кц вывод S кон
Решение на Паскале: Program Ryad; Var N,S,i:integer; Begin Write (‘N=’); Readln(N); S:=0; i:=1; While i<=N do Begin S:=S+i; i:=i+1; End; Writeln(‘сумма ряда=’,S); End.
|
4 |
Контроль и коррекция |
Устный опрос основных идей решения, проверка алгоритма. В случае неверного ответа попросить решить задачу письменно на конкретном примере, ещё раз вывести нужную формулу и найти ошибку в своём решении. |
|
5 |
Подведение итогов |
Какую алгоритмическую структуру мы сегодня изучили?
Какими служебными словами программируется этот цикл?
Что называется тестом?
|
Цикл с предусловием.
While, do.
конкретный вариант значений исходных данных, для которого известен ожидаемый результат. |
6 |
Домашнее задание |
Решить задачу: Начав тренировки, спортсмен в первый день пробежал 10 км. Каждый день он увеличивал дневную норму на 10 % нормы предыдущего дня. Какой суммарный путь пробежит спортсмен за 7 дней? Составьте блок схему и решите задачу на Паскале. |
Список использованной литературы: учебник «Информатика и ИКТ» 9 класс. Автор Семакин И. Г. и др.
Карточка с дополнительной задачей и решение домашнего задания:
Карточка:
Дано целое число x и натуральное n. Составьте алгоритм вычисления x в n степени. Напишите программу на паскале.
Решение:
X-данное число
N-степень числа
Rez- результат возведения в степень
Нач
Ввод X,N
Rez=1
нц
Пока N>0
Rez=Rez*x
N=N-1
Кц
Вывод Rez
Кон
Program Step;
Var N,X,Rez: integer;
Begin
Rez:=1;
Write(‘Введите X и N’);Readln(X,N);
While N>0 do
Begin
Rez:=Rez*X;
N:=N-1;
End;
Write(‘X в степени N=’, Rez);
END.
Домашнее задание:
Задача:
Начав тренировки, спортсмен в первый день пробежал 10 км. Каждый день он увеличивал дневную норму на 10 % нормы предыдущего дня. Какой суммарный путь пробежит спортсмен за 7 дней?
Решение:
program Pyt;
var
norma, sum: real;
den:
integer;
begin
norma:=10;
sum:=10;
den:=2;
while
den<=7 do begin
norma:=0.1*norma;
sum:=vsego+sum;
den:=den+1
end;
writeln(суммарный
путь=',sum)
end.
Критерии оценивания:
Оценка «отлично» ставится в том случае, если ученик полностью справился с заданием( допускаются недочёты по оформлению блок-схемы, выводу расчётной формулы).
«хорошо» - сделана программа на Паскале, но нет алгоритма или блок-схемы
«удовлетворительно»-сделана только блок схема или алгоритм, или написана только половина программы на Паскале.
«неудовлетворительно»- написаны лишь основные блоки программы, без тела цикла в блок-схеме или программе.