Тема урока: Типы данных в языке Turbo Pascal . Цель урока: В совместной деятельности с учащимися выделить основные типы данных языка программирования Turbo Pascal в ходе решения задач, используя эвристические методы познания: анализ, синтез, сравнение, обобщение. Задачи урока: образовательные: сообщение новых знаний по данной теме; формирование знаний и умений учащихся по теме “Типы данных языка Паскаль”. развивающие: развитие приемов умственной деятельности (обобщение, анализ, синтез, сравнение); развитие внимания, восприятия. воспитательные: развитие познавательного интереса к программированию, повышение информационной культуры учащихся. Тип урока: урок изучения нового материала. Метод обучения: словесный. Формы учебной работы: фронтальная и индивидуальная. Форма проведения: лекция. Оформление кабинета: На доске: написана тема урока. Средства обучения: учебники и учебные пособия План урока: 1. Организационный момент – 2 минут 2. Повторение предыдущего материала – 10 минут 3. Лекция –20минут 4. Подведение итогов урока – 5 минуты 5. Домашнее задание – 3 минуты Ход урока: Ученикам перед уроком раздаются бланки с заготовкой пустой таблицы. В течение урока учащиеся должны ее постепенно заполнять. 1. Организационный момент Учитель. Здравствуйте, ребята! 2. Повторение Изучением какого раздела мы занимаемся на протяжении нескольких уроков? Совсем недавно вы начали изучать раздел «программирование». Ответьте пожалуйста программирования? Какие Раскройте сущность на вопросы: Что называется языком виды языков программирования вы знаете? каждого из них. Приведите примеры языков программирования. Какой язык программирования мы начали изучать? Давайте кто-нибудь из вас попробует записать на доске структуру программы на языке Pascal. При решении различных задач мы с вами постоянно работаем с различными величинами. В зависимости от условия задачи величины могут применять различные значения. Итак, давайте рассмотрим несколько примеров. Сейчас постараемся разобрать данные задачи на доске. 1. Найти площадь треугольника с основанием a и высотой h. Для начала запишем формулу площади треугольника. Ответьте на вопросы: сколько величин используется? Какие значения могут принимать данные величины? Сколько переменных используется в данной формуле? Какие из них могут менять свои значения, а какие нет? Какие величины являются исходными, какие результирующими? Таким образом, заметим, что площадь, основание и высота треугольника могут принадлежать множество действительных чисел. Теперь рассмотрим следующий пример. 2. Найти площадь круга радиуса r. Давайте снова начнем рассмотрение задачи с написания формулы. Какие из этих величин могут изменяться в ходе решения задачи, а какие остаются такими же? Мы знаем, что число Pi - это число постоянное, а радиус и площадь могут менять свои значения. Какие величины являются исходными, какие результирующими? 3. Решить пример, который задан графиком функции: y=x*x Здесь мы можем отметить, что величина x может принимать любое значение, а y- только положительное. 4. Вычислить стоимость покупки, состоящей из нескольких тетрадей, карандашей и линейки. Сколько переменных используется в решении задачи? Сколько переменных используется в данной формуле? Какие значения могут принимать данные величины? Какие величины являются исходными, какие результирующими? Отсюда, мы видим, что любая величина может быть как целым, так и действительным числом. Итак, можно сделать вывод, что при решении задачи мы можем использовать различные величины. Теперь все вместе постараемся сформулировать тему нашего урока. Будем исходить из того, что каждая величина может принимать различные значения. Учитель. Итак, тема урока “Типы данных”. Запишите тему урока. 3. Лекция Для того, чтобы нам получить классификацию типов данных, которые используются в программах, будем постепенно заполнять таблицу, которая лежит у каждого на столе. Как вы думаете, с чем связанно функционирование любой программы? Функционирование любой программы связано с обработкой данных. Данные, предназначенные для обработки, называются исходными и задаются обычно в начале программы. Программа по ходу выполнения может запрашивать недостающие исходные данные. В процессе выполнения программы исходные данные преобразуются в результаты. Как вы думаете какие элементы данных, используемые в программе, являются константами или переменными? Константами называются элементы данных, значения которых в процессе выполнения программы не изменяются. Какие же величины в наших примерах являлись константами? Инструкция объявления констант выглядит так: ИмяКонстанты = значение константы; Теперь введем понятие переменной. Переменная – это величина, которая в ходе решения задачи может менять свои значения. В чем отличие переменной от константы? Для чего используются переменные? Переменные, в отличие от констант, могут менять свои значения при выполнении программы. В программировании переменную можно трактовать как одну или несколько ячеек оперативной памяти компьютера, которым присвоено определенное имя (идентификатор). Инструкция объявления переменных выглядит так: имя ИмяПеременной: тип; Содержимое этих ячеек может меняться, но имя переменной остается неизменным. Обычно переменные используются для хранения исходных данных, результатов программы, а также промежуточных данных, которые образуются по ходу выполнения алгоритма. Приступая к решению задачи, следует помнить, что: каждая переменная программы должна быть объявлена в программе: объявление переменных помещают в раздел, который начинается словом var; константы помещают в раздел, который начинается словом const. В имени переменной можно использовать буквы латинского алфавита и цифры (первым символом должна быть буква); после инструкции объявления данных рекомендуется указывать назначение переменной или константы; Рассмотрим пример объявления переменных и констант. Пример: const min=1; {минимальное значение} max=54; {максимальное значение var k1: integer; {количество тетрадей} k2: byte; {количество карандашей} c1: real; {цена одной тетради} Вопрос. Как вы думаете, может ли быть верным данное высказывание а:=а+1? Это высказывание можно рассмотреть двояко: с точки зрения математиков и с точки зрения программиста. В результате чего мы увидим, что их мнения разойдутся. В математике значение переменной в рамках определенной задачи неизменно, поэтому математик сочтет это высказывание неверным. Для программиста это абсолютно правильная конструкция, которая задает вычисление суммы содержимого ячейки а и константы 1 и занесение полученного результата в ту же ячейку а. После выполнения этого действия старое значение переменной а будет потеряно, т.к. одна ячейка памяти не может вместить сразу несколько значений. Это очень важный момент в программировании. Для описания множества допустимых значений величины и совокупности операций, в которых может участвовать данная величина, используется указание ее типа данных. Тип данных (data type) – множество величин, объединенных определенной совокупностью допустимых операций. Как вы думаете имеет ли свой каждый тип свой диапазон значений и специальное зарезервированное слово для описания? Все типы данных можно разделить на две группы: простые и структурированные (составные). Сейчас мы рассмотрим более подробно простые типы данных. В связи мы не будем забывать заполнять таблицу, которая у вас на столе. Все типы данных делятся на целочисленные, вещественные, литерные, строковые и булевские. Итак, первую колонку таблицы мы заполнили. Вещественные типы данных представляют собой вещественные значения, которые могут использоваться в арифметических выражениях и занимать в памяти от 4 до 6 байт. Паскаль допускает представление вещественных значений и с плавающей запятой, и с фиксированной точкой. Вещественные значения могут изображаться в форме с фиксированной точкой, например 7.32, 456.721 или 0.015, а также в форме с плавающей точкой, т.е. парой чисел вида <мантисса>Е<порядок> (7.32Е+00, 4.56721Е+02, 1.5Е-02). Литерный (символьный) тип Литерный (символьный) тип char определяется множеством значений кодовой таблицы ПЭВМ. Каждому символу приписывается целое число в диапазоне от 0 до 255. Для размещения в памяти переменной литерного типа требуется один байт. Булевский тип Булевским типом называют тип данных, представляемый двумя значениями true (истина) и false (ложь). Он широко применяется в логических выражениях и выражениях отношения. Для размещения в памяти переменной булевского типа требуется 1 байт. Итак, мы с вами заполнили таблицу по типам данных. Теперь она лежит у вас на столах полностью готовая, в ходе урока можете ей пользоваться. Тип данных Диапазон Требуемая память byte 0..255 1 shortint -128..127 1 Целочисленные integer -32768..32767 2 word 0..65535 2 longint 2147483648..2147483647 4 Вещественные real 2.9*10E – 6 - 4 – 8 – 10 39..1.7*10E38 single 1.5*10E 45..3.4*10E38 5.0*10E 324..1.7*10E308 double 1.9*10E 4951..1.1*10E4932 extended comp -2E+63+1..2E+63-1 8 Литерные(char) 0..255 1 Строковые(string) 0..255 1 Булевские принимает 2 значения: 1 true, false Теперь немного поговорим о константах. Как вы думаете какие виды констант имеются? В языке Turbo Pascal используются константы следующих видов: числовые, логические (булевские), символьные и строковые. Опираясь на выше приведенные примеры, назовите числовые константы. Числовые константы предназначены для представления числовых данных (целых и вещественных). Булевские константы используются для представления данных, имеющих смысл логических высказываний (да - нет, истина – ложь, 1 - 0). Символьные и строковые константы – это отдельные символы и их последовательности. Рассмотрим другую классификацию по типам данных. Структурированные типы данных В сложных типах данных выделяют следующие разновидности: регулярный тип (массивы); комбинированный тип (записи); файловый тип (файлы); множественный тип (множества); строковый тип (строки). Подробно мы не будем углубляться в изучение этих типов данных, а только рассмотрим некоторые из них. Строки Строка (string) – это последовательность символов кодовой таблицы персонального компьютера. Количество символов в строке может изменяться от 0 до 255. Записи Для записи комбинации объектов разных типов в Паскале применяется комбинированный тип данных – запись (record). Например, товар на складе описывается следующими величинами: наименование, количество, цена, наличие сертификата качества и т.д. В этом примере наименование – величина типа string, количество – integer, цена – real, наличие сертификата – boolean. Рассмотрим несколько задач на объявление данных простого типа. Возьмем задачу, которую решали в начале урока математическим способом. Задача 1. Объявите переменные, необходимые для вычисления значения функции у=х2. Учитель. Сформулируйте, пожалуйста, инструкцию объявления переменных! Прежде чем записать инструкцию объявления переменных для вычисления того или иного выражения или функции, необходимо выделить несколько этапов решения задачи: 1. записать формулу; 2. определить количество переменных, входящих в эту формулу; 3. определить какой тип может быть у этих переменных. 4. важно помнить, что программа должна занимать минимально памяти компьютера, а это напрямую зависит от выбранного типа данных. Итак, еще раз проанализируем данную задачу, используя этапы решения задачи. Анализ задачи. Сколько переменных входят в данную формулу у=х2? Какое значение имеет переменная х? Какое значение имеет переменная у? Какого типа могут быть переменные? Если переменная х – целого типа, то какого типа должна быть переменная у? Какие варианты инструкции объявления переменной для вычисления данной функции могут быть? Запишем их. Вариант 1. var х:real; {аргумент} у: real; {функция} Вариант 2. var х:integer;{аргумент} у:integer;{функция} Вариант 3. var х: integer; {аргумент} у:real;{функция} Мы видим, что одна и та же переменная может принимать различные значения. Какой из этих вариантов самый приемлемый и почему? Аналогично попробуем сделать задачу, в которой требуется найти площадь круга. Задача 2. Объявите данные, необходимы для вычисления площади круга. Анализ задачи. Запишем формулу для вычисления площади круга: s=Pir2. Сколько переменных входят в данное выражение? Есть ли еще данные, кроме переменных, входящих в данную формулу? Чем является число - переменной или константой? Какое значение имеет переменная r? Какое значение имеет переменная s? Если переменная r – целого типа, то какого типа должна быть переменная s? Запишем инструкцию объявления данных. const pi=3.14 ; {число } var r: real; {радиус} s: real; {площадь} Задача 3. Объявите данные, необходимы для вычисления стоимости покупки, состоящей из нескольких тетрадей, карандашей и линейки. Анализ задачи. Запишем формулу для вычисления стоимости покупки: s=k1*c1+k2*c2+c3. Какое значение имеют переменные k1, k2? Какое значение имеют переменные с1, с2, с3? Какое значение имеет переменная s? Запишем инструкцию объявления данных. var k1: real; {количество тетрадей} k2: real; {количество карандашей} с1: real; {цена одной тетради} с2: real; {цена одного карандаша} с3: real; {цена линейки} s: real; {стоимость покупки} 4. Подведение итогов урока Какова была тема нашего урока? Учитель. На этом уроке вы узнали о типах данных языка Паскаль. Давайте еще раз проанализируем данную таблицу, отображающую типы данных. И обобщим услышанное во время лекции. Ответьте, пожалуйста, на вопросы: Какие данные различают в языке Паскаль? (Ответ: переменные и константы). На какие две основные группы можно разделить эти данные? (Ответ: простые и структурированные). Посмотрите на схему и назовите основные типы данных. (Ответ: литерные, вещественные, целые, булевские, строковые). Почему важно правильно определить тип данных при составлении программы? (Ответ: для того чтобы программа занимала меньший объем памяти и не было сбоев в программе). Как выглядят инструкции объявления констант и переменных? (Ответ: const ИмяКонстанты=Значение; var ИмяПеременной: тип;) Учитель. Большое всем спасибо за работу. Очень рада, что вы внимательно слушали, помогали мне в работе. И теперь главное, хорошо подготовиться дома к следующему занятию. IV. Домашнее задание Знать материал лекции. Знать зарезервированные слова для различных типов данных. Задачи (по карточкам). V. Карточка для домашнего задания . Объявите переменные, необходимые для вычисления стоимости покупки, состоящей из нескольких тетрадей и такого же количества обложек.