Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Порядок использования множеств
Описание типа множество начинается со слов Set of, после которых в круглы скобках перечисляются элементы множества через запятую; Элементы множества могут быть представлены элементами любого простого типа (кроме вещественного). Элементы множества образуют базовый тип множества; Базовый тип задается либо диапазоном, либо перечислением. Объявление переменных типа множество: - с предварительным объявлением типа: - Type < Имя типа> = set of (< элемент1>, < элемент2>,.., < элементN> ); - Var < Идентификатор, …> : < Имя типа>; - без предварительного объявления типа множества: - Var < Идентификатор, …> : set of (< элемент1>, < элемент2>,.., < элементN> ); Множества могут использоваться в теле программы без предварительного описания. В этом случае значения элементов множества указываются в квадратных скобках [1, 2, 3, 4] непосредственно. Операции над множествами: - допускаются операции отношения ( =, < >, > =, < =) - порядок следования значения не имеет; объединения (+); пересечения (*); разности (-); операция In. (проверка вхождения в множество) – пример: If A in [1, 2, 3, 4] then … - результат вычислений над множествами получается логического типа; Файл. Тип файл представляет собой последовательность компонент одного типа, расположенных на внешнем устройстве. Компоненты могут быть любого типа, за исключением типа файл и типа объект. Число компонент в файле не объявляется. Порядок использования типа ФАЙЛ: - Описание типа файл начинается со слов file of, после которых указывается тип компонентов файла. В описании типа файл может быть применен стандартный тип text, содержащий символы, объединенные в строки. - Объявление (описание) переменной типа файл: - с предварительным объявлением типа: - Type < Имя типа> = file of < тип компонентов файла>; - Var < Имя переменной, …> : < Имя типа>; - без предварительного объявления типа множества: - Var < Имя переменной, …> : file of < тип элементов файла>; - Множества могут использоваться в теле программы без предварительного описания. В этом случае значения элементов множества указываются в квадратных скобках [1, 2, 3, 4] непосредственно. Операции над файловыми переменными: Файловые переменные имеют специфическое применение. Над ними нельзя выполнять никаких операций (присваивать значение, сравнивать и т.д.). Их можно использовать лишь для выполнения операций с файлами (чтения, записи, удаления файла и т.д.). Язык программирования Си Основы языка Алфавит языка В языке Си используются (являются допустимыми) все символы латинского алфавита: A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z. Цифры: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. Специальные символы: , (запятая), ;, . (точка), +, -, *, ^, & (амперсанд), =, ~ (тильда), !, /, <, >, (, ), {, }, [, ], |, %, ?, ' (апостроф), " (кавычки), : (двоеточие), _ (знак подчёркивания). Из допустимых символов формируются лексемы — предопределённые константы, идентификаторы и знаки операций. В свою очередь, лексемы являются частью выражений; а из выражений составляются инструкции и операторы. При трансляции программы на Си из программного кода выделяются лексемы максимальной длины, содержащие допустимые символы. Если в программе имеется недопустимый символ, то лексический анализатор (или компилятор) выдаст ошибку, и трансляция программы окажется невозможной. Также имеется символ #, который не может быть частью никакой лексемы, и используется в препроцессоре. Основные элементы Си-программы В языке Си исходные файлы бывают двух типов: - заголовочные, или h-файлы - файлы реализации, или Cи-файлы Имена заголовочных файлов имеют расширение ".h". Имена файлов реализации имеют расширения ".c". Заголовочные файлы содержат только описания. Прежде всего, это прототипы функций. Также в h-файлах описываются имена и типы внешних переменных, константы, новые типы, структуры и т.п. При трансляции заголовочных файлов, как правило, никакие объекты не создаются. Заголовочный файл подключается с помощью директивы препроцессора #include. Например, описания стандартных функций ввода-вывода включаются с помощью строки: #include < stdio.h> Имя h-файла записывается в угловых скобках, если этот h-файл является частью стандартной Си-библиотеки и расположен в одном из системных каталогов. Имена h-файлов, созданных самим программистом в рамках разрабатываемого проекта и расположенных в текущем каталоге, указываются в двойных кавычках, например: #include " mylib.h" Функции Функция является основной структурной единицей языка Си. Функция –это фрагмент программы, который может вызываться из других программ. Функция обычно выполняет алгоритм, который описывается и реализуется отдельно от других алгоритмов. При вызове функции передаются аргументы, которые могут быть использованы в теле функции. Вызов функции происходит в результате использования ее имени в выражении. За именем функции следуют круглые скобки, внутри которых перечисляются фактические значения ее аргументов. Даже если аргументов нет, круглые скобки с пустым списком аргументов обязательно должны присутствовать! После вызова функции значение, возвращенное в результате ее выполнения, используется в выражении (имя функции как бы заменяется возвращенным значением). Примеры: x = sin(1.0); f(); Типы переменных В языке Си используются всего два базовых типа: целые и вещественные числа. Кроме того, имеется фиктивный тип void (" пустота" ), который применяется либо для функции, не возвращающей никакого значения, либо для описания указателя общего типа (когда неизвестна информация о типе объекта, на который ссылается указатель). Целочисленные типы Целочисленные типы различаются по длине в байтах и по наличию знака. Их четыре: char, short, int и long. Кроме того, к описанию можно добавлять модификаторы unsigned или signed для беззнаковых (неотрицательных) или знаковых целых чисел. Тип int Самый естественный целочисленный тип – это тип int, от слова integer –целое число. Тип int всегда соответствует размеру машинного слова или адреса. Все действия с элементами типа int производятся максимально быстро. Всегда следует выбирать именно тип int, если использование других целочисленных типов не диктуется явно спецификой решаемой задачи. Параметры большинства стандартных функций, работающих с целыми числами или символами, имеют тип int. В современных архитектурах элемент типа int занимает 4 байта. Элементы типа int трактуются в Си как числа со знаком. Тип char Тип char представляет целые числа в диапазоне от -128 до 127. Элементы типа char занимают один байт памяти. Слово " char" является сокращением от character, что в переводе означает " символ". Действительно, традиционно символы представляются их целочисленными кодами, а код символа занимает один байт. Тем не менее, подчеркнем, что элементы типа char–это именно целые числа, с ними можно выполнять все арифметические операции. Стандарт Си не устанавливает, трактуются ли элементы типа char как знаковые или беззнаковые числа, но большинство Си-компиляторов считают char знаковым типом. Вещественные типы Вещественных типов два: длинное вещественное число double (переводится как " двойная точность" ) и короткое вещественное число float (переводится как " плавающее" ). Вещественное число типа double занимает 8 байтов, типа float –4 байта. Тип double является основным для компьютера. Тип float –это, скорее, атавизм, оставшийся от ранних версий языка Си. Компьютер умеет производить арифметические действия только с элементами типа double, элементы типа float приходится сначала преобразовывать к double. Точность, которую обеспечивает тип float, низка и не достаточна для большинства практических задач. Все стандартные функции математической библиотеки работают только с типом double. Синтаксис языка Идентификаторы Допустимый идентификатор — это слово (лексема), составленное из допустимых символов алфавита языка программирования, не являющееся знаком некоторой операции или разделителем. Идентификаторы — это те имена, которые даются программным объектам — (именованным) константам, переменным, типам и функциям. Некоторые лексемы являются зарезервированными (или, что то же самое, ключевыми) словами (см. ниже), и, поэтому, не могут быть использованы в программе в качестве идентификаторов программных объектов. Предопределённые константы Для введения в программе на Си именованных констант используется директива препроцессора #define: #define имя константы [значение];. Введённая таким образом константа будет действовать всюду, начиная с момента задания константы и до конца программного кода или до тех пор, пока действие заданной константы не отменено другой директивой: #undefine имя константы;. Как и для всякого макроса, для именованной константы происходит автоматическая подстановка значения константы в программном коде всюду, где употреблено имя константы. Если для именованной константы указано некоторое значение, то для константы определяется так же и тип, соответствующий виду задаваемого значения. Различают следующие типы констант: - числовые (целочисленные или вещественные); - символьные (выделяются знаком апострофа); - текстовые строки (выделяются знаком двойных кавычек). Ключевые слова Ключевые слова — это лексемы, которые зарезервированы компилятором для обозначения типов переменных, класса хранения, элементов операторов. Стандартом С89 предусмотрены следующие ключевые слова: - для указания операции получения размера объекта: sizeof - для описания прототипа объекта: typedef - для обозначения класса хранения переменных: auto, register - для обозначения того, что объект описывается в другом месте extern - для обозначения того, что объект статический static - для обозначения типа переменных char, short, int, long, signed, unsigned, float, double, void - struct (структура), enum (перечисление), union - для обозначения операторов цикла: do, for, while - для обозначения условного оператора: if, else - для обозначения оператора выбора: switch, case, default - операторы прерывания исполнения кода: break, continue - для обозначения оператора безусловного перехода: goto - для обозначения оператора возврата из функции: return. - В стандарте C99 добавлены следующие ключевые слова: - для обозначения того, что функция является встраиваемой: inline - для обозначения типа переменной: _Bool, _Complex, _Imaginary |
Последнее изменение этой страницы: 2017-04-12; Просмотров: 473; Нарушение авторского права страницы