Инструменты пользователя

Инструменты сайта


subjects:programming:pascal

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Следующая версия
Предыдущая версия
subjects:programming:pascal [2015/10/19 14:58]
создано
subjects:programming:pascal [2018/05/31 21:22]
удалено
Строка 1: Строка 1:
 ====== Pascal ====== ====== Pascal ======
- 
 **Паскаль** -- это императивный,​ структурированный компилируемый язык программирования. **Паскаль** -- это императивный,​ структурированный компилируемый язык программирования.
  
 Часто используется в учебных заведениях в качестве "​первого"​ языка. Часто используется в учебных заведениях в качестве "​первого"​ языка.
 +Является базой для ряда других языков.
 Особенностями языка являются строгая типизация и наличие средств структурного (процедурного) программирования. Особенностями языка являются строгая типизация и наличие средств структурного (процедурного) программирования.
  
-Паскаль,​ в его ​первоначальном виде, представляет собою чисто процедурный язык и включает ​в себя ​множество ​алголоподобных ​структур и конструкций с зарезервированными словами наподобие if, then, else, while, for, и т. д. Тем не менее, Паскаль также содержит большое количество возможностей для структурирования информации и абстракций. +Паскаль,​ в первоначальном виде, представляет собою чисто процедурный язык и включает множество структур и конструкций с зарезервированными словами наподобие ​''​if''​''​then''​''​else''​''​while''​''​for''​, и т. д. 
-В современных диалектах (Free Pascal) доступны такие операции,​ как перегрузка операторов и функций.+Тем не менее, Паскаль также содержит большое количество возможностей для структурирования информации и абстракций. 
 +В современных диалектах (''​Free Pascal''​) доступны такие операции,​ как перегрузка операторов и функций.
  
 =====Стандартные функции===== =====Стандартные функции=====
Строка 13: Строка 14:
 ^Простые типы данных^^^^ ^Простые типы данных^^^^
 ^DEC(N)|Уменьшение N|<code pascal>​DEC(6);//​=5</​code>​|| ^DEC(N)|Уменьшение N|<code pascal>​DEC(6);//​=5</​code>​||
-^INC(N)|Увеличение N|<code pascal>​INC(5);//​=4</​code>​|| +^INC(N)|Увеличение N|<code pascal>​INC(5);//​=6</​code>​|| 
-^ORD(N)|Порядковый номер N|<code pascal></​code>​|| +^ORD(N)|Порядковый номер N|<code pascal>ORD(5);//​=5 
-^ODD(N)|Проверка N на чётность|<​code pascal></​code>​||+ORD('​b'​);//​=98</​code>​|| 
 +^ODD(N)|Проверка N на (''​не''​)чётность|<​code pascal>ODD(5);//​=True 
 +ODD(4);//​=False</​code>​||
 ^PRED(N)|Предшествующее значение N|<code pascal>​PRED('​b'​);//​='​a'</​code>​|| ^PRED(N)|Предшествующее значение N|<code pascal>​PRED('​b'​);//​='​a'</​code>​||
 ^SUCC(N)|Последующее значение N|<code pascal>​SUCC('​B'​);//​='​C'</​code>​|| ^SUCC(N)|Последующее значение N|<code pascal>​SUCC('​B'​);//​='​C'</​code>​||
