Циклические алгоритмы с предусловием

Автор работы: Пользователь скрыл имя, 10 Апреля 2014 в 16:20, лекция

Краткое описание

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

Содержание

Организационный момент 1 минута
Изучение нового материала 20 минут
Закрепление полученных знаний 15 минут
Контроль и коррекция 6 минут
Подведение итогов 2 минуты
Домашнее задание 1 минута

Вложенные файлы: 1 файл

Конспект 2 .docx

— 190.48 Кб (Скачать файл)

Министерство образования и науки Российской Федерации 
Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования


"Петрозаводский государственный  университет"

Математический факультет

Кафедра

Теории и методики обучения математике и ИКТ в образовании

 

 

 

Конспект урока по информатике

Тема: «Циклические алгоритмы с предусловием»

Класс: 9 «а»

 

 

 

 

 

Студентка: Вдовина Д.С. 
551 группа

Учитель: Рукина Л.Ф.

Методист: Лисовская Т.А.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Петрозаводск 
2013

Школа: МОУ «СОШ №2 г. Кондопоги»

 

Тема урока: Циклические алгоритмы с предусловием

Тип урока: изучение нового материала

Место урока в курсе 8 урок темы «Программное управление работой компьютера»

Возраст учащихся 15-16 лет

Цели урока:

  1. Образовательная:

 Научиться программировать циклы с предусловием на Паскале

  1. Развивающая:

Развитие логического и алгоритмического мышления учащихся.

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

  1. Воспитательная:

Воспитание культуры работы на ПК.

 

Формы работы учащихся: фронтальная и индивидуальная работа

 

План урока:

  1. Организационный момент   1 минута
  2. Изучение нового материала  20 минут
  3. Закрепление полученных знаний  15 минут
  4. Контроль и коррекция   6 минут
  5. Подведение итогов   2 минуты
  6. Домашнее задание   1 минута

 

 

Техническая база кабинета и программное обеспечение, используемое на уроке:

Проектор, презентация, компьютеры с установленным пакетом Turbo Pascal 7.0.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ход урока:

 

Этап урока

Деятельность

учителя

учеников

1

Организационный момент, введение в тему урока

Приветствие, фиксация отсутствующих, проверка подготовленности учащихся к уроку.

 

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

Приветствуют учителя.

 

Учащиеся записывают тему урока и формулируют цели урока.

2

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

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

Работа по решению таких задач состоит из нескольких этапов, последовательность которых называется технологией решения задачи на компьютере:

  1. Постановка задачи (что дано и что требуется найти)
  2. Математическая формализация (перевод на язык математических формул, уравнений)
  3. Построение алгоритма

/задаётся вопрос:

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

 

 

 

 

 

 

 

 

 

 

Какие способы описания алгоритмов вы знаете?/

  1. Составление программы на языке программирования
  2. Отладка и тестирование программы
  3. Проведение расчётов и анализ полученных результатов.

 

Для примера решим следующую задачу:

Дано 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. 

 

 

 

 

 

Критерии оценивания:

Оценка «отлично» ставится в том случае, если ученик полностью справился с заданием( допускаются недочёты по оформлению блок-схемы, выводу расчётной формулы).

«хорошо» - сделана программа на Паскале, но нет алгоритма или блок-схемы

«удовлетворительно»-сделана только блок схема или алгоритм, или написана только половина программы на Паскале.

«неудовлетворительно»- написаны лишь основные блоки программы, без тела цикла в блок-схеме или программе.

 


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