Элементы языка Турбо Паскаль.
Основные понятия языка программирования Турбо Паскаль.
План.
1. Некоторые сведения о системе программирования Турбо Паскаль.
2. Структура программы на Паскале.
3. Элементы языка Турбо Паскаль.
4. Типы данных.
5. Арифметические операции и выражения.
6. Стандартные функции.
7. Оператор присваивания.
Некоторые сведения о системе программирования Турбо Паскаль.
Язык Паскаль был разработан в 1971 году Никласом Виртом первоначально для целей обучения программированию. В настоящее время он получил широкое распространение по ряду объективных причин.
Во-первых, по своей идеологии Паскаль наиболее близок к современной методике и технологии программирования. В частности, он достаточно полно отражает идеи структурного программирования, что довольно хорошо видно даже из основных управляющих структур языка.
Во-вторых, Паскаль хорошо приспособлен для применения технологии разработки программ сверху-вннз (пошаговой детализации).
В-третьих, Паскаль содержит большое разнообразие различных структур данных, что обеспечивает простоту алгоритмов, а следовательно снижение трудоемкости при разработке программ.
Система программирования Turbo Pascal предназначена для выполнения этапов решения задачи на алгоритмическом языке Паскаль и включает в себя три главные компоненты: 1) редактор текстов; 2) компилятор; 3) исполнительную систему.
С помощью встроенного в систему текстового редактора можно формировать в памяти любые тексты, не только программы на Паскале. В частности, это могут быть исходные данные решаемой задачи в текстовой форме. Текст программы, созданный редактором, можно сохранить на диске в виде файла с именем следующего формата <имя файла>.раs, где pas — это стандартное расширение имени файла, созданного системным редактором. Имя файла задается пользователем.
|
|
Компиляция - это процесс перевода программы на язык машинных команд. Компилятор переводит программу с языка Паскаль на язык машинных команд. При этом проверяется соответствие программы правилам языка программирования (синтаксический и семантический контроль). При обнаружении ошибки компьютер выдает сообщение о ней пользователю и прекращает работу. В результате компиляции Turbo Pascal создает исполняемый файл с тем же именем, что и файл, содержащий программу, но с расширением .ехе. Впоследствии этот файл может быть выполнен, как любой другой исполняемый файл.
Выполнение программы остается под контролем исполнительной системы. Она, в частности, помогает обнаружить ошибку в программе, если при исполнении произошел сбой. Пользователю сообщается причина сбоя и указывается место, где он случился в Паскаль-программе, происходит автоматический возврат в режим редактирования.
|
|
Turbo Pascal позволяет редактировать, компилировать, компоновать и выполнять Паскаль-программы. При этом пользователю предоставляется высокая скорость компиляции, удобство работы с компьютером и мощная библиотека процедур и функций.
Структура программы на Паскале.
Программа на Паскале в общем случае состоит из нескольких файлов. Один из них содержит главную программу, а остальные – модули. Главная программа состоит из заголовка, блока и заканчивается точкой — признаком конца программы. В свою очередь, блок содержит разделы описаний и раздел операторов. В общем случае «скелет» программы можно представить следующим образом:
{Спецификация программы }
program <имя программы> (заголовок программы);
uses (раздел объявления модулей);
label (раздел объявления меток);
const (раздел объявления констант);
type (раздел объявления типов);
var (раздел объявления переменных);
|
|
procedure (function) (раздел объявления подпрограмм: процедурили функций);
Begin
<операторы > (раздел операторов, обязательная часть);
end.
Все указанные разделы отделяются друг от друга точкой с запятой.
Раздел операторов должен обязательно присутствовать в любой программе и является основным. Предшествующие разделы носят характер описаний и не обязательно содержаться в программе.
Заголовок программы состоит из зарезервированного слова program и имени программы (со списком параметров, заключенных в круглые скобки). Завершается заголовок точкой с запятой.
В Turbo Pascal имеются особенности в структуре программы. Так, заголовок программы необязателен и игнорируется компилятором. Порядок размещения разделов произвольный, можно создавать несколько одинаковых разделов. Единственное правило, которое необходимо выдерживать, - в любом месте программы можно использовать лишь элементы (метки, типы, константы, переменные, подпрограммы и т. д.), которые были определены ранее по тексту программы или являются предопределенными элементами языка. Исключением из этого правила может быть лишь определение типа-указателя через неопределенный до этого тип. Однако этот тип в дальнейшем должен быть обязательно определен.
|
|
Операторы в разделе операторов отделяются друг от друга точкой с запятой. Перед end точка с запятой не ставится, однако ее наличие не является ошибкой, а лишь означает присутствие между последним исполняемым оператором и служебным словом end еще одного оператора - пустого оператора. Заканчивается программа словом end, после которого обязательно ставится точка.
В начале программы необходимо располагать ее спецификацию – комментарий в фигурных скобках, содержащий назначение программы, данные о программисте, дату создания программы.
Язык программирования Паскаль является языком структурного программирования. В нем есть все необходимые управляющие конструкции для структурного построения программы. Наглядность такому построению придает структуризация внешнего вида текста программы. Основной используемый для этого прием — сдвиги строк, которые должны подчиняться следующим правилам:
§ конструкции одного уровня вложенности записываются на одном вертикальном уровне (начинаются с одной позиции в строке);
§ вложенная конструкция записывается смещенной по строке на несколько позиций вправо относительно внешней для нее конструкции.
Элементы языка Турбо Паскаль.
Алфавит языка состоит из множества символов, включающих:
– Латинские буквы: от A до Z (прописные) и от а до z. (строчные);
– Знак подчеркивания _;
– Цифры: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9;
– Специальные символы: + — * / (знаки арифметических операций),= <> <= >= (операции отношения), : = (операции присваивания), [ ] . , ( ) : ; { } ^ @ $ # ‘ (ограничители). К спецсимволам относятся служебные слова, смысл которых определен однозначно (begin, end, for, div и т.д.).
– Пробел — символ пробела (ASCI1-32) и все управляющие символы кода ASCII (от 0 до 31).
Идентификаторы. Идентификатором называется символическое имя определенного программного объекта. Такими объектами являются имена констант, переменных, типов данных, процедур и функций, программ. Идентификатор — это любая последовательность букв и цифр, начинающаяся с буквы. В Турбо Паскале к буквам приравнивается также знак подчеркивания. Строчные и прописные буквы в идентификаторах и служебных словах не различаются. Например: max, MAX, MaX и mAx — одно и то же имя. Длина идентификатора может быть произвольной, но значащими являются только первые 63 символа.
Комментарии. Конструкции, заключенные в фигурные скобки {} или в скобки вида (* *) являются комментариями, могут занимать несколько строк и игнорируются компилятором.
Строка, начинающаяся с символов {$ или (*$, является директивой компилятора. За этими символами следует мнемоника команды компилятора.
Буквы русского алфавита употребляются только в комментариях, в литерных и текстовых константах.
Типы данных.
Концепция типов данных является одной из центральных в любом языке программирования.
Программа, написанная на языке Паскаль, предназначена для обработки данных. В качестве данных могут выступать числа, тексты, последовательности битов и т. д. Одни данные являются исходными (или входными), другие являются результатами (или выходными). В зависимости от способа их хранения и обработки в ЭВМ данные можно разделить на две группы: константы и переменные.
Константы определяют значения, которые известны до того, как программа начинает выполняться, и не могут изменяться в процессе ее работы. Константе может быть поставлено в соответствие определенное имя. Назначение имени константе производится в разделе констант программы:
Const
Max=1000;
G=9.81;
Kod=’ошибка’;
Константы, применяемые в программах, могут быть числовыми, логическими, символьными и строковыми.
Числовые константы могут быть целыми и вещественными (действительными).
В Турбо Паскале целые константы могут быть десятичными и шестнадцатеричными. Целые десятичные константы представляют собой последовательность десятичных цифр, которой может предшествовать знак «+» или «-», при этом знак «+» может быть опущен.
Шестнадцатеричные константы состоят из цифр 0, 1,2, 3, 4, 5, 6, 7, 8, 9, А, В, С, D, E, F и начинаются символом $.
Вещественные, или действительные, константы могут изображаться в двух формах: либо в естественной форме (форма с фиксированной точкой), либо в полулогарифмической форме (форма с плавающей точкой).
В естественной форме число записывается в виде целой и дробной частей, разделенных десятичной точкой. Константы -99.9, 0.12, +34.09, 99.0 - вещественного типа.
Числа, записанные в виде: 9,10956·10-28 можно такие записывать и в языке Паскаль. Часть числа, которая читается как «умножить на десять в степени», сокращается до «Е» или «е», и такое число выглядит в программе следующим образом: 9.10956Е-28. Цифры, предшествующие букве Е, образуют мантиссу числа, а за буквой Е пишется целый порядок. Мантисса и порядок могут иметь знак «+» или «—». Такая форма записи чисел называется полулогарифмической.
Логические, или булевы, константы имеют два значения: true (истинно) и false (ложно).
Символьной константой является символ, заключенный в апостроф: ‘ь’, ‘9’.
Строковая константа, или просто строка, - это последовательность символов языка, заключенная в апострофы и не содержащая непарных апострофов: 'Это строковая константа', 'Summa = а + b'. Для представления апострофа используются два апострофа: 'об"ект'.
Для того чтобы ЭВМ выделила место в памяти, каждая переменная, используемая в программе, должна быть определена в специальном разделе описания переменных:
Var
<список переменных_1>: <тип_1>;
<список переменных_2>: <тип_2>;
Тип переменной определяет объем выделяемой памяти, структуру переменной, множество значений этой переменной, набор операций, которые к ней могут быть применены, а также тип результата выполнения этих операций. Каждый тип имеет свой идентификатор. Турбо Паскаль характеризуется большим разнообразием типов данных, отраженном на рисунке.
В таблице представлена информация о простых типах данных, определенных в Турбо Паскале. Для вещественных типов в скобках указано количество сохраняемых значащих цифр мантиссы в десятичном представлении числа (значащими цифрами называются все цифры в записи числа, начиная с первой, отличной от нуля).
Идентификатор типа | Диапазон значений величины | Длина ячейки в байтах |
Целые типы | ||
Byte | 0 .. 255 | 1 |
Shortint | -128 … 127 | 1 |
Word | 0 .. 65535 | 2 |
Integer | -32768 .. 32767 | 2 |
Longint | -2147483648 .. 2147483647 | 4 |
Вещественные типы | ||
Single | 1,5·10-45 .. 3,4·10+38 (7-8) | 4 |
Real | 2,9·10-39 .. 1,7·10+38 (11-12) | 6 |
Double | 5,0·10-324 .. 1,7·10+308 (15-16) | 8 |
Extended | 3,4·10-4932 .. 1,1·10+4932 (19-20) | 10 |
Comp | -263 +1 .. 2+63 -1 (19-20) | 8 |
Логический тип | ||
Boolean | false, true | 1 |
Символьный тип | ||
Char | Все символы кода ASCII | 1 |
Один из принципиальных моментов состоит в том, что пользователю разрешается определять свои типы данных. Типы пользователя всегда базируются на стандартных типах данных Паскаля.
Для описания типов пользователя в Паскале существует раздел типов, структура которого имеет вид:
Type
<имя_типа_1>= <тип>;
<имя_типа_2>= <тип>;
Тип данных называется порядковым, если он состоит из счетного количества значений, которые можно пронумеровать. Каждое значение имеет порядковый номер (целое число). В любом порядковом типе каждому значению, кроме первого, предшествует другое значение, и после каждого значения, кроме последнего, следует другое значение в соответствии с упорядоченностью типа. Перечисляемый тип — упорядоченное множество. Его элементы пронумерованы начиная от 0 в порядке следования в описании.
Перечисляемый тип задается непосредственно перечислением всех значений, которые может принимать переменная данного типа.
Например, TDay=(Morning, Afternoon, Evening, Night).
Определенное имя типа затем используется для описания переменных:
Type
TGaz=(C,O,N,F);
TMetall=(Fe,Co,Cu,Zn,Na);
Var
G1,G2,G3: TGaz;
Met1, Met2: TMetall;
Week: (Sun,Mon,Tue,Wed,Thu,Fri,Sat);
Здесь TGaz и TMetall — имена перечисляемых типов, которые ставятся в соответствие переменным Gl, G2, G3 и Metl, Met2. Переменной Week назначается перечисляемый тип, которому не присвоено имя.
Интервальный тип задается как упорядоченное ограниченное подмножество некоторого порядкового типа: <имя_типа>: <константа_1>..<константа_2>;
Порядковый номер первой константы не должен превышать номера второй константы в соответствующем базовом типе.
Type
TDay=1..31;
TAlf=’A’..’Z’;
Var
Data: TDay;
Month: 1..12;
Bukva: TAlf;
При исполнении программы автоматически контролируется принадлежность значений переменной интервального типа установленному диапазону. При выходе из диапазона исполнение программы прерывается.
Дата добавления: 2018-06-01; просмотров: 758; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!