- +^Целые типы данных^^^^ 
-^||<code pascal></​code>​|| +^A DIV B|Целая часть от деления|<code pascal>14 DIV 3;//=4</​code>​|| 
 +^A MOD B|Остаток от деления|<​code pascal>​14 MOD 3;//​=2</​code>​|| 
 +^TRUNC(X)|Получение целой части вещественного числа X|<code pascal>​TRUNC(3.52);​\\=3</​code>​|| 
 +^ROUND(X)|Округление до целого вещественного числа X|<code pascal>​ROUND(3.52);​\\=4</​code>​|| 
 +^Целые и вещественные типы данных^^^^ 
 +^ABS(NX)|Абсолютная величина NX|<code pascal>​ABS(-3);//​=3</​code>​|| 
 +^SQR(NX)|Квадрат числа NX|<code pascal>​SQR(3);//​=9</​code>​|| 
 +^Вещественные типы данных^^^^ 
 +^ARCTAN(X)|Арктангенс X|<code pascal></​code>​|| 
 +^COS(X)|Косинус X|<code pascal>​COS(PI/​3);//​=0.5</​code>​|| 
 +^EXP(X)|e<​sup>​x</​sup>​|<​code pascal></​code>​|| 
 +^FRAC(X)|Дробная часть X|<code pascal>​FRAC(3.52);//​=0.52</​code>​|| 
 +^INT(X)|Целая часть X|<code pascal>​INT(3.52);//​=3</​code>​|| 
 +^LN(X)|Натуральный логорифм (по основанию e)|<code pascal></​code>​|| 
 +^PI|Значение $\pi=3.1415926535897932385$|<​code pascal></​code>​|| 
 +^SIN(X)|Синус X|<code pascal></​code>​|| 
 +^SQRT(X)|Квадратный корень из X|<code pascal>​SQRT(9);//​=3</​code>​|| 
 +^Логические операнды^^^^ 
 +^NOT|Отрицание|<​code pascal></​code>​|| 
 +^OR|Объединение,​ или логическое сложение|<​code pascal></​code>​|| 
 +^AND|Пересечение,​ или логическое умножение|<​code pascal></​code>​|| 
 +^XOR|Исключающее ИЛИ, или сложение по модулю два|<​code pascal></​code>​|| 
 +^Другое^^^^ 
 +^Randomize|Инициализация генератора случайных чисел (обычно,​ в начале программы,​ сразу после ''​begin''​)|<​code pascal>​Randomize;</​code>​|| 
 +^Random|Генерация случайного числа|<​code pascal>​a:​=random(1000);//​a от 0 до 999</​code>​||
  
 =====Типы данных===== =====Типы данных=====
 +Можно выделить следующие типы данных:​
 +  * Простые типы
 +    * Целые типы -- SHORTINT, INTEGER, LOGINT, BYTE, WORD;
 +    * Логический тип -- BOOLEAN
 +    * Перечисляемые типы (определяются программистом через TYPE)
 +    * Тип-диапазон <code pascal>​TYPE NUM = -10..10;</​code>​
 +    * Символьный тип -- CHAR
 +    * Вещественные типы -- REAL, SINGLE, DOUBLE, EXTENDED, COMP;
 +    * Текстовая строка -- STRING;
 +  * Структурированные типы
 +    * Массив<​code pascal>​M1 : ARRAY[1..10,​ 2..20] OF INTEGER;</​code>​
 +      * ASCII-строка-- PCHAR;
 +    * Запись (структура в Си) <code pascal>​TYPE ​
 +HUMAN = RECORD
 +  NAME : STRING;
 +  DATA : INTEGER;
 +END;</​code>​ Доступ к полям через имя_переменной.имя_поля.
 +    * Множество (из порядковых элементов и общее число меньше 255) <code pascal>M = SET OF ['​a',​ '​b',​ '​5',​ '​!'​];</​code>​
 +    * Файл
 +      * Текстовый файл -- TEXT;
 +      * Типизированные (FILE OF ''​тип''​)
 +      * файлы без типа (FILE)
 +  * Указатели
 +    * Тип-указатель-- POINTER
 +  * Процедурные типы (процедуры и функции допустимо использовать в качестве переменных)
 +  * Объекты
 +
 =====Объявление переменных:​===== =====Объявление переменных:​=====
 +FIXME
 +
 =====Ввод,​ Вывод сообщений в консоли:​===== =====Ввод,​ Вывод сообщений в консоли:​=====
