Pascal Pascal
Скачать 146 Kb.
|
PascalPascalПаскаль был разработан швейцарским ученым Никлаусом Виртом. Паскаль считается важнейшим инструментом для обучения методам структурного программирования и с 1983 г. введен в учебные курсы в школах для учащихся, которые специализируются в области информатики. В дальнейшем язык Паскаль совершенствовался и приобрел новые свойства, отличные от авторского варианта.Синтаксис языка программирования – это набор правил, которые определяют способы построения правильных программ из символов алфавита.Алфавит языка Паскаль26 латинских строчных и 26 латинских прописных букв: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 Za 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подчеркивание _10 цифр:0 1 2 3 4 5 6 7 8 9знаки операций:+ - * / = <> < > <= >= := @ограничители (разделители):. , ' ( ) [ ] (. .) { } (* *) .. : ;спецификаторы:^ # $Структура программыprogram Имя_Программы;label Описания_меток;const Описания_Констант;type Описания_Типов;var Описания_Переменных;procedure Описания_Процедур_и_функций;functionexports Описания_Экспортируемых_Имен;beginОператорыend.Упрощенная структура программыprogram Имя_Программы;const Описания_Констант;var Описания_Переменных;beginОператоры программыend.Разделителем операторов в Паскале является ; (точка с запятой)Комментарий представляет собой фрагмент текста программы, ограниченный символами { }. Комменнтарии в программе выполняют информационную функцию.{Моя первая программа }program first;beginwriteln(‘Hello, World!’)end.Пример: периметр прямоугольникаprogram perimetr; {заголовок программы}uses crt; {crt – необходим для очистки экрана}var a,b:integer; {объявление переменных}P:integer;Begin {начало программы}clrscr; {очистка экрана}a:=12; {присваиваем переменной а значение 12}b:=7; {присваиваем переменной b значение 7}P:=2*(a+b); {значение выражения присваиваем P}write('P = ',P); {выводим на экран значение P}end. {конец программы}Программа в своей работе имеет дело с данными. Некоторые данные устанавливаются еще до того, как программа начнет выполняться, а после ее запуска сохраняют свои значения неизменными на всем протяжении работы программы. Это константы. Другие данные могут изменяться во время выполнения программы. Они называются переменными. Под ячейкой мы в действительности подразумеваем «кусочек памяти» в котором хранится информация.Чтобы воспользоваться информацией, хранящейся в ячейке, нужно, чтобы каждая ячейка имела свое имя или, как часто говорят, - идентификатор.Идентификаторы.Именами (идентификаторами) называют элементы языка - константы, метки, типы, переменные, процедуры, функции, модули, объекты.Идентификатором является последовательность букв, цифр и знаков подчеркивания, которая начинается с буквы или символа подчеркивания и не содержит пробелов.Не разрешается в языке ПАСКАЛЬ использовать в качестве имен служебные слова и стандартные имена, которыми названы стандартные константы, типы, процедуры, функции и файлы. Примеры имен языка ПАСКАЛЬ:A b12 r1m SIGMA gamma I80_86В Паскале разница между строчными и прописными буквами игнорируется, поэтому имена NaMe и name одинаковы.Служебные (зарезервированные) слова:ABSOLUTE EXPORTS LIBRARY SETASSEMBLER EXTERNAL MOD SHLAND FAR NAME SHRARRAY FILE NIL STRINGASM FOR NEAR THENASSEMBLER FORWARD NOT TOBEGIN FUNCTION OBJECT TYPECASE GOTO OF UNITCONST IF OR UNTILCONSTRUCTOR IMPLEMENTATION PACKED USESDESTRUCTOR IN PRIVATE VARDIV INDEX PROCEDURE VIRTUALDO INHERITED PROGRAM WHILEDOWNTO INLINE PUBLIC WITHELSE INTERFACE RECORD XOREND INTERRUPT REPEATEXPORT LABEL RESIDENTСуществуют имена которые называются стандартными.sin cos real trueВ отличие от служебных слов смысл стандартных имен может быть переопределен программистом.В откомпилированной программе для всех переменных отведено место в памяти, и всем переменным присвоены нулевые значения.Все переменные, используемые в программе необходимо объявить в разделе описания переменных после зарезервированного слова var.Данные бывают различных типов...Типы данныхИмена стандартных типов являются предопределенными идентификаторами и действуют в любой точке программы. Они описаны в стандартном модуле System, который по умолчанию подключается в список используемых модулей. Пользовательские типы – это дополнительные типы (простые и структурированные) описанные пользователем.Стандартные типы данныхгруппа целых типов (Shortint, Integer, Longint, Byte, Word);группа действительных типов(Single, Real, Double, Extended, Comp);логические (булевские типы)(Boolean, ByteBool, WordBool, LongBool);символьный(Char);строковый (String);указательный (Pointer);текстовый тип (Text).Группа целых типовVar b : byte;Var b : byte;summa, count : integer;Символьному типу соответствует стандартный идентификатор Char. Переменные и константы символьного типа могут принимать значения из множества символов кода ASCII.VarS : String;{строка от 0 до 255 символов}S2: String[5];{стока из 5-ти символов}Строки в языке ПАСКАЛЬ - это последовательность символов, записанная между апострофами. Если в строке в качестве содержательного символа необходимо употребить сам апостроф, то следует записать два апострофа. Примеры строк:'СТРОКА' 'STRING' 'АД''ЮТАНТ'Множество допустимых значений любого порядкового типа представляет собой упорядоченную последовательность, каждый элемент которой имеет свой порядковый номер (начиная с 0).Функция Ordвозвращает порядковый номер этого значения в описании типа.Ord(2)=2, Ord(‘0’)=48Writeln(ord(‘e’));Writeln(ord(‘9’));Таблица кодировки ASCIIASCII (American Standard Code for Information Interchange; произносится «а́ски») —компьютерная кодировка для представления латинского алфавита, арабских цифр, некоторых знаков пунктуации и управляющих символов. Ее ввел американский институт стандартизации ANSI.Стандартный ввод и выводОсуществляется встроенными процедурамиRead(список переменных); – чтение значений, введенных с клавиатурыReadln(список переменных); - ln в конце означает переход на новую строкуWrite(список переменных); - вывод на экранWriteln(список переменных);ПримерProgram primer;Uses crt;Var a,b,summa:integer;Beginclrscr;write(‘Введите 2 целых числа: ’);readln(a,b);Summa:=a+b;write(‘Сумма = ’,summa);End.Допускается вывод значений целых, вещественных, символьного, строкового и булевских типов.Операции и выраженияВыражениев программировании служит для определения действий.Выражения состоят из операций и операндов.По количеству операндов выражения делятся на унарные (один операнд с символом операции: -5, -(-6), not False) и бинарные (два операнда, между которыми ставится символ операции: 5+7, (4-2)*5+10, True or False - истина или ложь). Классификация операцийарифметические операции:унарные: +, -бинарные: +, -, *, /, div, mod2. операции отношения: =, <>, <, >, <=, >=3. булевские (логические) операции:not (логическое отрицание), and (лог. И), or (лог. ИЛИ), xor (исключающее ИЛИ)4. строковая операция (конкатенация) +7 div 3 = 2A:=10 div 3;mod – остаток от деления7 mod 3 = 1A:=25 mod 10;Операторы предназначены для описания действий, которые будут выполняться при реализации алгоритма.Простые операторы не содержат в себе других операторов.1. Оператор присваивания :=2. Оператор процедуры состоит из имени, за которым в круглых скобках может располагаться список фактических параметров. Swap(x, y).3. Оператор перехода GoToСтруктурные операторы включают в себя другие операторы.
Условные операторы (if, case) Операторы цикла (while, repeat, for) Оператор присоединения with |