Тема урока: Решение задач с использованием
языка программирования Pascal
Цель: Закрепить навыки решения задач на языке программирования.
Задачи:
Воспитательная: Развитие навыков самостоятельной работы.
Образовательная: Закрепление навыков в решении задач на языке Pascal.
Развивающая: Развитие приемов умственной деятельности, развитие мышления, памяти, внимательности.
Тип урока: урок решения задач.
ПЛАН УРОКА
1. Организационный момент
2. Тема: Решение задач с использованием языка программирования Pascal.
3. Актуализация знаний.
(На доске прикреплены на магниты служебные слова в произвольном порядке. При помощи учащихся на доске формируем структуру программы. Описание переменных)
4. Работа с карточкой
5. Решение задач у доски
6. Самостоятельная работа
7. Подведение итогов.
Ход урока.
Тема нашего урока – Решение задач с использованием языка программирования Pascal.
Мы сегодня закрепим навыки решения задач, используя язык программирования Pascal.
С чего начинается решение любой задачи на компьютере?
(Сначала нужно построить алгоритм решения этой задачи).
Следующий шаг?
(построить блок-схему решения задачи)
К какому виду модели относится блок-схема?
(информационная модель).
При помощи блок схемы может компьютер решить эту задачу?
(нет)
Тогда следующий шаг?
(Записать на языке программирования)
А как называется процесс построения информационных моделей при помощи языка программирования?
(Формализация)
И последний шаг - формализованная модель преобразуется в компьютерную.
А теперь вспомним структуру программы.
Программа – это предписание, указывающее, какие операции, над какими данными и в каком порядке должен выполнить компьютер. Она состоит из трех частей:
• заголовок программы,
• раздел описаний,
• исполняемая часть.
На доске прикреплены на магниты служебные слова в произвольном порядке. Учащиеся на доске формируют структуру программы:
PROGRAM
VAR
BEGIN
END
Можно ли оставить программу без заголовка?
(да).
Описание переменных – самый важный раздел. Используем для описания переменных служебное слово VAR.
Описание переменных.
В разделе VAR описываются переменные, которые будут использоваться в программе:
• INTEGER - числовой
• CHAR - символьный
• STRING - строковый
• REAL – вещественный
Какими служебными словами описывается условие в программе?
Условный оператор IF … THEN …ELSE
BEGIN
… - операторные скобки.
END
WRITE(LN) – выводит на экран текст, записанный в апострофах и значения указанной переменной.
READ(LN) - считывает введенную информацию.
Хорошо. А теперь разберем задачу.
1 ЗАДАЧА
Для экспериментов над животными нужны кошки с длиной хвоста меньше 20 см. Определить, подходит ли для этой цели кошка Мурка с длиной хвоста 15 см?
Итак, сначала разберем эту задачу вместе. Записывать в тетрадь не нужно.
Во-первых, строим информационную модель решения задачи.
Прежде чем построить алгоритм решения задачи, вспомним:
Что такое алгоритм? (подробное описание последовательности арифметических и логических действий, расположенных в строгом логическом порядке и позволяющих решить конкретную задачу).
Давайте вспомним свойства алгоритма:
• Однозначность
• Массовость
• Дискретность
• Результативность
• Понятность
Учитывая, что программа решения этой задачи должна быть универсальной и должна позволять работать не только с приведенными в задаче числами, заменим эти числа переменными a, b и с при условии: а = 0 см, b = 20 см, с = 15 см,
где а – начало отсчета, b – эталон длины, с – длина очередного претендента.
Подобное обобщение задачи позволит решать эту задачу и при других значениях исходных величин – Какое свойство алгоритма используется? - МАССОВОСТЬ.
Например, в том случае, когда претендентом будет кот Васька с длиной хвоста 24 см.
Метод решения задачи: проверить, выполняются ли условия: a ≤ b ≤ c.
Итак, строим информационную модель решения нашей задачи в виде блок-схемы:
http://www.radikal.ru (блок-схема)
Информационная модель готова, теперь можно записать программу на языке программирования.
PROGRAM koshka;
VAR B, C: real;
BEGIN
Writeln (‘Введите эталон - В, длину хвоста очередной кошки - С’);
Readln (B,C);
If C < B Then Writeln (‘Кошка подходит’) else
Writeln (‘Кошка не подходит’);
End.
2 ЗАДАЧА (самостоятельно, с последующей проверкой у доски).
Для игры в баскетбол Александру Петровичу требуются учащиеся не ниже 175 см. Определить, подходит ли Юля для игры в баскетбол?
3 ЗАДАЧА
А теперь самостоятельно решим задачу с числами:
Найти площадь прямоугольника по введенным с клавиатуры значениям двух его сторон:
PROGRAM ploshad;
VAR A, B, С: real;
BEGIN
Writeln (‘введите длину - А, ширину - В);
Readln (А,В);
C:=A*B;
Writeln (C);
End.
А теперь, предположим, нам нужно найти остаток от деления. Как мы это сделаем с точки зрения математики?
А в PASCAL при помощи какого оператора выполняется эта операция?
При помощи оператора MOD. А если нужно разделить числа нацело, используем оператор DIV.
Например, С:=9 mod 2 C=1; С:= 9 div 2 С=4
ЗАДАЧА
Определить, делится ли первое число на другое без остатка.
Сначала строим информационную модель устно.
Во-первых, вводятся числа А и В.
Находим остаток от деления числа А на число В.
Если остаток от деления равен нулю, то выводим результат: Число А делится на число В без остатка
Иначе
Результат – Число А делится на число В с остатком.
Program ostatok;
Var А, В, С: real;
Begin
C:=A mod B;
If C=0 then
Writeln (‘Число А делится на число В без остатка’) else
Writeln (‘Число А делится на число В с остатком’);
End.
Для закрепления и проверки усвоения материала выполним несколько упражнений:
1 Задание. Построить блок-схему, написать программу на языке программирования Pascal.
1. Введены два числа с клавиатуры: А и B.
Найти сумму чисел, если число А меньше числа В, Найти разность чисел, если число А больше числа В.
2 Задание
- Верна ли структура программы?
Program ABC;
Begin
Writeln (‘Назовите свое имя’);
Readln (a);
Writeln (‘Привет’, а);
End.
-
Определите результаты операций:
- x:=5; y:=2; c:=x+y;
- a:=4; b:=10; if a < b then c:=b*a else c:=b+a;
- x:=9; c:=sqrt(x).
-
Какого типа может быть переменная А, если:
- А:=5;
- A:=’компьютер’;
- A:=’л’;
- A:=5, 74;
- Найдите и исправьте в исходном тексте программы три ошибки, не позволяющие произвести компиляцию программы:
Program ABC
Var x,y,z: integer;
Begin
x:=5; y=7; z:=x/y;
Writeln (Привет, а);
End.
- Соедините левую и правую части соответственно:
Integer
|
Символьная переменная |
Real
|
Целые числа |
String
|
Дробные числа |
Char
|
Строковые переменные |
3 Задание:
Написать программу, высчитывающую стоимость заданного количества ткни. Цена и количество вводятся с клавиатуры.
4. Подведение итогов урока
Молодцы. Сегодня все хорошо поработали и получили следующие оценки за работу на уроке: