Программирование на языке Паскаль Часть I
Тема 1. Введение
Цели урока:
Обучающие:
познакомить учащихся с общими характеристиками языков программирования, с программной средой Pascal ABC, со структурой программы на языке Паскаль;
сформировать у учащихся первичные знания по применению изученного материала.
Развивающие:
Воспитательные:
Тип урока: урок изучения и первичного закрепления новых знаний.
Технологии обучения: информационно-коммуникационная технология, технология развивающего обучения, здоровьесберегающая технология, технология сотрудничества, личностно-ориентированное обучение.
Оборудование: мультимедийный проектор, компьютеры с установленной средой программирования Pascal ABC, конспект для учащегося раздаточные карточки-задания.
План урока:
1. Организационный момент. Актуализация знаний.
2. Объяснение материала.
2.1. Языки программирования, их назначение, особенности.
2.2. Знакомство с программной средой Pascal ABC.
2.3. Знакомство со структурой программы на языке Паскаль.
2.4. Разбор простейшей программы «вывода».
3. Закрепление полученных умений и навыков. Практическая работа.
4. Подведение итогов урока.
ХОД УРОКА
1. Оргмомент. Подготовка к изучению нового материала.
Коротко, фронтально повторяем ранее изученный материал по теме «Алгоритмизация». Вопросы для актуализации знаний:
Алгоритм. Свойства алгоритмов.
Способы записи алгоритмов.
Базовые структуры алгоритмов.
Ожидаемые результаты: (демонстрируются при положительных результатах на экране слайды 1 и 2)
Алгоритм – это четко определенный план действий для исполнителя.
Свойства алгоритма:
дискретность: состоит из отдельных шагов (команд)
понятность: должен включать только команды, известные исполнителю (входящие в СКИ)
определенность: при одинаковых исходных данных всегда выдает один и тот же результат
конечность: заканчивается за конечное число шагов
массовость: может применяться многократно при различных исходных данных
корректность: дает верное решение при любых допустимых исходных данных
Программа – это
Команда – это описание действий, которые должен выполнить компьютер.
2. Объяснение нового материала
Языки программирования
Машинно-ориентированные (низкого уровня) - каждая команда соответствует одной команде процессора (ассемблер)
Языки высокого уровня – приближены к естественному (английскому) языку, легче воспринимаются человеком, не зависят от конкретного компьютера
для обучения: Бейсик, ЛОГО, Паскаль
профессиональные: Си, Фортран, Паскаль
для задач искусственного интеллекта: Пролог, ЛИСП
для Интернета: JavaScript, Java, Perl, PHP, ASP
Язык Паскаль
1970 – Никлаус Вирт (Швейцария)
Структура программы
program программы;
const …;{константы}
var …; {переменные}
begin
… {основная программа}
end.
{комментарии в фигурных скобках не обрабатываются}
Из чего состоит программа?
Константа – постоянная величина, имеющая имя.
Переменная – изменяющаяся величина, имеющая имя (ячейка памяти).
Процедура – вспомогательный алгоритм, описывающий некоторые действия (рисование окружности).
Функция – вспомогательный алгоритм для выполнения вычислений (вычисление квадратного корня, sin).
Имена программы, констант, переменных
Имена могут включать
заглавные и строчные буквы не различаются
имя не может начинаться с цифры
Имена НЕ могут включать
русские буквы
пробелы
скобки, знаки +, =, !, ? и др.
Какие имена правильные??
AXby R&B 4Wheel Вася “PesBarbos” TU154 [QuQu] _ABBA A+B
Константы
const
i2 = 45; { целое число }
pi = 3.14; { вещественное число }
целая и дробная часть отделяются точкой
qq = 'Вася'; { строка символов }
можно использовать русские буквы!
L = True; { логическая величина }
может принимать два значения:
True (истина, «да»)
False (ложь, «нет»)
Переменные
Переменная – это величина, имеющая имя, тип и значение. Значение переменной можно изменять во время работы программы.
Типы переменных:
Объявление переменных (выделение памяти):
var a, b: integer;
Q: real;
s1, s2: string;
Как изменить значение переменной?
Оператор – это команда языка программирования высокого уровня.
Оператор присваивания служит для изменения значения переменной.
Пример:
program qq;
var a, b: integer;
begin
a := 5;
b := a + 2;
a := (a + 2)*(b – 3);
end.
Оператор присваивания
Общая структура:
имя переменной := выражение;
Арифметическое выражение может включать
Какие операторы неправильные?
program qq;
var a, b: integer;
x, y: real;
begin
a := 5;
10 := x; { имя переменной должно быть слева от знака :=}
y := 7,8; { целая и дробная часть отделяются точкой}
b := 2.5; { нельзя записывать вещественное значение в целую переменную}
x := 2*(a + y);
a := b + x; { нельзя записывать вещественное значение в целую переменную}
end.
Ручная прокрутка программы
program qq;
var
a, b: integer;
begin
a := 5;
b := a + 2;
a := (a + 2) * (b - 3);
b := a div 5;
a := a mod b;
a := a + 1;
b := (a + 14) mod 7;
end.
Порядок выполнения операций
вычисление выражений в скобках
умножение, деление, div, mod слева направо
сложение и вычитание слева направо
3 5 4 1 7 8 6 9
z := (5*a*c+3*(c-d))/a*(b-c)/ b;
2 6 3 4 7 5 1 12 8 11 10 9
x:=(a*a+5*c*c-d*(a+b))/((c+d)*(d-2*a));
Сложение двух чисел
Задача. Ввести два целых числа и вывести на экран их сумму.
Простейшее решение:
program qq;
var a, b, c: integer;
begin
read ( a, b );
c := a + b;
writeln ( c );
end.
Оператор ввода
read ( a ); { ввод значения переменной a}
read ( a, b ); { ввод значений переменных a и b}
Как вводить два числа?
через пробел:
25 30
через Enter:
25
30
Оператор вывода
write ( a ); { вывод значения переменной a}
writeln ( a ); { вывод значения переменной a и переход на новую строчку}
writeln ( 'Привет!' ); { вывод текста}
writeln ( 'Ответ: ', c ); { вывод текста и значения переменной c}
writeln ( a, '+', b, '=', c );
Полное решение
program qq;
var a, b, c: integer;
begin
writeln('Введите два целых числа');
read ( a, b );
c := a + b;
writeln ( a, '+', b, '=', c );
end.
Протокол:
Введите два целых числа
25 30 {это вводит пользователь}
25+30=55
3. Практическая работа
Задания
Ввести три числа, найти их сумму и произведение.
Пример:
Введите три числа:
4 5 7
4+5+7=16
4*5*7=140
program qq;
var
a, b, c, S, P: integer;
begin
writeln('Введите три целых числа');
read(a, b, c);
S := a + b + c;
P := a * b * c;
writeln(a, '+', b, '+', c, '=', S);
writeln(a, '*', b, '*', c, '=', P);
end.
Ввести три числа, найти их сумму, произведение и среднее арифметическое.
Пример:
Введите три числа:
4 5 7
4+5+7=16
4*5*7=140
(4+5+7)/3=5.33
program qq;
var
a, b, c, S, P: integer;
SrAr: real;
begin
writeln('Введите три целых числа');
read(a, b, c);
S := a + b + c;
P := a * b * c;
SrAr := (a + b + c) / 3;
writeln(a, '+', b, '+', c, '=', S);
writeln(a, '*', b, '*', c, '=', P);
writeln('(', a, '+', b, '+', c, ')', '/', 3, '=', SrAr:5:2);
end.
4. Подведение итогов урока
Учителем дается общая оценка урока. Выставляются оценки ученикам, которые особенно активно проявили себя на уроке. Оцениваются успешно выполненные задания для самостоятельного решения.