14 урок, 8 класс
Учитель: Брух Т.В.
Дата _______________
Тема урока: «Введение. Программирование. ПР1 Оператор вывода»
Цели урока:
Обучающие:
Развивающие:
Воспитательные:
План урока:
1.
Организационный момент. Актуализация знаний.
2. Объяснение материала.
2.1. Языки программирования, их назначение,
особенности.
2.2. Знакомство с программной средой Pascal
ABC.
2.3. Знакомство со структурой
программы на языке Паскаль.
2.4. Разбор простейшей программы «вывода».
3. Закрепление полученных умений и навыков. Практическая работа.
4. Подведение итогов урока.
Ход урока
1. Оргмомент. Подготовка к изучению нового материала.
2. Объяснение нового материала
Алгоритм – это четко определенный план действий для исполнителя.
Свойства алгоритма:
• дискретность: состоит из отдельных шагов (команд)
• понятность: должен включать только команды, известные исполнителю (входящие в СКИ)
• определенность: при одинаковых исходных данных всегда выдает один и тот же результат
• конечность: заканчивается за конечное число шагов
• массовость: может применяться многократно при различных исходных данных
• корректность: дает верное решение при любых допустимых исходных данных
Программа – это
• алгоритм, записанный на каком-либо языке программирования
• набор команд для компьютера
Команда – это описание действий, которые должен выполнить компьютер.
• откуда взять исходные данные?
• что нужно с ними сделать?
Языки программирования
• Машинно-ориентированные (низкого уровня) - каждая команда соответствует одной команде процессора (ассемблер)
• Языки высокого уровня – приближены к естественному (английскому) языку, легче воспринимаются человеком, не зависят от конкретного компьютера
• для обучения: Бейсик, ЛОГО, Паскаль
• профессиональные: Си, Фортран, Паскаль
• для задач искусственного интеллекта: Пролог, ЛИСП
• для Интернета: JavaScript, Java, Perl, PHP, ASP
Язык Паскаль
1970 – Никлаус Вирт (Швейцария)
• язык для обучения студентов
• разработка программ «сверху вниз»
• разнообразные структуры данных (массивы, структуры, множества)
Структура программы
program <имя программы>;
const …;{константы}
var …; {переменные}
begin
… {основная программа}
end.
{комментарии в фигурных скобках не обрабатываются}
Из чего состоит программа?
Константа – постоянная величина, имеющая имя.
Переменная – изменяющаяся величина, имеющая имя (ячейка памяти).
Процедура – вспомогательный алгоритм, описывающий некоторые действия (рисование окружности).
Функция – вспомогательный алгоритм для выполнения вычислений (вычисление квадратного корня, sin).
Имена программы, констант, переменных
Имена могут включать
• латинские буквы (A-Z)
заглавные и строчные буквы не различаются
• цифры
имя не может начинаться с цифры
• знак подчеркивания _
Имена НЕ могут включать
• русские буквы
• пробелы
• скобки, знаки +, =, !, ? и др.
Какие имена правильные??
AXby R&B 4Wheel Вася “PesBarbos” TU154 [QuQu] _ABBA A+B
Константы
const
i2 = 45; { целое число }
pi = 3.14; { вещественное число }
целая и дробная часть отделяются точкой
qq = 'Вася'; { строка символов }
можно использовать русские буквы!
L = True; { логическая величина }
может принимать два значения:
• True (истина, «да»)
• False (ложь, «нет»)
Переменные
Переменная – это величина, имеющая имя, тип и значение. Значение переменной можно изменять во время работы программы.
Типы переменных:
• integer { целая }
• real { вещественная }
• char { один символ }
• string { символьная строка }
• boolean { логическая }
Объявление переменных (выделение памяти):
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.
Оператор присваивания
Общая структура:
<имя переменной> := <выражение>;
Арифметическое выражение может включать
• константы
• имена переменных
• знаки арифметических операций:
• + - * / div (деление нацело) mod (остаток от деления)
• вызовы функций
• круглые скобки ( )
Какие операторы неправильные?
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.
Ручная прокрутка программы
a |
b |
? |
? |
|
|
|
|
|
|
|
|
|
|
|
|
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 слева направо
• сложение и вычитание слева направо
![]() |
z := (5*a*c+3*(c-d))/a*(b-c)/ b;
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. Практическая работа
1. Ввести три числа, найти их сумму и произведение.
Введите три числа:
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.
2. Ввести три числа, найти их сумму, произведение и среднее арифметическое. Введите три числа:
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. Подведение итогов урока
Учителем дается общая оценка урока. Выставляются оценки ученикам, которые особенно активно проявили себя на уроке. Оцениваются успешно выполненные задания для самостоятельного решения.
Материалы на данной страницы взяты из открытых источников либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.