Конспект урока по Информатике "Программирование линейных алгоритмов"

Тема: Программирование линейных алгоритмов.

Цели: повышение интереса к изучению предмета; воспитание навыка быстрого мышления; развитие творческой активности учащихся; развитие познавательных интересов.

	Задачи:

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

	Сформировать первоначальные представления о вводе и выводе данных.

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

	2. Развивающие 

	умения анализировать, сравнивать, систематизировать и обобщать;

	интерес к учению, стремление к расширению кругозора;

	3. Воспитательные 

	Повышение мотивации учащихся на уроке;

	Достижение сознательного уровня усвоения материала учащимися;

	воспитание информационной культуры учащихся, 

	внимательности, 

	аккуратности, 

	дисциплинированности, 

	усидчивости. 

	Требования к знаниям и умениям: 

	Знать написание, назначение оператора ввода, вывода; 

составлять простейшие программы на вычисление арифметических выражений; 

исполнять программы на компьютере. 

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

	Тип урока: комбинированный. 

	Технология: формирование коммуникативной компетенции;

	Методы: 

	объяснительно – иллюстративный;

	репродуктивный;

	проблемный метод;

	практическая работа;

	метод упражнений;

	анализ;

	синтез.

	Межпредметная связь: внутрицикловая(математика), внешнецикловая (история, литература)

Каналы общения: ученик-учитель, класс-учитель, ученик-ученик.

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

Возраст учащихся: 7 класс.

Год обучения: третий



Место урока в учебном плане: 

К моменту проведения урока учащиеся  изучали  темы: «Алгоритмы и их свойства», «Типы алгоритмов», «Типы данных» и обладают следующими ЗУН:

знают основные типы алгоритмов;

знают основные типы данных в Паскале;

знают арифметические операции и выражения;

знают разделы программы на Паскале;

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

	Флипчарт по теме (приложение 1), компьютеры, технологическая карта ученика 

	(приложение 2), разноуровневые карточки (приложение 3), интерактивная доска, локальная сеть, программа Pascal ABC.

	Ход урока:

	I.Организационный момент.

Здравствуйте, ребята! Садитесь! Какое у вас настроение? Если хорошее - улыбнитесь всем! Если нет - посмотрите друг на друга и улыбнитесь! Начнем урок!

       Я представила вам алгоритм в словесной форме. Посмотрите на доску. Этот же алгоритм изображен графически. А еще, какую форму представления алгоритмов различают?  Сегодня на уроке мы познакомимся с операторами ввода и вывода информации, научимся составлять линейные программы (страница флипчарта 1). 

	II. Актуализация знаний учащихся 

	Но прежде чем приступим к изучению нового материала. Мы должны вспомнить, что изучали на прошлом уроке.

	Проверка домашнего задания у нас будет проводиться в виде тестового опроса (страница флипчарта 2-3).

	После выполнения теста - взаимопроверка.

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

	1. Теоретическая часть.  

	        Ребята,  запишите тему урока «Программирование линейных алгоритмов». ( страница флипчарта 4).

Чтобы познакомиться с командами присваивания. Вводом  и выводом данных, мы с вами сейчас просмотрим следующие страницы флипчарта, необходимые определения нужно записать в тетрадь.

	         Для начала, нам надо вспомнить,  какие геометрические фигуры используются при составлении блок- схем.

	Как мы уже знаем с вами, алгоритмы могут описываться в словесной форме, графически (в виде блок-схем) и программой на языке программирования. На этой странице представлена графическая форма алгоритмов.             ( страница флипчарта 5).

	Прочитайте пословицу, зашифрованную в двух блок-схемах.

	Умный в гору не пойдет, умный гору обойдет.

	Куй железо, пока горячо.

Назовите к какому типу относятся каждая блок-схема.(Самопроверка производится путем перетаскивания правильного варианта ответа указателем из-под изображения).

	Команды вывода на экран текста или (и) значения переменных( страница флипчарта 6).



WRITE ( ); - выводит на экран, указанные в скобках параметры, курсор остается в этой же строке.
WRITELN ( ); - выводит на экран, указанные в скобках параметры, после вывода курсор переходит в начало следующей строки экрана.
В качестве параметров в круглых скобках может быть указан текст сообщения (текст записывается в апострофах ' ') и имя переменной (записывается без апострофов), значение которой нужно вывести. Между выводимыми элементами ставится запятая.
Команда WRITELN; без параметров только переводит курсор в начало следующей строки экрана.



Примеры

                     Writeln('Мне 12 лет');                      На экране появится: Мне 12 лет

                    a:=9;
                    Writeln('Я учусь в ', а,' классе');          На экране появится: Я учусь в 9 классе

                   

                  х:=3;у:=6;
                  Writeln(х+у,' тенге');                            На экране появится: 9 тенге



Команда ввода (считывания) с клавиатуры значения переменных во время работы программы ( страница флипчарта 7).



