Уроки по циклам (программирование на Pascal, тематическое планирование ближе к Босовой Л. ). Урок №3 Кратные значения. Работа с цифрами числа. НОД. Практическая работа
Уроки по циклам (программирование на Pascal, тематическое планирование ближе к Босовой Л. ). Урок №3 Кратные значения. Работа с цифрами числа. НОД. Практическая работа
План 3-го урока:
1) Организационный момент (проверка домашнего задания – можно собрать карточки, …) (2 м)
2) Актуализация знаний обучающихся. (5 м)
3) Изучение нового материала. (10 м. )
4) Практическая работа. Задачи. (22 м)
5) Проверка работ учащихся. (3 м)
6) Информация о домашнем задании. (1 м)
7) Рефлексия. (2 м)
* можно рассмотреть материал (или не рассматривать) в зависимости от уровня подготовки класса или что нужно повторить больше.
Ход урока
I. Организационный момент (сообщение темы и постановка целей урока).
Надо определить делится ли данное число на 2,5, … Как сократить дробь? Как найти наибольший общий делитель и т. д.
Вопрос: Что объединяет эти задачи?
Ответ: Объединяет эти задачи то, что в них надо использовать операции modили div.
Как вы думаете, что сегодня на уроке мы будем изучать?
II. Актуализация опорных знаний учащихся.
Устный опрос: (учащиеся отвечают устно или записывают на доске, набирают рейтинговые баллы).
1. Что такое статистическая операция?
2. Какие особенности расчета таких функций?
3. Что такое факториал?
4. Что общего в программе расчета факториала и nk – n в степени k?
5. Приведите примеры применения подобных алгоритмов?
III. Ознакомление с новым материалом.
Вспомним!
Операция | Приоритет |
Not *, / ,div, mod, and +, -, or, xor =, , >= |
Первый Второй Третий Четвертый |
div – деление без остатка (17 div 3=5)
mod – определение остатка(17 mod 3=2)
Задача 7: Определите, сколько четных двухзначных чисел делятся на 3 и вывести их на экран.
program pr7;
var i,k: integer;
begin
for x:=10 to 99 do
if (i mod 2 = 0) and (i mod 3 = 0) then begin writeln(i); k:=k+1; end;
writeln(k);
readln;
end.
Задача 8: Определите, сумму цифр n-значного числа (n
program pr8;
var n,a,s: longint;
begin
readln(n);
while n>0 do begin
a:=n mod 10;
s:=s+a;
n:=n div 10;
end;
writeln(s);
readln;
end.
Задача 9: Найти наибольший общий делитель (НОД).
program pr9_1; {алгоритм Евклида}
var a,b:integer;
begin
writeln(‘Введите 2 целых числа’);
readln(a,b);
repeat
if a>b then a:=a-b;
if b>a then b:=b-a;
until a=b;
write(‘НОД – ’,a);
readln;
end.
или
program pr9_2; {через операцию mod}
var a,b:integer;
begin
writeln(‘Введите 2 целых числа’);
readln(a,b);
if a
for i:=1 to n do
if (a mod i = 0) and (b mod i = 0) then nod:=i;
writeln(nod);
readln;
end.
Примечание: Для того чтобы найти воспользуемся формулой: НОК*НОД=a*b
Каковы особенности данных алгоритмов?
IV. Практическая работа учащихся за компьютером.
Учащиеся разбиваются на разноуровневые группы по два человека (на 2-ом уроке возможно разбивание учеников на группы «слабый+сильный», чтобы более слабые ученики освоили материал лучше). Учащимся предлагаются задания трех уровней сложности.
Уровень 1.
7а. Даны натуральные числа от 30 до 80. Найти и напечатать те из них, которые при делении на 7 дают остаток 1, 2 или 5.
Уровень 2.
8а. Найти все двузначные числа, сумма квадратов цифр которых делится на 13.
Уровень 3.
9а. Составить программу, сокращающую обыкновенные дроби.
programp9a1;
var c,z,i,n:LONGINT;
begin
writeln('введите числитель и знаменатель');
readln(c,z);
writeln(c,'/',z);
if c>z then n:=z else n:=c;
for i:=n downto 2 do
if (c mod i=0) and (z mod i=0) then begin c:=c div i; z:=z div i; end;
writeln('сократили ',c,'/',z);
readln;
end.
или
program p9a2;
var c,z,c1,z1:LONGINT;
begin
writeln('введите числитель и знаменатель');
readln(c,z);
writeln(c,'/',z);
c1:=c;z1:=z;
repeat
if c1>z1 then c1:=c1-z1;
if z1>c1 then z1:=z1-c1;
until c1=z1;
c:=c div c1; z:=z div z1;
writeln('сократили ',c,'/',z);
readln;
end.
V . Проверка работ учащихся.
Для проверки решений учащимся демонстрируются заранее приготовленные программы.
VI. Домашнее задание (выдаются карточки).
Даются пояснения к выполнению домашнего задания.
Уровень 1.
7b. Напечатать те из двузначных чисел, которые делятся на 4, но не делятся на 6.
Уровень 2.
7c. Составить программу, определяющую, является ли данное число N простым.
Уровень 3*(дать на следующий урок для среднего или слабого класса).
7d. Составьте программу вывода на экран всех простых чисел, не превосходящих заданного N.
program pr7d;
var i,n,j,k:integer;
begin
writeln(‘Введите 2 целых числа’);
readln(n);
for i:=1 to n do begin
for j:=1 to n do
if (i mod j = 0) then k:=k+1;
if k=2 then writeln(i);
k:=0;
end;
readln;
end.
VII. Рефлексия (на выбор учителя).
Карточки с вопросом учителю.
Запишите, ребята, вопрос по данной теме, который вы бы задали на конкурсе своим противникам.
Цветограмма урока:
Кружок красного цвета
Кружок зеленого цвета
Кружок желтого цвета
«Я удовлетворен уроком, урок был полезен для меня, я много, с пользой и хорошо работал на уроке, я понимал все, о чем говорилось и делалось на уроке»
«Урок был интересным, я принимал в нем активное участие, урок был полезен для меня, я сумел выполнить ряд заданий, но все-таки я не все смог понять»
«Пользы от урока я получил мало, я не очень понимал, о чем идет речь, мне это не очень нужно, к ответам на уроке я был не готов»
И. А. Курилов, МБОУ СОШ №9, г. Нерчинск, Забайкальский край
Метки: Информатика