![]() Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву ![]() Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Паскаль как язык структурно-ориентированного программированияСодержание книги
Поиск на нашем сайте
Паскаль чаще всего является основным языком, изучаемым в школе. Краткие сведения Паскаль-программа (консольное приложение в DELPHI) является текстовым файлом с собственным именем и расширением.pas. Схематически программа представляется в виде последовательности восьми разделов: 1. Заголовок программы. 2. Описание внешних модулей, процедур и функций. 3. Описание меток. 4. Описание констант. 5. Описание типов переменных. 6. Описание переменных. 7. Описание функций и процедур. 8. Раздел операторов. Основные операторы языка Реализация последовательности действий (структуры следования) выполняется с помощью составного оператора: begin <последовательность операторов> end; Для реализации развилки в Паскале предусмотрены два оператора: условный оператор и оператор варианта (выбора). Первый выглядит так: if <логическое выражение> then <оператор1> else <оператор2>; или if <логическое выражение> then <оператор>;. Оператор варианта имеет следующую форму: case <выражение> of <список констант 1>: <оператор 1>; <список констант 2>: <оператор 2>; <список констант N>: <оператор N> end;. Для реализации циклов в Паскале имеются три оператора. Цикл с предусловием: while <логическое выражение> do <оператор>;. Действие: вычисляется значение логического выражения. Если оно равно true, то выполняется оператор, после чего снова вычисляется значение логического выражения, в противном случае действие заканчивается. Цикл с постусловием: Repeat Последовательность операторов> until <логическое выражение>; Действие: выполняется последовательность операторов. Далее вычисляется значение логического выражения. Если оно равно true, то действие заканчивается, иначе снова выполняется последовательность операторов и т.д. Цикл с параметром: for <параметр>:= <выражение 1> to <выражение 2> do <оператор> Параметр, выражение 1, выражение 2 должны быть одного ординального типа. Параметр в этом цикле возрастает. for <параметр>:=<выражение 1> downto <выражение 2> do <оператор>. Параметр в этом цикле убывает. Структуры данных Простые типы К ним относятся: real - вещественный; integer - целый; boolean - логический; byte - байтовый; char - символьный.
Перечисляемые и интервальные типы данных задаются с помощью простых типов Описание перечисляемого типа выполняется в разделе типов по схеме: type <имя типа> = <список имен> Примеры: type operator= (plus,minus,multi,divide); color= (white,red,blue,yellow,purple,green); Интервальный тип - это подмножество другого уже определенного простого типа, называемого базовым. Пример: type days = (mon,tue,wed,thu,fri,sat,sun); workdays = mon..fri; index=1..30; letter ='a'..'z'; Можно задать интервал и в разделе переменных: var а:1..100;b:-25..25; Составные типы Массив - это последовательность, состоящая из фиксированного числа однотипных элементов: type <имя типа> = array <список типов индексов> of <тип элементов>. Число типов индексов называется размерностью массива. После описания типа массива конкретные массивы можно задать в разделе описания переменных, например: type vector = array[l..10] of real; table = array [‘A’..’Z’,1..5] of integer; var a,b:vector; c: table; Описание массива-типа можно совместить с описанием соответствующих переменных: var a,b:array [1..10] of real; d: array [byte] of char; Строковый тип определяется в разделе описания типов, переменные этого типа - в разделе описания переменных: type word: string [20]; var a,b,с: word; или var a,b,c: string [20]; d: string [30]; Для строковых величин определены четыре стандартные функции: 1. Функция соединения - concat (si, s2,..., sk). 2. Функция выделения - copy (s, i, k). Из строки s выделяется к символов, начиная с i-го символа. 3. Функция определения длины строки - length (s). 4. Функция определения позиции - pos (s, t). Вычисляется номер позиции, начиная с которой строка s входит первый раз в строку /; результат равен 0, если строка s не входит в t Также определены четыре стандартные процедуры для обработки строковых величин: 1. Процедура удаления - delete (s, i, k). Из строки s удаляется к символов, начиная с i-го символа. 2. Процедура вставки - insert (s, t, i). Строка s вставляется в строку t, начиная с позиции i. 3. Процедура преобразования числа в строку символов - str (k, s). 4. Процедура преобразования строки из цифр в число - val (s, k, i). Множественный тип можно определить в разделе описания типов по схеме: type <имя> = set of <тип элементов>. Например: type t=set of byte; var a:t; или var code: set of 0..7; digits: set of '0'..'9'; Для данных множественного типа определены операции объединения, пересечения и дополнения множеств, обозначаемые соответственно знаками +, * и -, а также отношения равенства множеств (А = В), неравенства (А<>В), включения (А <= В, А >= В). Логическая операция принадлежности: х in А принимает значение true, если элемент х принадлежит множеству А и false в противном случае.
Запись - это последовательность, состоящая из фиксированного числа величин разных типов, называемых полями или компонентами записи: type имя типа записи = record имя поля 1: тип; имя поля 2: тип; имя поля N: тип end; Например, адресные данные (индекс, город, улица, номер дома, квартиры) можно представить как запись: type address = record index: string[6]; city: string[20]; street: string[20]; haus,flat: integer end; Подпрограммы В Паскале подпрограммы называются процедурами и функциями. Процедура имеет такую же структуру, как и программа, но с двумя отличиями: 1) заголовок процедуры имеет другой синтаксис: procedure <имя> (<список описаний формальных параметров>) 2) описание процедуры заканчивается точкой с запятой (а не точкой). <имя процедуры> (<список выражений>); Функция — это подпрограмма, определяющая единственное скалярное, вещественное или строковое значение. Отличия подпрограммы-функции от процедуры: 1) заголовок функции начинается со служебного слова function и заканчивается указанием типа значения функции: function <имя> (<список описаний формальных параметров>): <тип>; 2) раздел операторов функции должен содержать хотя бы один оператор присваивания имени функции или переменной result (в Object Pascal); 3) обращение к функции - не оператор, а выражение. Функции и процедуры могут быть рекурсивными. В Паскале имеются две встроенные процедуры ввода: 1) read <список переменных>; 2) readln <список переменных>. Имеются две процедуры вывода на экран дисплея: 1) write <список выражений>; 2) writeln <список выражений>. Файлы Для связи Паскаль-программы с внешними устройствами используют файловые переменные. Связь осуществляется оператором языка Паскаль: assign(<имя файловой переменной>,'<имя устройства>') или assignfile(<имя файловой переменной>,'<имя устройства>')(Object Pascal). Например: assign (f, 'primer.dat') Здесь f — имя файловой переменной, primer.dat — имя файла данных на внешнем носителе. После осуществления связи файловая переменная отождествляется с соответствующим файлом. Для работы с файлом его необходимо открыть, по окончании работы - закрыть. Файл открывается для чтения оператором reset (f), для записи - оператором rewrite (f). Чтение и запись данных осуществляется известными процедурами read/ write, только в начале списка помещается имя файловой переменной: read (f, <список ввода>); readln (f, <список ввода>); write (f, <список вывода>); writeln(f, <список вывода>). Закрытие файла осуществляется командой close (f) (closefile (f) (Object Pascal)). Команда reset (f) устанавливает указатель маркера файла на нулевое состояние. В системе Паскаль предусмотрены встроенные функции по работе с файлами: filesize (f) - возвращает текущее число компонент открытого файла; filepos (f) - возвращает номер текущей позиции маркера; rename (f,имя) - переименование файла, связанного с/; erase (f) - уничтожение файла; execute (f) - выполнение СОМ-файла; chain (f) - выполнение CHN-файла; seek (f, N) - устанавливает маркер на позицию N; eof (f) - возвращает TRUE, если найден конец файла; ealn(f) - возвращает TRUE, если найден конец строки. Файловый тип данных в программе задается по следующему правилу: type <имя файлового типа> = file of <тип компонентов>.
В качестве типа компонент файла разрешается использовать любой тип данных, кроме файлового. Например: type intfile = file of integer;
|
|||||||
Последнее изменение этой страницы: 2017-02-07; просмотров: 218; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.145.71.235 (0.007 с.) |