Открытый урок «Символьный и строковый типы данных

advertisement
Открытый урок «Символьный и строковый типы данных»
Учитель: Унская Тамара Юльевна
Тема: Символьный и строковый типы данных
Класс: 8
Тип урока: комбинированный:
 проверка знаний – компьютерное тестирование;
 новый материал – задание web-квеста;
 закрепление – практические упражнения;
 проверка знаний – устный опрос, решение проблемы урока.
Цель урока:
Формирование у обучающихся навыков самостоятельной работы с ресурсами Интернета
по заданной теме, закрепление правил написания программ на языке Pascal.
Задачи урока:
1. Обучающие:
1. Научить оперировать целочисленным и строковым типами данных.
2. Углубить знание о типах данных Pascal.
3. Тренировать навыки работы в оболочке программы Pascal.ABC.NET.
4. Тренировать умение находить информацию в сети Интернет.
2. Развивающие:
1. Развивать умения анализировать.
2. Осуществлять навык поиска и выделения необходимой информации.
3. Продолжить развитие умения устанавливать причинно-следственные связи.
4. Формировать умения работы в сети Интернет.
3. Воспитательные:
1. Совершенствовать навыки общения.
2. Вовлечь в активную деятельность.
План урока:
1. Организационный момент (1 мин).
2. Повторение материала предыдущего урока + проверка домашнего задания
(компьютерное тестирование) (6 мин).
3. Объяснение нового материала (10 мин).
4. Физкультминутка – гимнастика для глаз (1 мин).
5. Закрепление (25 мин)
o разбор примеров, практические упражнения (18 мин);
o устный опрос, решение проблемы урока (7 мин).
6. Обобщение урока, домашнее задание (2 мин).
Оборудование и программный материал:
 оболочка программы Pascal.ABC.NET.
 программа MyTest или TestEdu v1.17;
 учительский и ученические ПК;
 возможность выхода в Интернет;
 web-квест «Основы алгоритмики»;
 карточки с задачами на языке Pascal.
Применяемые технологии:
1. Проблемного обучения.
2. Личностно-ориентированного подхода, развивающего обучения.
3. Web-квест.
4. Игровая.
5. ИКТ.
Используемые методы:
 репродуктивный;
 объяснительно-иллюстративный;
 проблемного изложения материала;
 исследовательский;
 сравнительно-аналитический;
 фронтальный опрос:
 индивидуальная – работа с электронными источниками информации;
 самостоятельная работа за компьютером;
 компьютерное тестирование;
 коллективное обсуждение.
