- Преподавателю
- Информатика
- Урок по информатике
Урок по информатике
Раздел | Информатика |
Класс | - |
Тип | Конспекты |
Автор | Шувалова Р.В. |
Дата | 21.08.2014 |
Формат | doc |
Изображения | Есть |
УРОК ПО ИНФОРМАТИКЕ И ИКТ.
«Циклы на языке программирования Pascal»
ЦЕЛИ УРОКА:
Образовательные: познакомить с понятием цикла, видами циклических алгоритмов, сформировать умения пользоваться операторами цикла, сформировать умение решать задачи с использованием цикла.
Развивающие: развивать познавательный интерес, творческую активность учащихся; развивать логическое мышление.
Воспитательные: воспитывать интерес к предмету, аккуратность, внимательность, дисциплинированность.
Тип урока: изучение и первичное закрепление знаний.
Класс: 10
Оборудование: ПК, программное обеспечение - среда программирования Turbo Pascal, проектор, экран, презентация <Циклы>, карточки
Виды работы: беседа, работа с опорным конспектом, работа за ПК.
Этапы урока:
-
Организационный момент.
-
Актуализация знаний:
-
Постановка цели урока.
-
Изучение нового материала.
-
Первичное закрепление изученного.
-
Гимнастика для глаз.
-
Практическая работа на ПК
-
Подведение итогов урока.
-
Постановка домашнего задания.
Определите тип алгоритма:
Вспомним книгу Марка Твена «Приключения Тома Сойера».
Том Сойер провинился, тетя Полли наказала его и заставила красить забор.
Как он это делал? Составим алгоритм.
-
Том подошел к забору.
-
Поставил ведро с краской слева.
-
Взял кисть в правую руку.
-
Обмакнул кисть в ведро с краской.
-
Провел кистью сверху вниз.
-
Взял ведро левой рукой.
-
Передвинулся на один шаг вправо.
-
Поставил ведро.
-
Обмакнул кисть в ведро с краской…
-
…
Действия 4-8 повторять до тех пор, пока не закончится покраска забора.
Как называется такой алгоритм? Циклическим.
За хороший ответ ученикам раздаются карточки-отлички.
Тема урока: Циклы на языке программирования Паскаль.
Виды циклических алгоритмов
Презентация Циклы на Паскале.pps
Цикл - это многократно выполняемая последовательность операторов (команд)
-
Цикл с предусловием (while…do)
While <условие> do
begin
оператор 1;
оператор 2;
………….;
оператор n;
end;
Оператор While…do обеспечивает выполнение цикла, следующего за словом do до тех пор, пока условие имеет значение true (истина). Описание конструкции while…do на литературном языке можно прочитать примерно так: «До тех пор пока верно условие, выполнять следующие действия: …».
В примере с Томом условие может быть сформулировано так: «Забор не покрашен?».
В некоторых арифметических задачах условие может быть записано (Х<5) or (Х=5)
-
Цикл с постусловием (repeat…until…)
Repeat
оператор 1;
оператор 2;
………….;
оператор n;
until <условие>;
Оператор Repeat…until… обеспечивает выполнение цикла, до тех пор, пока условие следующего за словом until имеет значение false «ложь». Описание конструкции Repeat…until… можно прочитать примерно так: «Выполнять тело цикла до тех пор, пока условие не станет верным». В операторе Repeat…until тело цикла заключено между двумя частями, поэтому для организации тела цикла из нескольких операторов операторных скобок begin…end не требуется. Очевидно, что параметр, используемый в условии повторений тела цикла, должен меняться внутри самого цикла, иначе произойдет «зацикливание».
В примере с Томом условие может быть сформулировано так: «Забор покрашен?».
В некоторых арифметических задачах условие может быть записано Х>5
В предложенной программе найти синтаксические ошибки
Задача 1
Неверно! ((
Верно!!! ))
Program summa;
var a,s:interger;
BEGIN
a:=1; {Первое слагаемое}
s:=0 {Значение суммы}
while (a<5) or (a=5 do
Begin
s:=s+a; {Сумма увеличивается}
a:=a+1; {Слагаемое увеличивается на 1}
End
writelen('S= ',s);
readln
END.
Program summa;
var a,s:integer;
BEGIN
a:=1; {Первое слагаемое}
s:=0; {Значение суммы}
while (a<5) or (a=5) do
Begin
s:=s+a; {Сумма увеличивается}
a:=a+1; {Слагаемое увеличивается на 1}
End;
writeln('S= ',s);
readln
END.
Можно использовать желтые карточки - подсказки для учеников.
За правильно выполненное задание раздаются карточки-отлички.
Можете ли вы сразу сказать, что делает эта программа? А найти результат выполнения этой программы?
Какую задачу пытался решить программист?
Найти сумму пяти первых чисел.
За правильный ответ задание раздаются карточки-отлички.
Показать блок-схему «Сумма» и программу VERNO.PAS
Физкультминутка.
Презентация «Гимнастика для глаз».
Задача 2 (из Остера)
Когда Василисе Премудрой исполнилось 18 лет, Кощей Бессмертный решил взять ее замуж. Василиса спросила, сколько у Кощея сундуков с золотом. Кощеи сказал, что у него 27360 сундуков полных, и каждый год прибавляется еще по 33 сундука. Василиса обещала выйти за Кощея тогда, когда у него будет 30000 сундуков, полных золота. Сколько лет будет невесте Кощея в день свадьбы?
Program KOSHEY_vasilisa;
var v,s:integer;
BEGIN
v:=18; {Возраст Василисы}
s:=27360; {Начальный капитал Кощея}
while s<30000 do
Begin
s:=s+33; {Каждый год Кощей становится богаче}
v:=v+1; {Каждый год Ваcилиса становится старше}
End;
writeln('Василисе ',v,' лет');
readln
END.
Показать блок-схему «Василиса While»
За правильно выполненное задание раздаются карточки-отлички.
Задача 3.
Решить задачу №2 (Про Василису и Кощея), используя цикл REPEAT…UNTIL
Program KOSHEY_vasilisa;
var v,s:integer;
BEGIN
v:=18; {Возраст Василисы }
s:=27360; {Начальный капитал Кощея}
repeat
s:=s+33; {Каждый год Кощей становится богаче}
v:=v+1; {Каждый год Ваcилиса становится старше}
until (s>30000) or (s=30000);
writeln('Василисе',v,' лет');
readln
END.
Показать блок-схему «Василиса repeat»
За правильно выполненное задание раздаются карточки-отлички.
**)Решить задачу про Кощея и Василису, используя линейный алгоритм.
Решение: (30000-27360)/33+18=80+18=98 лет.
Вопросы
Презентация Боулинг: «Циклы на Паскале»
Ответы к презентации:
-
1
2
3
4
5
10
Ни разу
зацикливание
20
11
Закрепление изученного на компьютере.
Первый уровень сложности.
Задача 4.
Задача Гаусса
Однажды учитель дал задачу: найти сумму всех целых чисел от единицы до ста. По заведенному порядку аспидные доски с решением задач складывались на середине стола стопкой, а потом стопка переворачивалась, и учитель проверял задания.
Едва только учитель кончил диктовать, как послышался голос Гаусса: - А я уже решил!
При этом свою доску с решением он положил на середину стола.
Долго решали ученики задачу. Тем временам учитель прохаживался между партами и не без ехидства сделал Гауссу замечание:
- Карл, ты, наверное, ошибся! Нельзя в столь короткое время решить столь трудную задачу.
Уверенный в правильности своего решения, Гаусс смело ответил учителю:
- Извините, господин учитель! Я правильно решил задачу.
- Посмотрим, насколько правильно. А если неправильно? - И он угрожающе хлопнул хлыстом по своей ноге...
Каково же было изумление учителя, когда при проверке оказалось, что Гаусс решил задачу совершенно правильно, причем само решение отличалось чрезвычайной простотой и остроумием.
- Карл, расскажи классу, как ты решил задачу,-обратился к нему учитель.
Решить задачу Гаусса, используя циклический и линейный алгоритм.
1 вариант
2 вариант
Program gauss_summa;
var a,s,n:integer;
BEGIN
n:=100;
a:=1; {Первое слагаемое}
s:=0; {Значение суммы}
while (a
Begin
s:=s+a; {Сумма увеличивается}
a:=a+1; {Слагаемое увеличивается на 1}
End;
writeln('S= ',s);
readln
END.
Program gauss_summa;
var a,s,n:integer;
BEGIN
writeln('Введи n');
readln(n);
a:=1; {Первое слагаемое}
s:=0; {Значение суммы}
while (a
Begin
s:=s+a; {Сумма увеличивается}
a:=a+1; {Слагаемое увеличивается на 1}
End;
writeln('S= ',s);
readln
END.
Комментарий к решению при помощи линейного алгоритма:
1+2+3+4+5+…+96+97+98+99+100=(1+100)+(2+99)+(3+98)+(4+97)+…+(50+51)=101*50=5050
Задача 5.
Найти среднее арифметическое N первых натуральных чисел.
Задача 6.
Составить на Паскале программу для вычисления суммы ряда:
Число N вводится с клавиатуры.
Протестировать программу для N=1, N=2, N=4, N=6. Правильность ответов проверить с помощью калькулятора.
Второй уровень сложности.
Задача 7.
Написать на Паскале программу, которая запрашивает с клавиатуры N произвольных целых чисел и ищет их сумму. Число N вводится с клавиатуры. Разработать для созданной программы не менее трёх тестов и проверить на них правильность работы алгоритма.
Задача 8.
Одноклеточная амёба каждые три часа делится на 2 клетки. Определить, сколько амёб будет через 3, 6, 9, 12 и 24 часа.
Задача 9.
Дано натуральное число N и действительное число x. Вычислить сумму ряда:
sin x + sin 2x+sin 3x+…sin N*X
Протестировать программу для x=1.5 и N=3. Проверить правильность ответа на калькуляторе.
Третий уровень сложности.
Задача 10.
Написать программу для вычисления N-ой степени числа a (aN). Протестировать программу для а) a=3 и N=4, б) a=2 и N=5.
Задача11.
Дано натуральное число N. Вычислить сумму ряда:
S=1!+2!+3!+…+N! (N>1)
Протестировать программу для N=3 и N=5
Задача12.
Разработать схему алгоритма для вычисления N! (факториал числа N). Факториал вычисляется по формуле:
N!!=
Операцию вычисления факториала использовать нельзя!
Протестировать алгоритм для N=0, N=2 N=4.
Итоги урока и Д/З.
-
Что нового вы узнали?
-
Какие знания вам помогли усвоить материал урока?
-
Что на ваш взгляд вам удалось освоить лучше, а что нет?
-
Над чем вам необходимо поработать?
-
Оцените свою работу на уроке.
Д/З учить конспект. Задача в конспекте.
Используемая литература:
-
В.В. Фаронов TurboPascal 7.0. Начальный курс. М.: «Нолидж», 1997.
-
Информатика. Базовый курс. 7-9 классы / И. Г. Семакин, Л. А. Залогова, С. В. Русаков, Л. В. Шестакова. - М.: БИНОМ. Лаборатория знаний, 2004
-
Информатика. Задачник-практикум в 2т / Под ред. И. Г. Семакина, Е. К. Хеннера. - М.: БИНОМ. Лаборатория знаний, 2004.
-
Задачник по математике Автор: Григорий Остер Издательство: ООО Издательство Астрель Год: 2001
Используемые Интернет - ресурсы:
-
school-collection.edu.ru/catalog/search/