-=====Условие if():===== +INPUT, OUTPUT - работа с файлами 
-====Пример:==== + 
-=====Циклы===== +Чтение:​ 
-====Цикл ​for():==== +<code pascal>​READ (A, B, C); 
-====Цикл while():==== +//123 2345 -56 <​Enter>​| 
-====Цикл ​do while():====+ 
 +READLN(A, B, C); 
 +//123 2345 -56 <​Enter>​ 
 +|</​code>​ 
 + 
 +Запись:​ 
 +<code pascal>​ 
 +WRITE(); 
 +WRITE(J:8, I:12); // Указание позиций вывода 
 +WRITELN(); // WRITE + перевод строки 
 +</​code>​ 
 + 
 +=====Структурированные операторы===== 
 +==== BEGIN … END ==== 
 +Составной оператор ''​BEGIN … END''​ представляет собой совокупность последовательно выполняемых операторов,​ заключённых в операторные **скобки** ''​BEGIN''​ и ''​END''​. 
 + 
 +==== Выбор (условия) ​==== 
 +=== IF … THEN === 
 +<code pascal>​IF True THEN <​1>;</​code>​ 
 + 
 +<code pascal>​IF True THEN <1> 
 +ELSE <​2>;</​code>​ 
 + 
 +<code pascal>​IF True THEN 
 +  BEGIN 
 +    <​1.1>​ 
 +    <​1.…>​ 
 +  END 
 +ELSE 
 +  BEGIN 
 +    <​2.1>​ 
 +    <​2.…>​ 
 +  END;</​code>​ 
 + 
 +=== CASE … OF === 
 +<code pascal>​CASE PARAMETR OF 
 +  P1: <​1>;​ 
 +  P2: <​…>;​ 
 +  ELSE: <N> 
 +END;</​code>​ 
 + 
 +====Циклы==== 
 +Во всех циклах можно использовать процедуры:​ ''​BREAK''​ , ''​CONTINUE''​ . 
 + 
 +===FOR … DO=== 
 +Общий вид: 
 +<code pascal>​FOR I:=N1 TO N2 DO <​1>;</​code>​ 
 +Пример:​ 
 +<code pascal>​FOR var i:=1 TO 5 DO 
 +write(i)
 +//​12345</​code>​ 
 +:​!:​Пример **для уменьшения** значения:​ 
 +<code pascal>​FOR var i:=5 DOWNTO 1 DO 
 +write(i); 
 +//​54321</​code>​ 
 + 
 +===REPEAT … UNTIL=== 
 +**Цикл ​с постусловием**,​ т.е. цикл будет гарантированно пройден минимум один раз, т.к. проверка осуществляется после каждого выполнения тела цикла. 
 +<code pascal>​REPEAT 
 +  <1> 
 +UNTIL <​Условие>;</​code>​ 
 +Цикл выполняется до тех пор, пока условие не станет истинным. 
 + 
 +===WHILE … DO=== 
 +Цикл с пред условием,​ т.к. проверка проводится до начала очередной итерации. 
 +<code pascal>​WHILE <​Условие>​ DO 
 +<​1>;</​code>​ 
 =====Массив:​===== =====Массив:​=====
 +FIXME
 =====Функции===== =====Функции=====
 +FIXME
 +=====Работа с файлами=====
 +Файлы бывают 3-х видов:
 +  * текстовые файлы
 +  * типизированные файлы
 +  * нетипизированные файлы.
 +
 +==== Открытие текстового файла для чтения ====
 +<code pascal>
 +Program readtextfile;​
 +Uses crt;
 +var
 +  fl:​text; ​ // Для связи программы с текстовым файлом. Файловые переменные,​ предназначенные для работы с текстовыми файлами,​ должны иметь тип данных Text.
 +  str:​string; ​ // Будем использовать для чтения строк из файла.
 +begin
 +  clrscr;
 +  assign (fl, '​programs\text.txt'​); ​ // Теперь посредством файловой переменной «fl» мы можем управлять файлом «text.txt».
 +  reset (fl);  // Инициация файла – это открытие файла для чтения,​ записи либо для чтения и записи одновременно. Процедура Reset говорит нам о том, что файл открывается только для чтения.
 +    read (fl,​str); ​ // Для того чтобы получить доступ к записям,​ хранящимся в файле, используются процедуры Read, Readln, Write, Writeln. В результате действия процедуры Read из файловой переменной «fl» будет прочитана информация и эта информация будет записана в строковую переменную «str». ​
 +    write(str); ​ // Вывод на экран.
 +  close(fl); ​ //  Стандартная процедура закрытия файла.
 +  readln;
 +end.
 +</​code>​
 +
 +FIXME
 =====ООП===== =====ООП=====
 +FIXME
 =====Пример простой программы===== =====Пример простой программы=====
 +FIXME

На главную страницу Обучение Wikipedia Тестирование Контакты Нашли ошибку? Справка

Записаться на занятия

Ошибка Записаться на занятия к репетитору

Телефоны:

  • +7 (910) 874 73 73
  • +7 (905) 194 91 19
  • +7 (831) 247 47 55

Skype: eduVdom.com

закрыть[X]
Наши контакты