READ ( ); или READLN ( ); - считывает перечисленные в скобках переменные значения, введенные с клавиатуры (через пробел или после каждого значения нажимают Enter) Если значения вводились через пробел, то после ввода следует нажать Enter.
В качестве параметров в круглых скобках через запятую указываются имена переменных, значения которых считываются.
При работе с простыми переменными рекомендуется использовать команду Readln ( );
Перед каждой командой ввода рекомендуется выводить на экран поясняющий текст с информацией о том, что именно нужно ввести.
Пример. Запросить с клавиатуры значение переменной а.
Var a : Integer;
…
Write (‘a=’);
Readln(а);


На экране появится а= и после знака равно будет мигать курсор в ожидании ввода с клавиатуры целого числа. После ввода числа необходимо нажать Enter.


Для того, чтобы не переходить к окну с результатами работы программы (alt+F5) после запуска программы на выполнение, последней командой в любой программе перед End. записывается команда Readln; (Программа ждет нажатия Enter).



Задача. Найти сумму двух чисел.


Program N2;

Var a, b,summa :Integer;

Begin

Writeln(' Введите два числа ');

Readln(а,b);

summa:=а+b;

Writeln (' сумма двух чисел равна', summa);

Readln;

End.







                Элементы блок-схемы операторов ввода, вывода (страница флипчарта 8). 



Дети конспектируют в тетради определения.



	Первичное закрепление. 

Приоритет выполнения операций в ABC Pascal такой же, как и в математике. 

Достаточно только научиться правильно, записывать математические выражения на языке Pascal 

1). Записать по правилам языка  Pascal следующие выражения (страница флипчарта 9):

Дети поочередно работают у доски. 

Математическая запись                                      Запись выражений на Паскаль



37(25+87,5)-17(4,6+1,9)                                       37*(25+87.5)-17*(4.6+1.9)

                                                             (a+2*b-3*c)/(5*a+4)



     

c=a+b

Десятичная запятая в Pascal обозначается точкой

2). Зрительный диктант (страница флипчарта 10).

Коллективное  выполнение заданий:

-на местах

а). Что выведется на экран?

а:=12; b:=7;

Writeln(' Разность ', а ,' и ', b ,' равна ', а-b);



     - у доски

в). Найти и исправить все ошибки, допущенные в этой программе. Запишите программу без ошибок.

Program prim



var a,P:integer;



begin



writeln('ввести числа')



P=a*b



writeln('площадь равна')

end

3.Тренинг-задачи (страница флипчарта 12).

Учитель показывает правила составления программы:

Составим программу вычисляющую	s = а / b. 

program zadacha1_1;

var a,b,s:real;

Begin

writeln('введите число a ');

readln(a);

writeln('введите число b ');

readln(b);

s:=a/b;

writeln('а/b =',s);

end.

Ссылка на программу . Запуск программы.

Составьте программу, вычисляющую p=a*b

Дети составляют программу по образцу.

Проверь! (ссылка на запуск программы).

	Графический диктант (страница флипчарта 12).

Дети в тетрадях составляют блок-схему.

Составить  блок - схему к программе.

(Блок-схема (спрятана под фигурой)

Программа                                                    Блок-схема 



program zadacha1_1;

var a,b,p:real; 

Begin

writeln('введите число a '); 

readln(a);

writeln('введите число b ');

readln(b);

p:=a*b;

writeln('а*b =',p);

End.

(под блок-схемой спрятан другой вариант решения данной программы).

3. Физкультминутка (страница флипчарта 13). 

     Упражнение для глаз.

(Ссылка на Flash ).

	Практическая  работа (страницы флипчарта 14,15-16).

Работа по разноуровневым  карточкам.



Ребята, подходит к концу 2011 год, он богат  хорошими событиями для нашей Республики. Назовите их.

А какой великий праздник приближается? 



 Написать программу, выводящую информацию:

16 декабря  Республика Казахстан будет отмечать 20-летний юбилей Независимости.



   Составить программу по алгоритму:  

Во всех программах не забывать в начале Uses crt;  и в конце readkey:  

или readln;



Написать программу нахождения стоимости покупки. Значения цены и количества вводятся с клавиатуры. Добавьте комментарии к программе.

IV. Домашнее задание (страница флипчарта 17).

    1. Повторить конспект урока.

      2. Составить программу нахождения площади и периметра шестиугольника.



V.  Итог урока. (страница флипчарта 18).

Ребята, сегодня мы рассмотрели операторы ввода и вывода на основе линейных алгоритмов, на последующих уроках познакомимся с решением задач на составление разветвляющихся и циклических алгоритмов.

А сейчас ответьте на вопросы

1Какая команда служит для ввода данных?  Для вывода данных?

2.Чем отличается вывод информации на экран компьютера оператором 

                  write( )       от вывода оператором       writeln( ) ?

3.Как вывести на экран текст?

4.Можно ли вывести на экран несколько переменных или текстов одним оператором writeln()?

5.Какие символы используются для размещения комментариев в программе?

6.Как записывается команда присваивания?

      7. Можно ли заменять знак "присвоить" знаком равенства?

Спасибо за урок! (ссылка на слайд презентации)

VI.  Оценивание.