Тема урока:Файлы и их обработка. Структурированные данные
Тема урока:Файлы и их обработка. Структурированные данные
Сегодня на уроке мы должны представить целостную картину о типах данных языка Паскаль. Приготовьтесь к внимательному восприятию информации. По ходу лекции будет демонстрироваться презентация, в которой отображены важные моменты темы. Их необходимо записать себе в тетрадь.
Функционирование любой программы связано с обработкой данных. Данные, предназначенные для обработки, называются исходными и задаются обычно в начале программы. Программа по ходу выполнения может запрашивать недостающие исходные данные.
В процессе выполнения программы исходные данные преобразуются в результаты.
Каждый элемент данных, используемый в программе, является константой или переменной.
Перечень типов данных в языке Турбо Паскаль можно представить в виде следующей схемы:
Вы уже знаете о суперспособностях современного учителя?
Тратить минимум сил на подготовку и проведение уроков.
Быстро и объективно проверять знания учащихся.
Сделать изучение нового материала максимально понятным.
Избавить себя от подбора заданий и их проверки после уроков.
Просмотр содержимого документа
«Тема урока:Файлы и их обработка. Структурированные данные»
Файлы и их обработка. Структурированные данные
Сегодня на уроке мы должны представить целостную картину о типах данных языка Паскаль. Приготовьтесь к внимательному восприятию информации. По ходу лекции будет демонстрироваться презентация, в которой отображены важные моменты темы. Их необходимо записать себе в тетрадь.
Функционирование любой программы связано с обработкой данных. Данные, предназначенные для обработки, называются исходными и задаются обычно в начале программы. Программа по ходу выполнения может запрашивать недостающие исходные данные.
В процессе выполнения программы исходные данные преобразуются в результаты.
Каждый элемент данных, используемый в программе, является константой или переменной.
Перечень типов данных в языке Турбо Паскаль можно представить в виде следующей схемы:
Структурированные типы данных определяют упорядоченную совокупность скалярных переменных и характеризуются типом своих компонентов.
Структурированные типы данных в отличие от простых задают множества сложных значений с одним общим именем. Можно сказать, что структурные типы определяют некоторый способ образования новых типов из уже имеющихся.
Существует несколько методов структурирования. По способу организации и типу компонентов в сложных типах данных выделяют следующие разновидности: регулярный тип (массивы); комбинированный тип (записи); файловый тип (файлы); множественный тип (множества); строковый тип (строки); в языке Турбо Паскаль версии 6.0 и старше введен объектный тип (объекты).
В отличие от простых типов данных, данные структурированного типа характеризуются множественностью образующих этот тип элементов, т.е. переменная или константа структурированного типа всегда имеет несколько компонентов. Каждый компонент в свою очередь может принадлежать структурированному типу, т.е. возможна вложенность типов.
Все структурированные типы данных требуют отдельного рассмотрения и будут подробно изучены нами в дальнейшем, а сегодня мы только их определим.
Строки. Строка (string) – это последовательность символов кодовой таблицы персонального компьютера. Количество символов в строке может изменяться от 0 до 255.
Массивы. Простые типы определяют различные множества неразделимых значений. В отличие от них структурированные типы задают множества сложных значений, каждое из которых образует совокупность нескольких значений другого типа. В структурных типах выделяют регулярный тип (массивы - array). Название регулярный тип (или ряды) массивы получили за то, что в них объединены однотипные элементы, упорядоченные (урегулированные) по индексам, определяющим положение каждого элемента в массиве.
Множества. Множество (set) – это структурированный тип данных, представляющий собой набор взаимосвязанных по какому-либо признаку или группе признаков объектов, которые можно рассматривать как единое целое. Каждый объект в множестве называется элементом множества. Все элементы множества должны принадлежать одному из скалярных типов, кроме вещественного.
Записи. Для записи комбинации объектов разных типов в Паскале применяется комбинированный тип данных – запись (record). Например, товар на складе описывается следующими величинами: наименование, количество, цена, наличие сертификата качества и т.д. В этом примере наименование – величина типа string, количество – integer, цена – real, наличие сертификата – boolean.
Запись представляет собой наиболее общий и гибкий структурированный тип данных, так как она может быть образована из неоднотипных компонентов и в ней явным образом выражена связь между элементами данных, характеризующими реальный объект.
Файлы. Большие совокупности данных удобно иметь записанными во внешней памяти в виде последовательности сигналов. В Паскале для этих целей предусмотрены специальные объекты – файлы (file). Файлом называется совокупность данных, записанная во внешней памяти под определенным именем.
Рассмотри задачи на объявление переменных и констант скалярного типа.
Приступая к решению задач на объявление данных скалярного типа, следует помнить, что:
каждая переменная программы должна быть объявлена;
объявление переменных помещают в раздел, который начинается словом var; константы помещают в раздел, который начинается словом const; переменные пользовательских типов (перечисляемые и интервальные) объявляют по особой схеме;
В имени переменной можно использовать буквы латинского алфавита и цифры (первым символом должна быть буква);
после инструкции объявления данных рекомендуется указывать назначение переменной или константы;
инструкция объявления констант выглядит так: ИмяКонстанты = значение константы;
Пример:
const
min=1; {минимальное значение}
max=54; {максимальное значение}
инструкция объявления переменных выглядит так: имя ИмяПеременной: тип;
var
k1: integer; {количество тетрадей}
k2: byte; {количество карандашей}
c1: real; {цена одной тетради}
инструкция объявления переменных интервального типа помещается в двух разделах type, var и выглядит так:
type
=( ..);
var
: ;
Пример:
type
days=1..31 ; {дни месяца}
var
rabotday: days; {рабочие дни}
vihodday: days; {выходные дни}
инструкция объявления переменных перечисляемого типа помещается в двух разделах type, var и выглядит так:
Подготовить сообщение о любой прикладной программе.
20-21урок
Функции для работы с символьными строками
1. Операция сложения символьных величин.
Операция сложения позволяет строить из двух символьных строк третью, состоящих из символов первой, за которой следуют символы второй. Обозначается эта операция знаком "+".
Пример 1.
Описываем строковые переменные.
var s1, s2, s3: string;
Присваиваемое значение строки заключается в апострофы. Присвоим первым двум следующие значения, а третья будет равна их склеиванию:
s1: = ' Тише воды, ';
s2:= 'нижетравы’;
s3:=s1+’’+s2;
Строка s3 имеет значение 'Тише воды, ниже травы'.
2. Длина строки
Под длиной строки понимается количество введенных символов, но она не может превышать максимально возможной длины (в описательной части). Это значение можно определить при помощи функции, результат которой целое число, равное количеству символов.
Пример 2.
s1:='12345'; s2:= 'Семеро одного не ждут’; k1:=Length(s1); k2:=Length(s2).
В результате значения целых переменных будут равны: kl=5, k2=21.
3. Копирование
Функция copy(str,n,m) в Turbo Pascal 7.0 – копируют тсимволов строки str, начиная с n-го символа, при этом исходная строка не меняется. Можно результат этой функции присваивать другой строке или сразу выводить его на экран.
Значения переменной s1=’воз’. А на экране будут выведены следующие строки: воз и 34.
4. Удаление
В Turbo Pascal 7.0 для этого используется процедура Delete(str, n,m), которая вырезает из строкиstr m символов, начиная с n-го. таким образом сама строка изменяется.
Пример 4.
Дан фрагмент программы:
s:='123456'; delete(s, 3, 2); writeln(s);
После выполнения этих операторов из строки будут удалены два символа, начиная с третьего, то есть строка будет такой: s = '1256'.
5. Замена (Вставка)
В Turbo Pascal 7.0 это можно сделать, применяя процедуру Insert(s1,s2,n) – вставка строки s1 в строку s2, начиная с п-го символа, при этом первая строка остается такой же, как и была, а вторая получает новое значение.
Пример 5.
s1;='34': s2:='1256'; insert (s1, s2, 3);
В результате выполнения данной процедуры строка будет такойs2='123456'.
6. Числа и строки
Надо заметить, что число 25 и строка 25 – это не одно и то же. Для работы с числами и строками в Turbo Pascal 7.0 применяются две процедуры.
Str(n,s1) – переводит числовое значение n в строковое и присваивает результат строке s1, причем можно переводить как целые числа, так и вещественные.
Пример 6.1
n:=12; str(n,s1); - после выполнения s1 ='12';
Существует обратная операция, переводящая строковое значение в числовое.
Функция val(s, n, k) – переводит строковое значение в числовое, если данная строка действительно является записью числа (целого или вещественного), то значение k=0, а n – это число, иначе k будет равно номеру символа, в котором встречается первое нарушение записи числа n.
Пример 6.2
val(‘1234',n,k) п=1234, k=0;
7. Функции преобразования типов
Иногда в программах возникает необходимость по коду определить символ и, наоборот, по символу определить его код. Для этого используют функцию: CHR(x).
Эта функция возвращает символ, соответствующий ASCII-коду числа x.
Пример 7.1
for i = 0 to 255 do writeln( i,' ', chr(i));
Для определения кода по символу используют функцию ORD.
Пример 7.2
readln(s); writeln(ord(s));
Домашнее задание:
Подобрать пословицу, содержащую старинные слова, вырезать из пословицы эти слова и записать значение каждого такого слова.