Ход урока.
1. Организационный момент
Приветствие.
2. Повторение материала предыдущего урока + проверка домашнего задания
(компьютерное тестирование)
Для проверки домашнего задания пересядьте, пожалуйста, за компьютеры.
Откройте тест «Целочисленный тип данных» на рабочем столе. На работу вам
дается 5 минут. Начали!
Тест:
1. Переменные целого типа могут принимать только целые значения. Верно ли
данное утверждение?
>>>>>>>>>>>> Да
2. Сколько байтов памяти отводится для типа integer:
>>>>>>>>>>>> 2
3. Найдите ошибку в записи: a; b; c: integer;
>>>>>>>>>>>> после а b встречено ";" ожидалось ","
4. Число 724 можно отнести к integer ?
>>>>>>>>>>>> Да
5. Что значит "диапазон допустимых значений"?
>>>>>>>>>>>> Переменная может принимать значения данного диапазона чисел
6. Укажите верные операции над целыми числами:
>>>>>>>>>>>> + - * / mod div
7. Как называются перечисленные операции? "< > => =< <> ="
>>>>>>>>>>>> отношения
8. Какие операции можно производить над данными целочисленного типа?
>>>>>>>>>>>> Арифметические и отношения
9. Что возвращает функция random ?
>>>>>>>>>>>> Случайное число
10. Что возвращает функция succ ?
>>>>>>>>>>>> Следующее число
Заканчиваем работу с тестом и анализируем свои ошибки: каков процент
выполнения и почему.
Теперь развернитесь ко мне лицом.
Объяснение нового материала
Что ж, мои юные программисты, продолжаем изучать алгоритм. Что является
величиной алгоритма? (информационный объект: число, символ, таблица). Каждый
объект является данными для программы и имеет свой тип.
Что мы знаем о типах данных? (Тип определяет множество допустимых значений
объекта, а также множество допустимых операций, которые применимы к нему. Кроме
того, тип определяет формат внутреннего представления данных в памяти ПК.)
Тема сегодняшнего урока: «Строковый тип данных».
На доске вы видите вопрос: «Есть ли различия между строковым и целочисленным типом
данных?». В конце урока мы должны решить данную проблему и ответить на озвученный
вопрос.
Разворачиваемся к компьютерам. Продолжаются путешествия наших героев: Ванинепоседы, Тимы-мыслителя и Данилы-мастера. (Сайт учителя tamau.ucoz.ru : Технологии
– Web-квест – Примеры web-квестов – Web-квест «Основы алгоритмики») Открываем 5
задание web-квеста (Картинка «Кит»). С первой ссылкой мы уже работали, открываем
вторую ссылку «ЗДЕСЬ».
Итак, назовите тему сегодняшнего урока. (Строковый тип данных)
Выписываем в тетрадь название, обозначение, диапазон значений, формат, операции.
По ходу работы с содержимым web-страницы учитель уточняет и конкретизирует
сведения о строковом типе.
Строковый тип данных
Для обработки строковой информации в Турбо Паскаль введен строковый тип данных.
Строкой в Паскале называется последовательность из определенного количества
символов. Количество символов последовательности называется длиной строки.
Синтаксис:
var s: string[n];
var s: string;
Учитель: Какие данные описываются строковым типом? Как записывается тип
(назовите индентификатор)?
n - максимально возможная длина строки - целое число в диапазоне 1..255. Если этот
параметр опущен, то по умолчанию он принимается равным 255.
Учитель: Каков диапазон?
Строковые константы записываются как последовательности символов, ограниченные
апострофами. Допускается формирование строк с использованием записи символов по
десятичному коду (в виде комбинации # и кода символа) и управляющих символов
(комбинации ^ и некоторых заглавных латинских букв).
Пример:
'Текстовая строка'
#54#32#61
'abcde'^A^M
3.
Пустой символ обозначается двумя подряд стоящими апострофами. Если апостроф входит
в строку как литера, то при записи он удваивается.
Переменные, описанные как строковые с разными максимальными длинами, можно
присваивать друг другу, хотя при попытке присвоить короткой переменной длинную
лишние символы будут отброшены.
Учитель: Приведите примеры записи строковых констант в программе.
В Турбо Паскаль имеется простой доступ к отдельным символам строковой переменной:
i-й символ переменной st записывается как st[i]. Например, если st - это 'Строка', то st[1] это 'С', st[2] - это 'т', st[3] - 'р' и так далее.
Учитель: Важно! Можно определить порядковый номер символа в строке.
Над строковыми данными определена операция слияния (конкантенации), обозначаемая
знаком +. Например:
a := 'Turbo';
b := 'Pascal';
c := a + b;
В этом примере переменная c приобретет значение 'TurboPascal'.
Учитель: С помощью слияния двух строк получается третья, операция
записывается как арифметическая «сложение».
Кроме слияния над строками определены операции сравнения <,>,=,<>,<=,>=. Две строки
сравниваются посимвольно, слева направо, по кодам символов. Если одна строка меньше
другой по длине, недостающие символы короткой строки заменяются символом с кодом 0.
Учитель: какие еще операции можно производить над строковым типом данных?
Как происходит сравнение?
Очень близок к символьному типу еще один текстовый тип, только там
используется один… ЧТО? Правильно: символ, записывается он char. Каждому символу
алфавита соответствует индивидуальный числовой код от 0 до 255. Операции над
данными можно производить те же, что с символьным типом. Выражения типа char
можно присваивать любым строковым переменным.
4.
Закрепление .
o разбор примера (20 мин);
Вы получили примеры программ с строковым типом данных. Рассмотрим первый
пример «Введение данных ученика: фамилия, имя»:
var
fam,name: string;
begin
writeln ('Введите фамилию',fam);
readln (fam);
writeln ('Введите имя',name);
readln (name);
write (fam,' ',name);
end.
Назовите переменные, определите соответствующий им тип данных. Обратите
внимание на исполняемую область – что будет выведено в результате программы?
Рассмотрим второй пример «Преобразование числа в строку и обратно». Здесь
используются 2 типа данных, потому что мы оперируем с 2 величинами: «число 365» и
«строка «365»».
var
s: string;
num: integer;
begin
s := '356';
num := StrToInt(s);
writeln('Число, соответствующее строке ''',s,''' - это ',num);
num := 563;
s := IntToStr(num);
writeln('Строка, соответствующая числу ',num,' - это ''',s,'''');
end.
Теперь самостоятельно введите текст третьей программы в оболочку
Pascal.ABC.NET, результатом программы будет сумма кодов каждой буквы слова БАЙТ:
var
a: string;
i,b:byte;
begin
a:= 'БАЙТ';
b:=ord(a[1])+ord(a[2])+ord(a[3])+ord(a[4]);
writeln (b);
end.
Кто готов? Выполните программу, исправьте высветившиеся ошибки. (Учитель
проверяет правильность записи текста программы и помогает индивидуально тем, у кого
проблемы).
5. Физкультминутка. Пересаживаемся за парты. Очки положите на стол, и 1) Следите
за моей ладонью только глазами (вправо-влево, вверх-вниз), 2) теперь упражнение «Своя
ладонь у лица, ладонь учителя у доски», посмотрите в окно, 3) закройте глаза ладошками,
не нажимая.
Обсуждение проблемы урока.
Итак. Мы подробно разобрали новый тип данных. Ответьте мне на вопрос: есть ли
различие между строковым и целочисленным типами данных? Да.
Теперь давайте обсудим, в чем состоит это различие. И помогут нам в этом герои
квеста: Ваня-непоседа, Тима-мыслитель и Данила-мастер.
Что заметил наш непоседа? (Внешние различия: Разное обозначение в программе,
Целочисленным типом описываются числа, а строковым – последовательность любых
символов)
Что определил мыслитель? (Свойства: в диапазон целочисленных типов входят
числа от и до числовых значений, а вдиапазон строкового типа составляет длина строки,
количество символов от и до, составляющих эту строку)
Что выделил мастер? (Операции: Над данными целочисленного типа можно
производить все арифметические операции, а над данными строкового типа – операцию
слияния, которая похожа на операцию сложения, но это не одно и то же. Кроме того,
сравнение происходит по коду символа слева направо, а в целочисленном сравниваются
значения самих величин.
6.
Обобщение урока, домашнее задание
Записываем Д.З. в тетрадь: §3.3.3, №14. Задание также есть в электронном дневнике.
Что сегодня мы узнали на уроке?
- Подробно разобрали символьный тип данных.
- Потренировались в написании программ.
- Выполнили задания квеста.
- Ответили на проблемный вопрос.
Рефлексия:
Ребята, я прошу вас в карточках отметить те предложения, которые описывают
ваши впечатления и чувства.
Спасибо за урок.
Download