Pascal – известный язык программирования, который изучается преимущественно в школьных программах. Он используется для обучения навыкам разработки. Заложен в основу большинства других языков программирования. Имеет несколько диалектов. В «чистом» (первоначальном) виде практически не встречается.
Далее предстоит изучить операторы Pascal, которые пригодятся программисту при создании исходного кода. Также выясним, для чего именно используется Паскаль, какие плюсы и минусы имеет. Соответствующие сведения пригодятся преимущественно новичкам, но и опытные разработчики найдут в них что-нибудь полезное для себя.
Описание языка
Язык программирования Паскаль – универсальное средство создания программных кодов. Отличается строгой структурой, а также типизацией переменных. Обладает простым и понятным на интуитивном уровне синтаксисом.
Pascal появился в 1970 году. Его создал Никлаус Вирт на основе Алгол-68. Изначально соответствующий язык предназначался для обучения студентов основам структурной разработки.
Имеет несколько диалектов:
- UCSD;
- Object;
- Turbo;
- MidletPascal;
- Free;
- GNU;
- TMT.
Это императивное средство разработки. Программа, написанная на Pascal, представляет собой некий набор последовательных команд или операторов.
Особенности
Паскаль – язык со строгой (сильной) типизацией. Это значит, что различным компонентам приложения (модулям, функциям и переменным) присваиваются конкретные свойства. Они строго определяются перед началом работы программного обеспечения.
Такой прием позволяет согласовать работу имеющихся операторов и отдельно взятых фрагментов кола, свести вероятность ошибок к минимуму.
Pascal выделяется своей процедурностью и структурированностью. Программное обеспечение будет состоять из отдельных блоков. Каждый фрагмент находится в строгой подчиненности – как во всем приложении, так и по отноше нию друг к другу.
Операторы (команды) здесь обладают определенными особенностями. К ним относят следующие моменты:
- Строгая последовательность. Операторы обрабатываются по очереди. Пока один из них не завершится, следующий не начнется.
- Результат реализации оператора записывается непосредственно в память устройства.
- Каждый последующий оператор будет использовать для работы информацию, полученную от предыдущей команды.
Далее операторы и их особенности предстоит изучить более подробно. Только сначала необходимо понять, насколько целесообразно разработчику изучать основы Pascal.
Преимущества и недостатки
Pascal – это язык, у которого есть как плюсы, так и минусы. Зная о них, разработчики будут понимать, стоит ли изучать соответствующий ЯП.
Сильные стороны
К преимуществам Пас каль относят:
- Простой и понятный синтаксис, который базируется на ABC. Он напоминает английский язык. Подойдет для изучения новичками. Присвоить переменной значение того или иного типа удается без большого и сложного кода.
- Компилируемость. Приложение, написанное на Паскале, легко переводится в машинный код, а также передается между клиентами. Никаких интерпретаторов и виртуальных машин для этого не потребуется.
- Наличие строгой типизации и структурированности. Pascal дружелюбен к новичкам. За счет строго определенных типов и понятной структуры удается свести к минимуму вероятность возникновения ошибок. В случае их появления поддерживается быстрые способы устранения еще на стадии компиляции исходного кода.
Информатика в старших классах предлагает изучать Pascal для освоения разработки. Это неплохой базовый ЯП. Чаще он используется непосредственно для «старта» в программировании. Более опытные разработчики Паскаль изучают редко.
Слабые стороны
Недостатки у соответствующего языка программирова ния тоже есть. К ним относят:
- Ограниченность в плане взаимодействия с компонентами, написанными на других ЯП.
- Подходит для решения далеко не всех задач. Это связано с универсальностью ЯП. Для ряда проблем необходимо пользоваться узкоспециализированными языками, а не Паскалем.
- Ограниченность при работе с динамической памятью, а также массивами переменного размера.
- Отсутствие раздельной компиляции.
Базовые навыки разработки Паскаль даст, но для того, чтобы создавать продвинутое программное обеспечение и игры он не подходит.
Сферы применения
Описание преимуществ и недостатков рассматриваемого ЯП понятно. Он используется в следующих сферах:
- Школьная программа. Урок «Информатика» для старших классов. Во время занятий рассматриваются основные принципы разработки ПО, особенно в классах с углубленным изучением IT и математики.
- Бизнес. Программировать на Pascal для бизнес-идей старались в 90-е и 2000-е годы. Тогда на этом ЯП велась разработка автоматизированных систем производственных процессов. Отдельные компании пользуются соответствующим ПО до сих пор.
- Промышленность. Диалекты Паскаля часто используются для программирования устройств с микропроцессорами.
Некоторые современные диалекты встречаются в бытовой технике и электронике – на них пишутся специализированные для оборудования приложения.
Термины для программиста
Перед тем как изучать основные типы данных Паскаля, а также его операторы, предстоит запомнить несколько ключевых понятий разработки. Они пригодятся как новичкам, так и опытным программистам. Помогут быстрее разобраться с принципами работы имеющегося исходного кода с любой концепцией:
- Алгоритм – набор инструкций (команд), необходимых для решения той или иной задачи.
- Аргумент – значение, которое придается в команду или функцию.
- Символ – простейшая единица информации. Выражается одной букве или символьным элементом.
- Объект – комбинация связанных переменных, структур данных и констант. Они выбираются и совместно обрабатываются.
- Константа – объект или значение, которое не меняется на протяжении всего жизненного цикла приложения. Остается в заданном первоначальном виде. Не может быть изменена в процессе обработки исходного кода.
- Тип данных – классификация данных того или иного вида.
- Массив – группы схожих видов значений, которые были предварительно сгруппированы. Могут быть представлены в виде списка похожих между собой элементов.
- Исключение – аномальное или неожиданное состояние, которое возникает в прогр��мме при выполнении. Иногда называется ошибкой или условием, изменяющим путь приложения или микропроцессора.
- Выражение – это группа букв, цифр и символов. Соответствующий элемент используется для представления значения одной или нескольких переменных.
- Петля – это цикл. Последовательность команд (инструкций), которые повторяют один и тот же процесс до выполнения установленного условия или получения команды на остановку.
- Итерация – один проход через написанный набор операций.
- Ключевое слово – слово, зарезервированное языком разработки. Используется для выполнения определенных задач. Могут быть параметрами, а также командами.
- Нуль – отсутствие ценности. Нулевой символ – это программный код, представляющий собой символ без значения.
- Операнд – объект, которым разрешено управлять, используя так называемые операторы.
- Оператор – компонент кода, умеющий через специальные инструкции управлять операндами.
- Переменная – место хранения временных данных заданного вида в программе.
- Указатель – переменная с адресом места в памяти.
Далее предстоит изучить операции и операторы Pascal, принципы и смысл их обработки в программном коде.
Структура приложения
Pascal – это алгоритмический язык, в котором приложения имеют определенную структуру. Программы делятся на несколько условных блоков:
Название разделаХарактеристикаProgramЭто имя приложения. Отвечает за ввод имени проекта.Uses crt, graphПодключение дополнительных модулей. Graph отвечает за возможности рисования. Ctr – модуль, используемый для очистки экрана операций. Для этого используется команда вида clrscr.LabelРаздел, отвечающий за метки. При обработке оператора goto программа перейдет к «закладкам», отмеченным в рабочей области кода.ConstБлок постоянных величин – констант. Это «фиксированный» тип данных. В соответствующем разделе записываются имена констант, а также их значения. Тип будет определен системой автоматически.VarРаздел, отвечающий за переменные. Указанный идентификатор получит тип хранимой информации.Produce или FunctionПосле соответствующего ключевого слова необходимо указать вспомогательные подпрограммы или функции. Они предназначаются для более быстрой разработки программного обеспечения.BeginТело приложения. Это – описание самой программы. Последовательность операторов и команд. Они включают в себя значения, а также величины для выполнения поставленных задач и целей.EndЧасть тела исходного кода приложения. Означает конец программы. Begin указывает на начало. После end программный код работать не будет.
Предложенная таблица поможет лучше разобраться в структуре приложения. Для того, чтобы программное обеспечение работало, достаточно использовать всего несколько разделов. Это – begin и end. Это основные компоненты, без которых не будет функционировать ни один написанный код.
Типы данных
Паскаль – это строго типизированный язык разработки. Это значит, что переменные, в которых хранится информация, имеет определенный тип. Приложению придется напрямую указать, какой именно вариант использовать для хранения значений. Данный прием позволяет компьютеру понимать, какие операции выполнять с теми или иными материалами.
Типы данных в рассматриваемом языке бывают:
- простыми;
- структурированными;
- целыми;
- символьными;
- логическими;
- перечисляемыми;
- интервальными;
- вещественными;
- массивами;
- строками;
- множествами;
- файлами;
- записями;
- указателями.
Перед более детальным изучением опе раторов в Pascal необходимо рассмотреть указанные типы данных и их синтаксис. В противном случае программа не сможет понять, как обрабатывать исходных код. Акцент необходимо сделать на простых видах. С ними предстоит работать как новичку, так и опытному разработчику.
Простые
Простые типы переменных в рассматриваемом языке условно делятся на стандартные (порядковые), а также перечисляемые (ограниченные).
Целочисленные
Целочисленный – это основной встроенный тип переменных. Целое число, которое может быть представлено в нескольких формах. Pascal поддерживает 5 его типов:
Название типаДиапазон значенийФормат записиShort int-128…+1278 битInteger-32 768…32 76716 битlongint-2 147 483 648…+2 147 483 64732 битByte0…2558 бит без знакаWord0 …65 53516 бит без знака
Данная таблица поможет понять, сколько места в памяти и какой именно тип данных занимает в том или ином случае.
Над операндами целочисленного типа можно осуществлять арифметические действия. Необходимо соблюдать следующие правила:
- Тип целой константы – это встроенный целочисленный тип с наименьшим диапазоном, включающим значение соответствующей целой константы.
- При бинарной операции (когда используются для операнда), оба операнда будут преобразованы к общему типу. Только после этого совершаются необходимые арифметические действия.
- Выражение, написанное в операторе присваивания справа, вычисляется независимо от переменной, находящейся слева.
Для описания целочисленной переменной необходимо использовать ключевое слово var. Форма представления: var <список переменных> <тип> (без угловых скобок).
Вещественные
Паскаль – алгоритмический язык, поддерживающий работу с вещественными переменными. Сюда относят числа с плавающей запятой с фиксированным количеством цифр.
Таблица выше укажет на диапазон десятичных цифр и диапазон вещественных переменных. Для его использования необходимо указать ключевое слово real. Форма записи: var <переменные:> real.
Символьные
Char используется для работы в коде с символьными значениями. У каждого символа имеются такие составляющие как:
Задается по форме: <тип><имя_переменной(‘значения’)> . Чтобы апостроф был символом, его необходимо тоже заключить в такие кавычки.
Перечисляемые
Предстает в виде перечисления констант в строго определенном порядке и количестве. Состоит из списка констант. Такие переменные принимают значения любой из заданных const. Описание выглядит так:
<список констант> – это специальный вид констант, которые задаются через запятую. Они имеют свой собственный порядковый номер. Отсчет начинается с 0.
Ограниченные
Ограниченные переменные – это переменные, которые принимают не все значения своего типа. Они определены в некотором диапазоне. Каждый ограниченный вид переменной задается путем накладывания ограничений на базовые (основные).
Форма записи:
Главное запомнить следующие правила:
- Обе ограниченные константы должны быть одного и того же вида.
- В качестве базового типа используется любой простой. Исключение – это действительные переменные (real).
- Начальные значения при определении ограниченного типа не могут быть больше итоговых.
Выше – пример кода, при помощи которого можно задать ограниченный тип.
Структурированные
Структурированный тип данных – это типы, которые определяют наборы однотипных или разнотипных компонентов. Они образуются из других типов. Могут быть представлены:
- Массивами (array). Заранее определенное и известное количество однотипных компонентов, которые проиндексированы. Массивы в Паскале бывают одномерными и многомерными.
- Записями (record). Включают в себя несколько полей, тип которых отличается друг от друга. Пример – описание товара на складе. Оно включает в себя наименование, количество, стоимость, а также наличие сертификатов качества. Здесь название – это величина string, количество – int, цена – real, сертификат – boolean (логический). Запись – наиболее общий и гибкий структурированный тип данных. Связано это с тем, что она может быть образована из неоднотипных элементов, а также в ней связи задаются явным образом.
- Строками (string). Так называют последовательности символов кодовых таблиц оборудования (компьютера). Могут включать в себя от 0 до 255 символьных записей.
- Множествами (set). Набор взаимосвязанных по тем или иным признакам (их группам) компонентов. Множества включают в себя порядковые элементы, количество которых не превышает 255.
- Файлами (files). Файл – это последовательность однотипных элементов, записанных на внешнем носителе под определенным заранее именем. Тип соответствующих компонентов может быть совершенно любым, исключая сам тип file. Размер подобного «документа» не объявляется разработчиком.
Теперь можно более подробно рассмотреть операторы и их смысл в Pascal.
Операторы языка
Оператор – средство описания действий (команд и операций), предусматриваемых заданным алгоритмом решения задачи. В программном коде подобные компоненты могут быть как помеченными, так и нет. Условно делятся на две большие группы:
Оператор в Паскале используется только для описания действий. Отделяются они друг от друга символом «точка с запятой». Если оператор ставится перед end, else или until, то соответствующий характерный разделитель не ставится.
Простые операторы включают в себя:
- оператор присваивания;
- вызова процедуры;
- перехода.
Структурные операторы – это условный оператор, составной и цикла.
Оператор присваивания
Оператор, использующийся для вычисления значения выражения, написанной в правой части, а также присваивания полученного значения переменной слева. Тип переменной должен быть совместим с типом выражения.
Два типа являются совместимыми, если соблюдаются следующие пункты:
- они записаны при помощи одного и того же описателя;
- вещественные переменные типа real, single и double могут получать значения целого типа;
- порядковый тип поддерживает значения типа-диапазона.
Синтаксис присваивания выглядит так:
или <имя_переменной>:= <выражение>.
Здесь := – это оператор присваивания. Выражение a может состоять из констант, переменных, а также названий функций, знаков операций и скобок.
Действия в операторе присваивания выполняются слева-направо. Приоритет обработки команд будет следующим:
- not;
- *, /, mod, and, div;
- +, or, -;
- =, <, >, <>, <=, =>, in.
Выражения, написанные в скобках, будут вычисляться раньше. Оператор присваивания актуален для всех типов. Исключение – файл.
Оператор вызова
Смысл соответствующей команды – это непосредственное обращение к заданному алгоритму. Оператор вызова включает в себя:
- имя процедуры;
- список аргументов (в круглых скобках).
Аргументы при записи могут отсутствовать. Выполнение соответствующего «запроса» приводит к активации действий, написанные в теле процедуры или в ее непосредственном описании.
Переход
Перед включает в себя goto, а также метку. Выполнение соответствующей команды приводит к передаче управления оператору, помеченному указанной меткой.
Использовать метки можно только после их описания в разделе Label. Goto противоречит принципам структурного программирования. Использовать его необходимо с осторожностью. Безусловный переход может осуществляться не из любого места приложения и не в любую область исходного кода. При помощи Goto нельзя перейти в подпрограмму или выйти из нее.
Пустые
Он не выполняет никаких действий. В приложении при реализации заданного программного кода никак себя не проявляет. Исключение – печать меток, точек с запятыми. Используется для безусловного перехода на него. Встречается на практике достаточно редко.
Составные
Pascal – это алгоритмический язык, работа в котором происходит при помощи четко установленных команд. Их перечень определяется разработчиком и прописывается в теле. Для выполнения команд используются различные operators.
Составные operators позволяют выполнять определенные последовательности команд. Они начинаются ключевым словом begin, а заканчиваются end. Между соответствующими элементами вставляются команды, которые необходимо исполнять.
Воспринимается такой operator как единое целое. Может располагаться в любой области исходного кода.
Условные
Условные operators используются для выбора одного или нескольких действий в зависимости от заданного критерия. Соответствующим условием выборки служит значение логического выражения.
Pascal имеет несколько условных operators – if и case.
IF необходим для организации процесса вычислений в зависимости от логического условия. Принимает две формы записи:
- полную (с условием else);
- короткую.
Задается соответственно:
Сначала происходит вычисление выражения, написанного в условии. На выходе получается булево значение. Если оно является истиной (true), выполняется <оператор1>, указанный после слова then. При значении лжи (false) обрабатывается <оператор2>. Данный алгоритм актуален для первого способа записи.
Во втором случае при значении true выполняется заданное условие. В противном случае управление переходит к команде, идущей после блока if.
IF могут быть вложенными. Тогда форма записи будет следующей:
На уроке под названием «Информатика» данный operator обязательно изучается. Без него задать условие выполнения команд не получится. Он является базовым.
При вложенных IF действует правило: else всегда связывается с ближайшим if, которое не было ранее связано с другим else.
Выбор
Выбор case…of…end дает возможность определения альтернативных действий из произвольного числа изначально имеющихся условий. Он включает в себя селектор и список постоянных параметров, каждому из которых предшествует список констант выбора.
Форма записи:
В заданном фрагменте кода <выражение-селектор> – это выражение порядкового типа. В зависимости от его значения будет приниматься решение относительно дальнейших операций.
<список1>…<списокN> – значения, с которыми сравнивается селектор, а <оператор1>…<операторN> – выражения, из которых выполняется то, с константой которого происходит первое совпадение селектора.
Здесь ветка else не является обязательной в отличие от условия IF. Перед соответствующей записью разрешено поставить символ «точка с запятой».
Если действия для нескольких селекторов совпадают, эти константы перечисляются через запятую перед двоеточием. Синтаксис языка также позволяет задать им диапазон значений по нижней и верхней границам.
Порядок выполнения
Операторы в программе Паскаль в сложных выражениях обрабатываются особым образом – с учетом распределения так называемого приоритета. Операции одного приоритетного уровня будут выполняться слева-направо.
Постоянных последовательностей обработки операций (команд) у рассматриваемого языка нет – приоритет можно в любой момент изменить. Для этого используются круглые скобки.
В сложных выражениях приоритет распределяется по умолчанию так:
- унарные операции;
- мультипликационные операции;
- аддитивные операции;
- операции отношений.
Далее остается выяснить, какие именно операции можно выполнять с каждым видом данных.
Операции и их выполнение
Циклы
В некоторых диалектах Паскаля используются циклы:
- счетный оператор for, который применяется для реализации петли с параметрами;
- с предусловием while;
- с постусловием repeat.
Первый вариант не может быть вызван для реализации итерационного цикла. Последние два нацелены на его реализацию, а также поддерживаются в for.
For обладает следующей формой представления:
While пишется так:
А repeat будет выглядеть следующим образом:
Здесь можно увидеть больше информации о работе циклов в Паскале.
Паскаль – не самый распространенный, но очень известный язык разработки. Его изучают для того, чтобы разобраться с основами создания программного обеспечения. Базовые знания Паскаля будут даны школьникам в старших классах на уроках информатики.
Если же хотите изучать более современные языки программирования, рекомендуется обращаться к помощи онлайн-курсов. Они предлагают:
- сжатые сроки обучения и тщательно составленные программы;
- обучение с нуля основам и особенностям разработки на любом выбранном языке;
- интересные практические и домашние задания;
- постоянное кураторство;
- помощь в формировании портфолио;
- совмещение с работой, семьей и делами – все занятия можно посмотреть в записи;
- возможность освоения IT-направления или профессии в срок до 12 месяцев.
Пример – курсы от образовательного центра OTUS. В конце обучения пользователю будет выдан электронный сертификат установленной формы. Он поможет подтвердить приобретенные навыки и знания.
<!DOCTYPE html>
<html dir="ltr" lang="ru-RU">
<head>
<meta charset="UTF-8" />
<meta http-equiv="x-ua-compatible" content="ie=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<link rel="profile" href="http://gmpg.org/xfn/11" />
<title>Операторы и типы данных Pascal OTUS</title>
<!-- All in One SEO 4.5.2.1 - aioseo.com -->
<meta name="description" content="Pascal – известный язык программирования, который изучается преимущественно в школьных программах. Он используется для обучения навыкам разработки. Заложен в основу большинства других языков программирования. Имеет несколько диалектов. В «чистом» (первоначальном) виде практически не встречается. Далее предстоит изучить операторы Pascal, которые пригодятся программисту при создании исходного кода. Также выясним, для чего именно используется Паскаль, какие плюсы" />
<meta name="robots" content="max-image-preview:large" />
<link rel="canonical" href="https://otus.ru/journal/operatory-i-tipy-dannyh-pascal/" />
<meta name="generator" content="All in One SEO (AIOSEO) 4.5.2.1" />
<script type="application/ld+json" class="aioseo-schema">
{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/otus.ru\/journal\/operatory-i-tipy-dannyh-pascal\/#article","name":"\u041e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u044b \u0438 \u0442\u0438\u043f\u044b \u0434\u0430\u043d\u043d\u044b\u0445 Pascal OTUS","headline":"\u041e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u044b \u0438 \u0442\u0438\u043f\u044b \u0434\u0430\u043d\u043d\u044b\u0445 Pascal","author":{"@id":"https:\/\/otus.ru\/journal\/author\/a-pavlenko\/#author"},"publisher":{"@id":"https:\/\/otus.ru\/journal\/#organization"},"image":{"@type":"ImageObject","url":"https:\/\/otus.ru\/journal\/wp-content\/uploads\/2023\/03\/oj-1080x720-12.jpg","width":2245,"height":1587},"datePublished":"2023-03-04T17:31:17+00:00","dateModified":"2023-03-04T18:02:48+00:00","inLanguage":"ru-RU","mainEntityOfPage":{"@id":"https:\/\/otus.ru\/journal\/operatory-i-tipy-dannyh-pascal\/#webpage"},"isPartOf":{"@id":"https:\/\/otus.ru\/journal\/operatory-i-tipy-dannyh-pascal\/#webpage"},"articleSection":"\u041f\u043e\u043b\u0435\u0437\u043d\u043e\u0435, \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435"},{"@type":"BreadcrumbList","@id":"https:\/\/otus.ru\/journal\/operatory-i-tipy-dannyh-pascal\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/otus.ru\/journal\/#listItem","position":1,"name":"\u0413\u043b\u0430\u0432\u043d\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430","item":"https:\/\/otus.ru\/journal\/","nextItem":"https:\/\/otus.ru\/journal\/operatory-i-tipy-dannyh-pascal\/#listItem"},{"@type":"ListItem","@id":"https:\/\/otus.ru\/journal\/operatory-i-tipy-dannyh-pascal\/#listItem","position":2,"name":"\u041e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u044b \u0438 \u0442\u0438\u043f\u044b \u0434\u0430\u043d\u043d\u044b\u0445 Pascal","previousItem":"https:\/\/otus.ru\/journal\/#listItem"}]},{"@type":"Organization","@id":"https:\/\/otus.ru\/journal\/#organization","name":"\u041e\u0442\u0443\u0441 \u043e\u043d\u043b\u0430\u0439\u043d-\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435","url":"https:\/\/otus.ru\/journal\/","sameAs":["https:\/\/www.youtube.com\/channel\/UCetgtvy93o3i3CvyGXKFU3g"],"contactPoint":{"@type":"ContactPoint","telephone":"+74999389202","contactType":"Customer Support"}},{"@type":"Person","@id":"https:\/\/otus.ru\/journal\/author\/a-pavlenko\/#author","url":"https:\/\/otus.ru\/journal\/author\/a-pavlenko\/","name":"A. Pavlenko","image":{"@type":"ImageObject","@id":"https:\/\/otus.ru\/journal\/operatory-i-tipy-dannyh-pascal\/#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/d4c499a104d7c2522fa41f89e6819499?s=96&d=mm&r=g","width":96,"height":96,"caption":"A. Pavlenko"}},{"@type":"WebPage","@id":"https:\/\/otus.ru\/journal\/operatory-i-tipy-dannyh-pascal\/#webpage","url":"https:\/\/otus.ru\/journal\/operatory-i-tipy-dannyh-pascal\/","name":"\u041e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u044b \u0438 \u0442\u0438\u043f\u044b \u0434\u0430\u043d\u043d\u044b\u0445 Pascal OTUS","description":"Pascal \u2013 \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0439 \u044f\u0437\u044b\u043a \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0438\u0437\u0443\u0447\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0432 \u0448\u043a\u043e\u043b\u044c\u043d\u044b\u0445 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430\u0445. \u041e\u043d \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f \u043d\u0430\u0432\u044b\u043a\u0430\u043c \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438. \u0417\u0430\u043b\u043e\u0436\u0435\u043d \u0432 \u043e\u0441\u043d\u043e\u0432\u0443 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u0430 \u0434\u0440\u0443\u0433\u0438\u0445 \u044f\u0437\u044b\u043a\u043e\u0432 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f. \u0418\u043c\u0435\u0435\u0442 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0434\u0438\u0430\u043b\u0435\u043a\u0442\u043e\u0432. \u0412 \u00ab\u0447\u0438\u0441\u0442\u043e\u043c\u00bb (\u043f\u0435\u0440\u0432\u043e\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e\u043c) \u0432\u0438\u0434\u0435 \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043d\u0435 \u0432\u0441\u0442\u0440\u0435\u0447\u0430\u0435\u0442\u0441\u044f. \u0414\u0430\u043b\u0435\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u043e\u0438\u0442 \u0438\u0437\u0443\u0447\u0438\u0442\u044c \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u044b Pascal, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u0440\u0438\u0433\u043e\u0434\u044f\u0442\u0441\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u0443 \u043f\u0440\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0438 \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430. \u0422\u0430\u043a\u0436\u0435 \u0432\u044b\u044f\u0441\u043d\u0438\u043c, \u0434\u043b\u044f \u0447\u0435\u0433\u043e \u0438\u043c\u0435\u043d\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u041f\u0430\u0441\u043a\u0430\u043b\u044c, \u043a\u0430\u043a\u0438\u0435 \u043f\u043b\u044e\u0441\u044b","inLanguage":"ru-RU","isPartOf":{"@id":"https:\/\/otus.ru\/journal\/#website"},"breadcrumb":{"@id":"https:\/\/otus.ru\/journal\/operatory-i-tipy-dannyh-pascal\/#breadcrumblist"},"author":{"@id":"https:\/\/otus.ru\/journal\/author\/a-pavlenko\/#author"},"creator":{"@id":"https:\/\/otus.ru\/journal\/author\/a-pavlenko\/#author"},"image":{"@type":"ImageObject","url":"https:\/\/otus.ru\/journal\/wp-content\/uploads\/2023\/03\/oj-1080x720-12.jpg","@id":"https:\/\/otus.ru\/journal\/operatory-i-tipy-dannyh-pascal\/#mainImage","width":2245,"height":1587},"primaryImageOfPage":{"@id":"https:\/\/otus.ru\/journal\/operatory-i-tipy-dannyh-pascal\/#mainImage"},"datePublished":"2023-03-04T17:31:17+00:00","dateModified":"2023-03-04T18:02:48+00:00"},{"@type":"WebSite","@id":"https:\/\/otus.ru\/journal\/#website","url":"https:\/\/otus.ru\/journal\/","name":"OTUS JOURNAL","description":"Blog about IT","inLanguage":"ru-RU","publisher":{"@id":"https:\/\/otus.ru\/journal\/#organization"}}]}
</script>
<!-- All in One SEO -->
<link rel='dns-prefetch' href='//otus.ru' />
<link rel='dns-prefetch' href='//fonts.googleapis.com' />
<link rel='stylesheet' id='wp-block-library-css' href='https://otus.ru/journal/wp-includes/css/dist/block-library/style.min.css?ver=6.4.7' type='text/css' media='all' />
<style id='classic-theme-styles-inline-css' type='text/css'>
/*! This file is auto-generated */
.wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none}
</style>
<style id='global-styles-inline-css' type='text/css'>
body{--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgba(252,185,0,1) 0%,rgba(255,105,0,1) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgba(255,105,0,1) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgba(255, 255, 255, 1), 6px 6px rgba(0, 0, 0, 1);--wp--preset--shadow--crisp: 6px 6px 0px rgba(0, 0, 0, 1);}:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flow > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}body .is-layout-flow > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}body .is-layout-flow > .aligncenter{margin-left: auto !important;margin-right: auto !important;}body .is-layout-constrained > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}body .is-layout-constrained > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}body .is-layout-constrained > .aligncenter{margin-left: auto !important;margin-right: auto !important;}body .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)){max-width: var(--wp--style--global--content-size);margin-left: auto !important;margin-right: auto !important;}body .is-layout-constrained > .alignwide{max-width: var(--wp--style--global--wide-size);}body .is-layout-flex{display: flex;}body .is-layout-flex{flex-wrap: wrap;align-items: center;}body .is-layout-flex > *{margin: 0;}body .is-layout-grid{display: grid;}body .is-layout-grid > *{margin: 0;}:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;}:where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;}
.wp-block-navigation a:where(:not(.wp-element-button)){color: inherit;}
:where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;}
:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;}
.wp-block-pullquote{font-size: 1.5em;line-height: 1.6;}
</style>
<link rel='stylesheet' id='wbcr-comments-plus-url-span-css' href='https://otus.ru/journal/wp-content/plugins/clearfy/components/comments-plus/assets/css/url-span.css?ver=2.2.0' type='text/css' media='all' />
<link rel='stylesheet' id='wpel-style-css' href='https://otus.ru/journal/wp-content/plugins/wp-external-links/public/css/wpel.css?ver=2.59' type='text/css' media='all' />
<link rel='stylesheet' id='ez-toc-css' href='https://otus.ru/journal/wp-content/plugins/easy-table-of-contents/assets/css/screen.min.css?ver=2.0.61' type='text/css' media='all' />
<style id='ez-toc-inline-css' type='text/css'>
div#ez-toc-container .ez-toc-title {font-size: 120%;}div#ez-toc-container .ez-toc-title {font-weight: 500;}div#ez-toc-container ul li {font-size: 95%;}div#ez-toc-container nav ul ul li {font-size: 90%;}
.ez-toc-container-direction {direction: ltr;}.ez-toc-counter ul{counter-reset: item ;}.ez-toc-counter nav ul li a::before {content: counters(item, ".", decimal) ". ";display: inline-block;counter-increment: item;flex-grow: 0;flex-shrink: 0;margin-right: .2em; float: left; }.ez-toc-widget-direction {direction: ltr;}.ez-toc-widget-container ul{counter-reset: item ;}.ez-toc-widget-container nav ul li a::before {content: counters(item, ".", decimal) ". ";display: inline-block;counter-increment: item;flex-grow: 0;flex-shrink: 0;margin-right: .2em; float: left; }
</style>
<link rel='stylesheet' id='contentberg-fonts-css' href='https://fonts.googleapis.com/css?family=Roboto%3A400%2C500%2C700%7CPT+Serif%3A400%2C400i%2C600%7CIBM+Plex+Serif%3A500' type='text/css' media='all' />
<link rel='stylesheet' id='contentberg-core-css' href='https://otus.ru/journal/wp-content/themes/contentberg/style.css?ver=1.8.3' type='text/css' media='all' />
<link rel='stylesheet' id='contentberg-lightbox-css' href='https://otus.ru/journal/wp-content/themes/contentberg/css/lightbox.css?ver=1.8.3' type='text/css' media='all' />
<link rel='stylesheet' id='font-awesome-css' href='https://otus.ru/journal/wp-content/themes/contentberg/css/fontawesome/css/font-awesome.min.css?ver=1.8.3' type='text/css' media='all' />
<script type="text/javascript" id="breeze-prefetch-js-extra">
/* <![CDATA[ */
var breeze_prefetch = {"local_url":"https:\/\/otus.ru\/journal","ignore_remote_prefetch":"1","ignore_list":["\/wp-admin\/"]};
/* ]]> */
</script>
<script type="text/javascript" src="https://otus.ru/journal/wp-content/plugins/breeze/assets/js/js-front-end/breeze-prefetch-links.min.js" id="breeze-prefetch-js"></script>
<script type="text/javascript" src="https://otus.ru/journal/wp-includes/js/jquery/jquery.min.js" id="jquery-core-js"></script>
<script type="text/javascript" src="https://otus.ru/journal/wp-includes/js/jquery/jquery-migrate.min.js" id="jquery-migrate-js"></script>
<script type="text/javascript" src="https://otus.ru/journal/wp-content/themes/contentberg/js/lazysizes.js" id="lazysizes-js"></script>
<link rel="https://api.w.org/" href="https://otus.ru/journal/wp-json/" /><link rel="alternate" type="application/json" href="https://otus.ru/journal/wp-json/wp/v2/posts/5668" /><link rel='shortlink' href='https://otus.ru/journal/?p=5668' />
<link rel="alternate" type="application/json+oembed" href="https://otus.ru/journal/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fotus.ru%2Fjournal%2Foperatory-i-tipy-dannyh-pascal%2F" />
<link rel="alternate" type="text/xml+oembed" href="https://otus.ru/journal/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fotus.ru%2Fjournal%2Foperatory-i-tipy-dannyh-pascal%2F&format=xml" />
<script>var Sphere_Plugin = {"ajaxurl":"https:\/\/otus.ru\/journal\/wp-admin\/admin-ajax.php"};</script><link rel="icon" href="https://otus.ru/journal/wp-content/uploads/2020/11/cropped-OTUS_logo_OTUS-COMP-LOGO-WHITE-1-32x32.png" sizes="32x32" />
<link rel="icon" href="https://otus.ru/journal/wp-content/uploads/2020/11/cropped-OTUS_logo_OTUS-COMP-LOGO-WHITE-1-192x192.png" sizes="192x192" />
<link rel="apple-touch-icon" href="https://otus.ru/journal/wp-content/uploads/2020/11/cropped-OTUS_logo_OTUS-COMP-LOGO-WHITE-1-180x180.png" />
<meta name="msapplication-TileImage" content="https://otus.ru/journal/wp-content/uploads/2020/11/cropped-OTUS_logo_OTUS-COMP-LOGO-WHITE-1-270x270.png" />
<style type="text/css" id="wp-custom-css">
#menu-item-10406 .wpel-icon {
display: none;
}
#menu-item-10407 .wpel-icon {
display: none;
}
.otus-login-site a .wpel-icon {
display: none;
}
.menu-menju-navykov-container a .wpel-icon {
display: none;
}
.otus-login-site a
{
background: #ffd709;
border-radius: 12px;
color: #0f0f10;
font-size: 14px;
font-weight: 700;
line-height: 20px;
display: block;
text-align: center;
padding: 8px 25px;
}
.main-footer.dark {
background: linear-gradient(90deg, #a64fc5, #4f54e6);
border-color: transparent;
}
.main-footer.bold .copyright {
color: #fff;
}
.main-footer.bold .to-top i {
color: #fff;
}
.main-footer.bold .back-to-top {
color: #fff;
}
.nav__scroll {
overflow-x: auto;
-webkit-overflow-scrolling: touch;
}
.scrollable-menu .menu {
display: flex;
}
.nav__scroll
{
background: linear-gradient(90deg, #a64fc5, #4f54e6);
}
.scrollable-menu .menu .menu-item {
flex: 0 0 auto;
padding: 15px 15px;
}
.scrollable-menu .menu .menu-item a {
color: #fff;
}
.nav__scroll::-webkit-scrollbar{background-color:#fff;height:5px;}
.nav__scroll::-webkit-scrollbar-thumb{background-color:#dcdcdc;}
.nav__scroll::-webkit-scrollbar-track{-webkit-border-radius:0;border-radius:0;background-color:#fff;}/
body {
min-width: 320px;
}
.banner-click img {
margin: 0 auto;
display: block;
}
.banner-click {
cursor: pointer;
}
.banner-footer-area {
margin-bottom: 20px;
}
.banner-left-area {
margin-top: 40px;
} </style>
<!--Start VDZ Yandex Metrika Plugin-->
<!-- Yandex.Metrika counter --><script type="text/javascript" >(function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)};m[i].l=1*new Date();k=e.createElement(t),a=e.getElementsByTagName(t)[0],k.async=1,k.src=r,a.parentNode.insertBefore(k,a)})(window, document, "script", "https://mc.yandex.ru/metrika/tag.js", "ym");ym(34531570, "init", {clickmap:true, trackLinks:true, accurateTrackBounce:true, webvisor:true, trackHash:true, ecommerce:"dataLayer"});</script>
<noscript><div><img src="https://mc.yandex.ru/watch/34531570" style="position:absolute; left:-9999px;" alt="" /></div></noscript>
<!-- /Yandex.Metrika counter --><!--START ADD EVENTS FROM CF7--><script type='text/javascript'>document.addEventListener( 'wpcf7submit', function( event ) {
//event.detail.contactFormId;
if(ym){
//console.log(event.detail);
ym(34531570, 'reachGoal', 'VDZ_SEND_CONTACT_FORM_7');
ym(34531570, 'params', {
page_url: window.location.href,
status: event.detail.status,
locale: event.detail.contactFormLocale,
form_id: event.detail.contactFormId,
});
}
}, false );
</script><!--END ADD EVENTS FROM CF7-->
<!--End VDZ Yandex Metrika Plugin-->
</head>
<body class="post-template-default single single-post postid-5668 single-format-standard right-sidebar lazy-normal has-lb">
<div class="main-wrap">
<header id="main-head" class="main-head head-nav-below has-search-modal simple simple-boxed">
<div class="inner inner-head" data-sticky-bar="0">
<div class="wrap cf wrap-head">
<div class="left-contain">
<span class="mobile-nav"><i class="fa fa-bars"></i></span>
<div class="title">
<a href="https://otus.ru/journal/" title="OTUS JOURNAL" rel="home" data-wpel-link="internal">
<span class="text-logo"><img src="/journal/wp-content/themes/contentberg/img/logo_site.svg" alt="OTUS JOURNAL"></span>
</a>
</div>
</div>
<div class="navigation-wrap inline">
<nav class="navigation inline simple light" data-sticky-bar="0">
<div class="menu-rubriki-container"><ul id="menu-rubriki" class="menu"><li id="menu-item-109" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-cat-1 menu-item-109"><a href="https://otus.ru/journal/category/pro-it/" data-wpel-link="internal"><span>Про IT</span></a></li>
<li id="menu-item-113" class="menu-item menu-item-type-taxonomy menu-item-object-category current-post-ancestor current-menu-parent current-post-parent menu-cat-4 menu-item-113"><a href="https://otus.ru/journal/category/polza/" data-wpel-link="internal"><span>Полезное</span></a></li>
<li id="menu-item-114" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-cat-3 menu-item-114"><a href="https://otus.ru/journal/category/lifestyle/" data-wpel-link="internal"><span>Лайфстайл</span></a></li>
<li id="menu-item-10406" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-10406"><a href="https://otus.ru/catalog/courses" data-wpel-link="external" target="_blank" rel="nofollow external noopener noreferrer" class="wpel-icon-right"><span>Обучение</span><span class="wpel-icon wpel-image wpel-icon-6"></span></a></li>
<li id="menu-item-10407" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-10407"><a href="https://otus.ru/about" data-wpel-link="external" target="_blank" rel="nofollow external noopener noreferrer" class="wpel-icon-right"><span>Информация</span><span class="wpel-icon wpel-image wpel-icon-6"></span></a></li>
</ul></div> </nav>
</div>
<div class="actions">
<div class="otus-login-site">
<a href="https://otus.ru/login/" target="_blank" data-wpel-link="external" rel="nofollow external noopener noreferrer" class="wpel-icon-right">Войти<span class="wpel-icon wpel-image wpel-icon-6"></span></a>
</div>
<a href="#" title="Search" class="search-link"><i class="fa fa-search"></i></a>
</div>
</div>
</div>
</header> <!-- .main-head -->
<div class="nav nav_disable nav_colored nav_transparent course-categories__nav nav__scroll ">
<div class="container wrap">
<div class="links inline simple light scrollable-menu">
<div class="menu-menju-navykov-container"><ul id="menu-menju-navykov" class="menu"><li id="menu-item-10413" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-10413"><a href="https://otus.ru/categories/programming/" data-wpel-link="external" target="_blank" rel="nofollow external noopener noreferrer" class="wpel-icon-right">Программирование<span class="wpel-icon wpel-image wpel-icon-6"></span></a></li>
<li id="menu-item-10414" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-10414"><a href="https://otus.ru/categories/architecture/" data-wpel-link="external" target="_blank" rel="nofollow external noopener noreferrer" class="wpel-icon-right">Архитектура<span class="wpel-icon wpel-image wpel-icon-6"></span></a></li>
<li id="menu-item-10415" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-10415"><a href="https://otus.ru/categories/operations/" data-wpel-link="external" target="_blank" rel="nofollow external noopener noreferrer" class="wpel-icon-right">Инфраструктура<span class="wpel-icon wpel-image wpel-icon-6"></span></a></li>
<li id="menu-item-10416" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-10416"><a href="https://otus.ru/categories/information-security-courses/" data-wpel-link="external" target="_blank" rel="nofollow external noopener noreferrer" class="wpel-icon-right">Безопасность<span class="wpel-icon wpel-image wpel-icon-6"></span></a></li>
<li id="menu-item-10417" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-10417"><a href="https://otus.ru/categories/data-science/" data-wpel-link="external" target="_blank" rel="nofollow external noopener noreferrer" class="wpel-icon-right">Data Science<span class="wpel-icon wpel-image wpel-icon-6"></span></a></li>
<li id="menu-item-10418" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-10418"><a href="https://otus.ru/categories/gamedev/" data-wpel-link="external" target="_blank" rel="nofollow external noopener noreferrer" class="wpel-icon-right">GameDev<span class="wpel-icon wpel-image wpel-icon-6"></span></a></li>
<li id="menu-item-10419" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-10419"><a href="https://otus.ru/categories/marketing-business/" data-wpel-link="external" target="_blank" rel="nofollow external noopener noreferrer" class="wpel-icon-right">Управление<span class="wpel-icon wpel-image wpel-icon-6"></span></a></li>
<li id="menu-item-10420" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-10420"><a href="https://otus.ru/categories/analytics/" data-wpel-link="external" target="_blank" rel="nofollow external noopener noreferrer" class="wpel-icon-right">Аналитика и анализ<span class="wpel-icon wpel-image wpel-icon-6"></span></a></li>
<li id="menu-item-10421" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-10421"><a href="https://otus.ru/categories/testing/" data-wpel-link="external" target="_blank" rel="nofollow external noopener noreferrer" class="wpel-icon-right">Тестирование<span class="wpel-icon wpel-image wpel-icon-6"></span></a></li>
</ul></div> </div>
</div>
</div>
<div class="main wrap">
<div class="ts-row cf">
<div class="col-8 main-content cf">
<article id="post-5668" class="the-post post-5668 post type-post status-publish format-standard has-post-thumbnail category-polza tag-programmirovanie">
<header class="post-header the-post-header cf">
<div class="post-meta the-post-meta">
<span class="post-cat">
<a href="https://otus.ru/journal/category/polza/" class="category" data-wpel-link="internal">Полезное</a>
</span>
<h1 class="post-title">
Операторы и типы данных Pascal
</h1>
<a href="https://otus.ru/journal/operatory-i-tipy-dannyh-pascal/" class="date-link" data-wpel-link="internal"><time class="post-date">4 марта, 2023</time></a>
</div>
<div class="featured">
<a href="https://otus.ru/journal/wp-content/uploads/2023/03/oj-1080x720-12.jpg" class="image-link" data-wpel-link="internal"><img width="770" height="515" src="data:image/svg+xml,%3Csvg%20viewBox%3D%270%200%20770%20515%27%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%3E%3C%2Fsvg%3E" class="attachment-contentberg-main size-contentberg-main lazyload wp-post-image" alt="Операторы и типы данных Pascal" title="Операторы и типы данных Pascal" decoding="async" fetchpriority="high" data-srcset="https://otus.ru/journal/wp-content/uploads/2023/03/oj-1080x720-12-770x515.jpg 770w, https://otus.ru/journal/wp-content/uploads/2023/03/oj-1080x720-12-270x180.jpg 270w" data-src="https://otus.ru/journal/wp-content/uploads/2023/03/oj-1080x720-12-770x515.jpg" data-sizes="(max-width: 770px) 100vw, 770px" /> </a>
</div>
</header><!-- .post-header -->
<div class="post-content description cf entry-content content-normal">
<div id="ez-toc-container" class="ez-toc-v2_0_61 counter-hierarchy ez-toc-counter ez-toc-grey ez-toc-container-direction">
<div class="ez-toc-title-container">
<p class="ez-toc-title " >Содержание</p>
<span class="ez-toc-title-toggle"><a href="#" class="ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle" aria-label="Toggle Table of Content"><span class="ez-toc-js-icon-con"><span class=""><span class="eztoc-hide" style="display:none;">Toggle</span><span class="ez-toc-icon-toggle-span"><svg style="fill: #999;color:#999" xmlns="http://www.w3.org/2000/svg" class="list-377408" width="20px" height="20px" viewBox="0 0 24 24" fill="none"><path d="M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z" fill="currentColor"></path></svg><svg style="fill: #999;color:#999" class="arrow-unsorted-368013" xmlns="http://www.w3.org/2000/svg" width="10px" height="10px" viewBox="0 0 24 24" version="1.2" baseProfile="tiny"><path d="M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z"/></svg></span></span></span></a></span></div>
<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class="ez-toc-link ez-toc-heading-1" href="#%D0%9E%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0" title="Описание языка">Описание языка</a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class="ez-toc-link ez-toc-heading-2" href="#%D0%9E%D1%81%D0%BE%D0%B1%D0%B5%D0%BD%D0%BD%D0%BE%D1%81%D1%82%D0%B8" title="Особенности">Особенности</a></li></ul></li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class="ez-toc-link ez-toc-heading-3" href="#%D0%9F%D1%80%D0%B5%D0%B8%D0%BC%D1%83%D1%89%D0%B5%D1%81%D1%82%D0%B2%D0%B0_%D0%B8_%D0%BD%D0%B5%D0%B4%D0%BE%D1%81%D1%82%D0%B0%D1%82%D0%BA%D0%B8" title="Преимущества и недостатки">Преимущества и недостатки</a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class="ez-toc-link ez-toc-heading-4" href="#%D0%A1%D0%B8%D0%BB%D1%8C%D0%BD%D1%8B%D0%B5_%D1%81%D1%82%D0%BE%D1%80%D0%BE%D0%BD%D1%8B" title="Сильные стороны">Сильные стороны</a></li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class="ez-toc-link ez-toc-heading-5" href="#%D0%A1%D0%BB%D0%B0%D0%B1%D1%8B%D0%B5_%D1%81%D1%82%D0%BE%D1%80%D0%BE%D0%BD%D1%8B" title="Слабые стороны">Слабые стороны</a></li></ul></li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class="ez-toc-link ez-toc-heading-6" href="#%D0%A1%D1%84%D0%B5%D1%80%D1%8B_%D0%BF%D1%80%D0%B8%D0%BC%D0%B5%D0%BD%D0%B5%D0%BD%D0%B8%D1%8F" title="Сферы применения">Сферы применения</a></li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class="ez-toc-link ez-toc-heading-7" href="#%D0%A2%D0%B5%D1%80%D0%BC%D0%B8%D0%BD%D1%8B_%D0%B4%D0%BB%D1%8F_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%81%D1%82%D0%B0" title="Термины для программиста">Термины для программиста</a></li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class="ez-toc-link ez-toc-heading-8" href="#%D0%A1%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D0%B0_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F" title="Структура приложения">Структура приложения</a></li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class="ez-toc-link ez-toc-heading-9" href="#%D0%A2%D0%B8%D0%BF%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85" title="Типы данных">Типы данных</a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class="ez-toc-link ez-toc-heading-10" href="#%D0%9F%D1%80%D0%BE%D1%81%D1%82%D1%8B%D0%B5" title="Простые">Простые</a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class="ez-toc-link ez-toc-heading-11" href="#%D0%A6%D0%B5%D0%BB%D0%BE%D1%87%D0%B8%D1%81%D0%BB%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5" title="Целочисленные">Целочисленные</a></li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class="ez-toc-link ez-toc-heading-12" href="#%D0%92%D0%B5%D1%89%D0%B5%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5" title="Вещественные">Вещественные</a></li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class="ez-toc-link ez-toc-heading-13" href="#%D0%A1%D0%B8%D0%BC%D0%B2%D0%BE%D0%BB%D1%8C%D0%BD%D1%8B%D0%B5" title="Символьные">Символьные</a></li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class="ez-toc-link ez-toc-heading-14" href="#%D0%9F%D0%B5%D1%80%D0%B5%D1%87%D0%B8%D1%81%D0%BB%D1%8F%D0%B5%D0%BC%D1%8B%D0%B5" title="Перечисляемые">Перечисляемые</a></li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class="ez-toc-link ez-toc-heading-15" href="#%D0%9E%D0%B3%D1%80%D0%B0%D0%BD%D0%B8%D1%87%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5" title="Ограниченные">Ограниченные</a></li></ul></li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class="ez-toc-link ez-toc-heading-16" href="#%D0%A1%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%BD%D1%8B%D0%B5" title="Структурированные">Структурированные</a></li></ul></li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class="ez-toc-link ez-toc-heading-17" href="#%D0%9E%D0%BF%D0%B5%D1%80%D0%B0%D1%82%D0%BE%D1%80%D1%8B_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0" title="Операторы языка">Операторы языка</a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class="ez-toc-link ez-toc-heading-18" href="#%D0%9E%D0%BF%D0%B5%D1%80%D0%B0%D1%82%D0%BE%D1%80_%D0%BF%D1%80%D0%B8%D1%81%D0%B2%D0%B0%D0%B8%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F" title="Оператор присваивания">Оператор присваивания</a></li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class="ez-toc-link ez-toc-heading-19" href="#%D0%9E%D0%BF%D0%B5%D1%80%D0%B0%D1%82%D0%BE%D1%80_%D0%B2%D1%8B%D0%B7%D0%BE%D0%B2%D0%B0" title="Оператор вызова">Оператор вызова</a></li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class="ez-toc-link ez-toc-heading-20" href="#%D0%9F%D0%B5%D1%80%D0%B5%D1%85%D0%BE%D0%B4" title="Переход">Переход</a></li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class="ez-toc-link ez-toc-heading-21" href="#%D0%9F%D1%83%D1%81%D1%82%D1%8B%D0%B5" title="Пустые">Пустые</a></li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class="ez-toc-link ez-toc-heading-22" href="#%D0%A1%D0%BE%D1%81%D1%82%D0%B0%D0%B2%D0%BD%D1%8B%D0%B5" title="Составные">Составные</a></li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class="ez-toc-link ez-toc-heading-23" href="#%D0%A3%D1%81%D0%BB%D0%BE%D0%B2%D0%BD%D1%8B%D0%B5" title="Условные">Условные</a></li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class="ez-toc-link ez-toc-heading-24" href="#%D0%92%D1%8B%D0%B1%D0%BE%D1%80" title="Выбор">Выбор</a></li></ul></li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class="ez-toc-link ez-toc-heading-25" href="#%D0%9F%D0%BE%D1%80%D1%8F%D0%B4%D0%BE%D0%BA_%D0%B2%D1%8B%D0%BF%D0%BE%D0%BB%D0%BD%D0%B5%D0%BD%D0%B8%D1%8F" title="Порядок выполнения">Порядок выполнения</a></li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class="ez-toc-link ez-toc-heading-26" href="#%D0%9E%D0%BF%D0%B5%D1%80%D0%B0%D1%86%D0%B8%D0%B8_%D0%B8_%D0%B8%D1%85_%D0%B2%D1%8B%D0%BF%D0%BE%D0%BB%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5" title="Операции и их выполнение">Операции и их выполнение</a></li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class="ez-toc-link ez-toc-heading-27" href="#%D0%A6%D0%B8%D0%BA%D0%BB%D1%8B" title="Циклы">Циклы</a></li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class="ez-toc-link ez-toc-heading-28" href="#%D0%9A%D0%B0%D0%BA_%D0%BE%D1%81%D0%B2%D0%BE%D0%B8%D1%82%D1%8C_Pascal" title="Как освоить Pascal">Как освоить Pascal</a></li></ul></nav></div>
<p>Pascal – известный язык программирования, который изучается преимущественно в школьных программах. Он используется для обучения навыкам разработки. Заложен в основу большинства других языков программирования. Имеет несколько диалектов. В «чистом» (первоначальном) виде практически не встречается.</p>
<p>Далее предстоит изучить операторы Pascal, которые пригодятся программисту при создании исходного кода. Также выясним, для чего именно используется Паскаль, какие плюсы и минусы имеет. Соответствующие сведения пригодятся преимущественно новичкам, но и опытные разработчики найдут в них что-нибудь полезное для себя.</p>
<h2 class="wp-block-heading"><span class="ez-toc-section" id="%D0%9E%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0"></span>Описание языка<span class="ez-toc-section-end"></span></h2>
<p>Язык программирования Паскаль – универсальное средство создания программных кодов. Отличается строгой структурой, а также типизацией переменных. Обладает простым и понятным на интуитивном уровне синтаксисом.</p>
<p>Pascal появился в 1970 году. Его создал Никлаус Вирт на основе Алгол-68. Изначально соответствующий язык предназначался для обучения студентов основам структурной разработки.</p>
<p>Имеет несколько диалектов:</p>
<ul>
<li>UCSD;</li>
<li>Object;</li>
<li>Turbo;</li>
<li>MidletPascal;</li>
<li>Free;</li>
<li>GNU;</li>
<li>TMT.</li>
</ul>
<p>Это императивное средство разработки. Программа, написанная на Pascal, представляет собой некий набор последовательных команд или операторов.</p>
<h3 class="wp-block-heading"><span class="ez-toc-section" id="%D0%9E%D1%81%D0%BE%D0%B1%D0%B5%D0%BD%D0%BD%D0%BE%D1%81%D1%82%D0%B8"></span>Особенности<span class="ez-toc-section-end"></span></h3>
<p>Паскаль – язык со строгой (сильной) типизацией. Это значит, что различным компонентам приложения (модулям, функциям и переменным) присваиваются конкретные свойства. Они строго определяются перед началом работы программного обеспечения.</p>
<p>Такой прием позволяет согласовать работу имеющихся операторов и отдельно взятых фрагментов кола, свести вероятность ошибок к минимуму.</p>
<p>Pascal выделяется своей процедурностью и структурированностью. Программное обеспечение будет состоять из отдельных блоков. Каждый фрагмент находится в строгой подчиненности – как во всем приложении, так и по отноше нию друг к другу.</p>
<p>Операторы (команды) здесь обладают определенными особенностями. К ним относят следующие моменты:</p>
<ol>
<li>Строгая последовательность. Операторы обрабатываются по очереди. Пока один из них не завершится, следующий не начнется.</li>
<li>Результат реализации оператора записывается непосредственно в память устройства.</li>
<li>Каждый последующий оператор будет использовать для работы информацию, полученную от предыдущей команды.</li>
</ol>
<p>Далее операторы и их особенности предстоит изучить более подробно. Только сначала необходимо понять, насколько целесообразно разработчику изучать основы Pascal.</p>
<h2 class="wp-block-heading"><span class="ez-toc-section" id="%D0%9F%D1%80%D0%B5%D0%B8%D0%BC%D1%83%D1%89%D0%B5%D1%81%D1%82%D0%B2%D0%B0_%D0%B8_%D0%BD%D0%B5%D0%B4%D0%BE%D1%81%D1%82%D0%B0%D1%82%D0%BA%D0%B8"></span>Преимущества и недостатки<span class="ez-toc-section-end"></span></h2>
<p>Pascal – это язык, у которого есть как плюсы, так и минусы. Зная о них, разработчики будут понимать, стоит ли изучать соответствующий ЯП.</p>
<h3 class="wp-block-heading"><span class="ez-toc-section" id="%D0%A1%D0%B8%D0%BB%D1%8C%D0%BD%D1%8B%D0%B5_%D1%81%D1%82%D0%BE%D1%80%D0%BE%D0%BD%D1%8B"></span>Сильные стороны<span class="ez-toc-section-end"></span></h3>
<p>К преимуществам Пас каль относят:</p>
<ol>
<li>Простой и понятный синтаксис, который базируется на ABC. Он напоминает английский язык. Подойдет для изучения новичками. Присвоить переменной значение того или иного типа удается без большого и сложного кода.</li>
<li>Компилируемость. Приложение, написанное на Паскале, легко переводится в машинный код, а также передается между клиентами. Никаких интерпретаторов и виртуальных машин для этого не потребуется.</li>
<li>Наличие строгой типизации и структурированности. Pascal дружелюбен к новичкам. За счет строго определенных типов и понятной структуры удается свести к минимуму вероятность возникновения ошибок. В случае их появления поддерживается быстрые способы устранения еще на стадии компиляции исходного кода.</li>
</ol>
<p>Информатика в старших классах предлагает изучать Pascal для освоения разработки. Это неплохой базовый ЯП. Чаще он используется непосредственно для «старта» в программировании. Более опытные разработчики Паскаль изучают редко.</p>
<h3 class="wp-block-heading"><span class="ez-toc-section" id="%D0%A1%D0%BB%D0%B0%D0%B1%D1%8B%D0%B5_%D1%81%D1%82%D0%BE%D1%80%D0%BE%D0%BD%D1%8B"></span>Слабые стороны<span class="ez-toc-section-end"></span></h3>
<p>Недостатки у соответствующего языка программирова ния тоже есть. К ним относят:</p>
<ol>
<li>Ограниченность в плане взаимодействия с компонентами, написанными на других ЯП.</li>
<li>Подходит для решения далеко не всех задач. Это связано с универсальностью ЯП. Для ряда проблем необходимо пользоваться узкоспециализированными языками, а не Паскалем.</li>
<li>Ограниченность при работе с динамической памятью, а также массивами переменного размера.</li>
<li>Отсутствие раздельной компиляции.</li>
</ol>
<p>Базовые навыки разработки Паскаль даст, но для того, чтобы создавать продвинутое программное обеспечение и игры он не подходит.</p>
<h2 class="wp-block-heading"><span class="ez-toc-section" id="%D0%A1%D1%84%D0%B5%D1%80%D1%8B_%D0%BF%D1%80%D0%B8%D0%BC%D0%B5%D0%BD%D0%B5%D0%BD%D0%B8%D1%8F"></span>Сферы применения<span class="ez-toc-section-end"></span></h2>
<p>Описание преимуществ и недостатков рассматриваемого ЯП понятно. Он используется в следующих сферах:</p>
<ol>
<li>Школьная программа. Урок «Информатика» для старших классов. Во время занятий рассматриваются основные принципы разработки ПО, особенно в классах с углубленным изучением IT и математики.</li>
<li>Бизнес. Программировать на Pascal для бизнес-идей старались в 90-е и 2000-е годы. Тогда на этом ЯП велась разработка автоматизированных систем производственных процессов. Отдельные компании пользуются соответствующим ПО до сих пор.</li>
<li>Промышленность. Диалекты Паскаля часто используются для программирования устройств с микропроцессорами.</li>
</ol>
<p>Некоторые современные диалекты встречаются в бытовой технике и электронике – на них пишутся специализированные для оборудования приложения.</p>
<h2 class="wp-block-heading"><span class="ez-toc-section" id="%D0%A2%D0%B5%D1%80%D0%BC%D0%B8%D0%BD%D1%8B_%D0%B4%D0%BB%D1%8F_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%81%D1%82%D0%B0"></span>Термины для программиста<span class="ez-toc-section-end"></span></h2>
<p>Перед тем как изучать основные типы данных Паскаля, а также его операторы, предстоит запомнить несколько ключевых понятий разработки. Они пригодятся как новичкам, так и опытным программистам. Помогут быстрее разобраться с принципами работы имеющегося исходного кода с любой концепцией:</p>
<ol>
<li>Алгоритм – набор инструкций (команд), необходимых для решения той или иной задачи.</li>
<li>Аргумент – значение, которое придается в команду или функцию.</li>
<li>Символ – простейшая единица информации. Выражается одной букве или символьным элементом.</li>
<li>Объект – комбинация связанных переменных, структур данных и констант. Они выбираются и совместно обрабатываются.</li>
<li>Константа – объект или значение, которое не меняется на протяжении всего жизненного цикла приложения. Остается в заданном первоначальном виде. Не может быть изменена в процессе обработки исходного кода.</li>
<li>Тип данных – классификация данных того или иного вида.</li>
<li>Массив – группы схожих видов значений, которые были предварительно сгруппированы. Могут быть представлены в виде списка похожих между собой элементов.</li>
<li>Исключение – аномальное или неожиданное состояние, которое возникает в программе при выполнении. Иногда называется ошибкой или условием, изменяющим путь приложения или микропроцессора.</li>
<li>Выражение – это группа букв, цифр и символов. Соответствующий элемент используется для представления значения одной или нескольких переменных.</li>
<li>Петля – это цикл. Последовательность команд (инструкций), которые повторяют один и тот же процесс до выполнения установленного условия или получения команды на остановку.</li>
<li>Итерация – один проход через написанный набор операций.</li>
<li>Ключевое слово – слово, зарезервированное языком разработки. Используется для выполнения определенных задач. Могут быть параметрами, а также командами.</li>
<li>Нуль – отсутствие ценности. Нулевой символ – это программный код, представляющий собой символ без значения.</li>
<li>Операнд – объект, которым разрешено управлять, используя так называемые операторы.</li>
<li>Оператор – компонент кода, умеющий через специальные инструкции управлять операндами.</li>
<li>Переменная – место хранения временных данных заданного вида в программе.</li>
<li>Указатель – переменная с адресом места в памяти.</li>
</ol>
<p>Далее предстоит изучить операции и операторы Pascal, принципы и смысл их обработки в программном коде.</p>
<h2 class="wp-block-heading"><span class="ez-toc-section" id="%D0%A1%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D0%B0_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F"></span>Структура приложения<span class="ez-toc-section-end"></span></h2>
<p>Pascal – это алгоритмический язык, в котором приложения имеют определенную структуру. Программы делятся на несколько условных блоков:</p>
<figure class="wp-block-table"><table><tbody><tr><td>Название раздела</td><td>Характеристика</td></tr><tr><td>Program</td><td>Это имя приложения. Отвечает за ввод имени проекта.</td></tr><tr><td>Uses crt, graph</td><td>Подключение дополнительных модулей. Graph отвечает за возможности рисования. Ctr – модуль, используемый для очистки экрана операций. Для этого используется команда вида clrscr.</td></tr><tr><td>Label</td><td>Раздел, отвечающий за метки. При обработке оператора goto программа перейдет к «закладкам», отмеченным в рабочей области кода.</td></tr><tr><td>Const</td><td>Блок постоянных величин – констант. Это «фиксированный» тип данных. В соответствующем разделе записываются имена констант, а также их значения. Тип будет определен системой автоматически.</td></tr><tr><td>Var</td><td>Раздел, отвечающий за переменные. Указанный идентификатор получит тип хранимой информации.</td></tr><tr><td>Produce или Function</td><td>После соответствующего ключевого слова необходимо указать вспомогательные подпрограммы или функции. Они предназначаются для более быстрой разработки программного обеспечения.</td></tr><tr><td>Begin</td><td>Тело приложения. Это – описание самой программы. Последовательность операторов и команд. Они включают в себя значения, а также величины для выполнения поставленных задач и целей.</td></tr><tr><td>End</td><td>Часть тела исходного кода приложения. Означает конец программы. Begin указывает на начало. После end программный код работать не будет.</td></tr></tbody></table></figure>
<p>Предложенная таблица поможет лучше разобраться в структуре приложения. Для того, чтобы программное обеспечение работало, достаточно использовать всего несколько разделов. Это – begin и end. Это основные компоненты, без которых не будет функционировать ни один написанный код.</p>
<h2 class="wp-block-heading"><span class="ez-toc-section" id="%D0%A2%D0%B8%D0%BF%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85"></span>Типы данных<span class="ez-toc-section-end"></span></h2>
<p>Паскаль – это строго типизированный язык разработки. Это значит, что переменные, в которых хранится информация, имеет определенный тип. Приложению придется напрямую указать, какой именно вариант использовать для хранения значений. Данный прием позволяет компьютеру понимать, какие операции выполнять с теми или иными материалами.</p>
<p>Типы данных в рассматриваемом языке бывают:</p>
<ul>
<li>простыми;</li>
<li>структурированными;</li>
<li>целыми;</li>
<li>символьными;</li>
<li>логическими;</li>
<li>перечисляемыми;</li>
<li>интервальными;</li>
<li>вещественными;</li>
<li>массивами;</li>
<li>строками;</li>
<li>множествами;</li>
<li>файлами;</li>
<li>записями;</li>
<li>указателями.</li>
</ul>
<p>Перед более детальным изучением опе раторов в Pascal необходимо рассмотреть указанные типы данных и их синтаксис. В противном случае программа не сможет понять, как обрабатывать исходных код. Акцент необходимо сделать на простых видах. С ними предстоит работать как новичку, так и опытному разработчику.</p>
<h3 class="wp-block-heading"><span class="ez-toc-section" id="%D0%9F%D1%80%D0%BE%D1%81%D1%82%D1%8B%D0%B5"></span>Простые<span class="ez-toc-section-end"></span></h3>
<p>Простые типы переменных в рассматриваемом языке условно делятся на стандартные (порядковые), а также перечисляемые (ограниченные).</p>
<h4 class="wp-block-heading"><span class="ez-toc-section" id="%D0%A6%D0%B5%D0%BB%D0%BE%D1%87%D0%B8%D1%81%D0%BB%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5"></span><em>Целочисленные</em><span class="ez-toc-section-end"></span></h4>
<p>Целочисленный – это основной встроенный тип переменных. Целое число, которое может быть представлено в нескольких формах. Pascal поддерживает 5 его типов:</p>
<figure class="wp-block-table"><table><tbody><tr><td>Название типа</td><td>Диапазон значений</td><td>Формат записи</td></tr><tr><td>Short int</td><td>-128…+127</td><td>8 бит</td></tr><tr><td>Integer</td><td>-32 768…32 767</td><td>16 бит</td></tr><tr><td>longint</td><td>-2 147 483 648…+2 147 483 647</td><td>32 бит</td></tr><tr><td>Byte</td><td>0…255</td><td>8 бит без знака</td></tr><tr><td>Word</td><td>0 …65 535</td><td>16 бит без знака</td></tr></tbody></table></figure>
<p>Данная таблица поможет понять, сколько места в памяти и какой именно тип данных занимает в том или ином случае.</p>
<p>Над операндами целочисленного типа можно осуществлять арифметические действия. Необходимо соблюдать следующие правила:</p>
<ol>
<li>Тип целой константы – это встроенный целочисленный тип с наименьшим диапазоном, включающим значение соответствующей целой константы.</li>
<li>При бинарной операции (когда используются для операнда), оба операнда будут преобразованы к общему типу. Только после этого совершаются необходимые арифметические действия.</li>
<li>Выражение, написанное в операторе присваивания справа, вычисляется независимо от переменной, находящейся слева.</li>
</ol>
<p>Для описания целочисленной переменной необходимо использовать ключевое слово var. Форма представления: var <список переменных> <тип> (без угловых скобок).</p>
<h4 class="wp-block-heading"><span class="ez-toc-section" id="%D0%92%D0%B5%D1%89%D0%B5%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5"></span><em>Вещественные</em><span class="ez-toc-section-end"></span></h4>
<p>Паскаль – алгоритмический язык, поддерживающий работу с вещественными переменными. Сюда относят числа с плавающей запятой с фиксированным количеством цифр.</p>
<figure class="wp-block-image"><img decoding="async" src="https://lh6.googleusercontent.com/DVGCgrLA8B3sdSt4l1MA-ucGw7LeyaKgw_2abuhLQItVovwcGzfESecICG0LVaqqvVjlIHHKsrSUusBtFt6TlDYT0bwiu-6AaYfPn8YUXaG2CKvSHKGkvx3ujyj1KNKdjXqeIFW9qmsNk-9iyyY6hA" alt="Операторы и типы данных Pascal"/></figure>
<p>Таблица выше укажет на диапазон десятичных цифр и диапазон вещественных переменных. Для его использования необходимо указать ключевое слово real. Форма записи: var <переменные:> real.</p>
<h4 class="wp-block-heading"><span class="ez-toc-section" id="%D0%A1%D0%B8%D0%BC%D0%B2%D0%BE%D0%BB%D1%8C%D0%BD%D1%8B%D0%B5"></span><em>Символьные</em><span class="ez-toc-section-end"></span></h4>
<p>Char используется для работы в коде с символьными значениями. У каждого символа имеются такие составляющие как:</p>
<ul>
<li>номер;</li>
<li>код.</li>
</ul>
<p>Задается по форме: <тип><имя_переменной(‘значения’)> . Чтобы апостроф был символом, его необходимо тоже заключить в такие кавычки.</p>
<h4 class="wp-block-heading"><span class="ez-toc-section" id="%D0%9F%D0%B5%D1%80%D0%B5%D1%87%D0%B8%D1%81%D0%BB%D1%8F%D0%B5%D0%BC%D1%8B%D0%B5"></span><em>Перечисляемые</em><span class="ez-toc-section-end"></span></h4>
<p>Предстает в виде перечисления констант в строго определенном порядке и количестве. Состоит из списка констант. Такие переменные принимают значения любой из заданных const. Описание выглядит так:</p>
<figure class="wp-block-image"><img decoding="async" src="https://lh3.googleusercontent.com/HG8NWAf2WNsYrZtwEyV3cm1tSeNUxb9bYEesMEvfx13T_wULjrdYPaNKat7TBnTGVJndqIIuM7bu-8Qnt-0gkf7UDvrtVbIz-cjS_Mp1IPbpJNyLpq-LsjSXS7q0EJvwEc3S2EJz2RG3I_PfaCFxqw" alt="Операторы и типы данных Pascal"/></figure>
<p><список констант> – это специальный вид констант, которые задаются через запятую. Они имеют свой собственный порядковый номер. Отсчет начинается с 0.</p>
<h4 class="wp-block-heading"><span class="ez-toc-section" id="%D0%9E%D0%B3%D1%80%D0%B0%D0%BD%D0%B8%D1%87%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5"></span><em>Ограниченные</em><span class="ez-toc-section-end"></span></h4>
<p>Ограниченные переменные – это переменные, которые принимают не все значения своего типа. Они определены в некотором диапазоне. Каждый ограниченный вид переменной задается путем накладывания ограничений на базовые (основные).</p>
<p>Форма записи:</p>
<figure class="wp-block-image"><img decoding="async" src="https://lh4.googleusercontent.com/Iv9Xm_yXaZ0_zljkEGM9R6U_UONru2lf69SosoR71JIJfIF2QdprT5bGeQ_hrdE2DmBgV5JhZQENV4wOU1KERRMDdOAaE4Him2HiGmbgKtpt_YOfm1ovGC9j7SxSirmiFHmAKgFqPnDjExczQnUVfA" alt="Операторы и типы данных Pascal"/></figure>
<p>Главное запомнить следующие правила:</p>
<ol>
<li>Обе ограниченные константы должны быть одного и того же вида.</li>
<li>В качестве базового типа используется любой простой. Исключение – это действительные переменные (real).</li>
<li>Начальные значения при определении ограниченного типа не могут быть больше итоговых.</li>
</ol>
<figure class="wp-block-image"><img decoding="async" src="https://lh4.googleusercontent.com/d_5dU_dZncaoohQ496tPtuQGQ-bHg2Fb3C-YHvpUb7EVMBGe1Sq14Q3j9uoXCqrM8OZb5PUADbVBU6Ix3Pp7zprmILsNRn4t6x9F8JYvCYgvY7f3xaX_YaVSx9FjwYZIQZPCOnYGhDvzvY4IFQbhMg" alt="Операторы и типы данных Pascal"/></figure>
<p>Выше – пример кода, при помощи которого можно задать ограниченный тип.</p>
<h3 class="wp-block-heading"><span class="ez-toc-section" id="%D0%A1%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%BD%D1%8B%D0%B5"></span>Структурированные<span class="ez-toc-section-end"></span></h3>
<p>Структурированный тип данных – это типы, которые определяют наборы однотипных или разнотипных компонентов. Они образуются из других типов. Могут быть представлены:</p>
<ol>
<li>Массивами (array). Заранее определенное и известное количество однотипных компонентов, которые проиндексированы. Массивы в Паскале бывают одномерными и многомерными.</li>
<li>Записями (record). Включают в себя несколько полей, тип которых отличается друг от друга. Пример – описание товара на складе. Оно включает в себя наименование, количество, стоимость, а также наличие сертификатов качества. Здесь название – это величина string, количество – int, цена – real, сертификат – boolean (логический). Запись – наиболее общий и гибкий структурированный тип данных. Связано это с тем, что она может быть образована из неоднотипных элементов, а также в ней связи задаются явным образом.</li>
<li>Строками (string). Так называют последовательности символов кодовых таблиц оборудования (компьютера). Могут включать в себя от 0 до 255 символьных записей.</li>
<li>Множествами (set). Набор взаимосвязанных по тем или иным признакам (их группам) компонентов. Множества включают в себя порядковые элементы, количество которых не превышает 255.</li>
<li>Файлами (files). Файл – это последовательность однотипных элементов, записанных на внешнем носителе под определенным заранее именем. Тип соответствующих компонентов может быть совершенно любым, исключая сам тип file. Размер подобного «документа» не объявляется разработчиком.</li>
</ol>
<p>Теперь можно более подробно рассмотреть операторы и их смысл в Pascal.</p>
<h2 class="wp-block-heading"><span class="ez-toc-section" id="%D0%9E%D0%BF%D0%B5%D1%80%D0%B0%D1%82%D0%BE%D1%80%D1%8B_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0"></span>Операторы языка<span class="ez-toc-section-end"></span></h2>
<p>Оператор – средство описания действий (команд и операций), предусматриваемых заданным алгоритмом решения задачи. В программном коде подобные компоненты могут быть как помеченными, так и нет. Условно делятся на две большие группы:</p>
<ul>
<li>простые;</li>
<li>структурные.</li>
</ul>
<p>Оператор в Паскале используется только для описания действий. Отделяются они друг от друга символом «точка с запятой». Если оператор ставится перед end, else или until, то соответствующий характерный разделитель не ставится.</p>
<p>Простые операторы включают в себя:</p>
<ul>
<li>оператор присваивания;</li>
<li>вызова процедуры;</li>
<li>перехода.</li>
</ul>
<p>Структурные операторы – это условный оператор, составной и цикла.</p>
<h3 class="wp-block-heading"><span class="ez-toc-section" id="%D0%9E%D0%BF%D0%B5%D1%80%D0%B0%D1%82%D0%BE%D1%80_%D0%BF%D1%80%D0%B8%D1%81%D0%B2%D0%B0%D0%B8%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F"></span>Оператор присваивания<span class="ez-toc-section-end"></span></h3>
<p>Оператор, использующийся для вычисления значения выражения, написанной в правой части, а также присваивания полученного значения переменной слева. Тип переменной должен быть совместим с типом выражения.</p>
<p>Два типа являются совместимыми, если соблюдаются следующие пункты:</p>
<ul>
<li>они записаны при помощи одного и того же описателя;</li>
<li>вещественные переменные типа real, single и double могут получать значения целого типа;</li>
<li>порядковый тип поддерживает значения типа-диапазона.</li>
</ul>
<p>Синтаксис присваивания выглядит так:</p>
<p><img alt="Операторы и типы данных Pascal" decoding="async" src="https://lh6.googleusercontent.com/_nNyeTyR76MOIn5H6NR8L4pvcKAN5xzfrjHIpHFN8M9CLX24qO-_lgFkAvhjGwbU-zWO75S2ri24kuiUI-GmD-8Yw10Peb9mXOYRt4G0FjBzfN-FxOMOI9OmKzto1OtS8i9EpfU6MsQKt1YOHmgMdw" width="89" height="29"> или <имя_переменной>:= <выражение>.</p>
<p>Здесь := – это оператор присваивания. Выражение a может состоять из констант, переменных, а также названий функций, знаков операций и скобок.</p>
<p>Действия в операторе присваивания выполняются слева-направо. Приоритет обработки команд будет следующим:</p>
<ul>
<li>not;</li>
<li>*, /, mod, and, div;</li>
<li>+, or, -;</li>
<li>=, <, >, <>, <=, =>, in.</li>
</ul>
<p>Выражения, написанные в скобках, будут вычисляться раньше. Оператор присваивания актуален для всех типов. Исключение – файл.</p>
<h3 class="wp-block-heading"><span class="ez-toc-section" id="%D0%9E%D0%BF%D0%B5%D1%80%D0%B0%D1%82%D0%BE%D1%80_%D0%B2%D1%8B%D0%B7%D0%BE%D0%B2%D0%B0"></span>Оператор вызова<span class="ez-toc-section-end"></span></h3>
<p>Смысл соответствующей команды – это непосредственное обращение к заданному алгоритму. Оператор вызова включает в себя:</p>
<ul>
<li>имя процедуры;</li>
<li>список аргументов (в круглых скобках).</li>
</ul>
<p>Аргументы при записи могут отсутствовать. Выполнение соответствующего «запроса» приводит к активации действий, написанные в теле процедуры или в ее непосредственном описании.</p>
<h3 class="wp-block-heading"><span class="ez-toc-section" id="%D0%9F%D0%B5%D1%80%D0%B5%D1%85%D0%BE%D0%B4"></span>Переход<span class="ez-toc-section-end"></span></h3>
<p>Перед включает в себя goto, а также метку. Выполнение соответствующей команды приводит к передаче управления оператору, помеченному указанной меткой.</p>
<figure class="wp-block-image"><img decoding="async" src="https://lh6.googleusercontent.com/b8EVNYJlnUJypPuta1_vN5KC-N0FrsZH12casLgZ5hof9GolBY5xI_nabE1znuT4U9Oinv_J6xfnCPS1ZHGf8f_G30D93nfO91_yy0AStSJlbQ6S-a01BDAEFKDIBzRqgLNidk-ve0SB5R65U3BRKw" alt="Операторы и типы данных Pascal"/></figure>
<p>Использовать метки можно только после их описания в разделе Label. Goto противоречит принципам структурного программирования. Использовать его необходимо с осторожностью. Безусловный переход может осуществляться не из любого места приложения и не в любую область исходного кода. При помощи Goto нельзя перейти в подпрограмму или выйти из нее.</p>
<h3 class="wp-block-heading"><span class="ez-toc-section" id="%D0%9F%D1%83%D1%81%D1%82%D1%8B%D0%B5"></span>Пустые<span class="ez-toc-section-end"></span></h3>
<p>Он не выполняет никаких действий. В приложении при реализации заданного программного кода никак себя не проявляет. Исключение – печать меток, точек с запятыми. Используется для безусловного перехода на него. Встречается на практике достаточно редко.</p>
<h3 class="wp-block-heading"><span class="ez-toc-section" id="%D0%A1%D0%BE%D1%81%D1%82%D0%B0%D0%B2%D0%BD%D1%8B%D0%B5"></span>Составные<span class="ez-toc-section-end"></span></h3>
<p>Pascal – это алгоритмический язык, работа в котором происходит при помощи четко установленных команд. Их перечень определяется разработчиком и прописывается в теле. Для выполнения команд используются различные operators.</p>
<figure class="wp-block-image"><img decoding="async" src="https://lh5.googleusercontent.com/1NkkhHhH1p-NaRQ33q_Z4TvCjqUS-LO-cxIcHxjP4gJzx33js1ruRSQEIyeuM5ImDddK6IqAB-I_CaS0rH1tU14H1wt6DHeM9xoZ-lj5D-n1z9x2WXZPvKtLEZJTrqYRSjIsrMiDVtKnZZGTnXmBtA" alt="Операторы и типы данных Pascal"/></figure>
<p>Составные operators позволяют выполнять определенные последовательности команд. Они начинаются ключевым словом begin, а заканчиваются end. Между соответствующими элементами вставляются команды, которые необходимо исполнять. </p>
<p>Воспринимается такой operator как единое целое. Может располагаться в любой области исходного кода.</p>
<h3 class="wp-block-heading"><span class="ez-toc-section" id="%D0%A3%D1%81%D0%BB%D0%BE%D0%B2%D0%BD%D1%8B%D0%B5"></span>Условные<span class="ez-toc-section-end"></span></h3>
<p>Условные operators используются для выбора одного или нескольких действий в зависимости от заданного критерия. Соответствующим условием выборки служит значение логического выражения.</p>
<p>Pascal имеет несколько условных operators – if и case.</p>
<p>IF необходим для организации процесса вычислений в зависимости от логического условия. Принимает две формы записи:</p>
<ul>
<li>полную (с условием else);</li>
<li>короткую.</li>
</ul>
<p>Задается соответственно:</p>
<figure class="wp-block-image"><img decoding="async" src="https://lh3.googleusercontent.com/A9pZ_aaKbxvnZTfco_cXr7-6BhIEDCalVRyWZi7fABIF2D_hRAzHAiJMs-TajpjaGyQ7a2tOolC9JyymX-W-dm_ZlbSICKgiwj1PFynvn-xNGD_0VpCErWLkRffw7Cmv9kav70t8ueaa_xLjf_X_JQ" alt="Операторы и типы данных Pascal"/></figure>
<figure class="wp-block-image"><img decoding="async" src="https://lh5.googleusercontent.com/aogfLoMMfZmLwRYcejezRwPjze79DyoXw8xQYFOQKGBNSsE87sntfBoGiCpqs0tNqv69wFiAf1Hm66uvDmKkAi9lYL4DWSlkhgxJTbXFuUqCVjHUCSMBgBXuohydVnhlHy4uzq22RMwe4zi7qpR0Bg" alt="Операторы и типы данных Pascal"/></figure>
<p>Сначала происходит вычисление выражения, написанного в условии. На выходе получается булево значение. Если оно является истиной (true), выполняется <оператор1>, указанный после слова then. При значении лжи (false) обрабатывается <оператор2>. Данный алгоритм актуален для первого способа записи.</p>
<p>Во втором случае при значении true выполняется заданное условие. В противном случае управление переходит к команде, идущей после блока if.</p>
<p>IF могут быть вложенными. Тогда форма записи будет следующей:</p>
<figure class="wp-block-image"><img decoding="async" src="https://lh3.googleusercontent.com/XwcbhlHm34PDYfWJCrEyhTXLqOYwPPbjptnZRDl_DshPAUJVTIod00QzexOACerg-TUzhMQy1ecbZfjCXQOxdj5KHn0LXqvoHzmQ9_IpMdhBx28RMB9YC4L4Rong9sbB6XEFkXNlglOEE46IEEBagA" alt="Операторы и типы данных Pascal"/></figure>
<p>На уроке под названием «Информатика» данный operator обязательно изучается. Без него задать условие выполнения команд не получится. Он является базовым.</p>
<p>При вложенных IF действует правило: else всегда связывается с ближайшим if, которое не было ранее связано с другим else.</p>
<h3 class="wp-block-heading"><span class="ez-toc-section" id="%D0%92%D1%8B%D0%B1%D0%BE%D1%80"></span>Выбор<span class="ez-toc-section-end"></span></h3>
<p>Выбор case…of…end дает возможность определения альтернативных действий из произвольного числа изначально имеющихся условий. Он включает в себя селектор и список постоянных параметров, каждому из которых предшествует список констант выбора.</p>
<p>Форма записи:</p>
<figure class="wp-block-image"><img decoding="async" src="https://lh6.googleusercontent.com/yxOnuFNMt43OkgMM-P66ErysLqH9a3kYeOT3pphC6AXhSMFHAXFmbzK97j89_axKpp4BvtkgFi10nFJpDx-ki8uvjOlqMzHnA5Lr2NtEWfkTSpMn7eC17WT1Ff_IgowbHm46M27czHfjDM79cbtidw" alt="Операторы и типы данных Pascal"/></figure>
<p>В заданном фрагменте кода <выражение-селектор> – это выражение порядкового типа. В зависимости от его значения будет приниматься решение относительно дальнейших операций.</p>
<p><список1>…<списокN> – значения, с которыми сравнивается селектор, а <оператор1>…<операторN> – выражения, из которых выполняется то, с константой которого происходит первое совпадение селектора.</p>
<p>Здесь ветка else не является обязательной в отличие от условия IF. Перед соответствующей записью разрешено поставить символ «точка с запятой».</p>
<p>Если действия для нескольких селекторов совпадают, эти константы перечисляются через запятую перед двоеточием. Синтаксис языка также позволяет задать им диапазон значений по нижней и верхней границам.</p>
<h2 class="wp-block-heading"><span class="ez-toc-section" id="%D0%9F%D0%BE%D1%80%D1%8F%D0%B4%D0%BE%D0%BA_%D0%B2%D1%8B%D0%BF%D0%BE%D0%BB%D0%BD%D0%B5%D0%BD%D0%B8%D1%8F"></span>Порядок выполнения<span class="ez-toc-section-end"></span></h2>
<p>Операторы в программе Паскаль в сложных выражениях обрабатываются особым образом – с учетом распределения так называемого приоритета. Операции одного приоритетного уровня будут выполняться слева-направо.</p>
<p>Постоянных последовательностей обработки операций (команд) у рассматриваемого языка нет – приоритет можно в любой момент изменить. Для этого используются круглые скобки.</p>
<p>В сложных выражениях приоритет распределяется по умолчанию так:</p>
<ul>
<li>унарные операции;</li>
<li>мультипликационные операции;</li>
<li>аддитивные операции;</li>
<li>операции отношений.</li>
</ul>
<p>Далее остается выяснить, какие именно операции можно выполнять с каждым видом данных.</p>
<h2 class="wp-block-heading"><span class="ez-toc-section" id="%D0%9E%D0%BF%D0%B5%D1%80%D0%B0%D1%86%D0%B8%D0%B8_%D0%B8_%D0%B8%D1%85_%D0%B2%D1%8B%D0%BF%D0%BE%D0%BB%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5"></span>Операции и их выполнение<span class="ez-toc-section-end"></span></h2>
<figure class="wp-block-image size-full"><img decoding="async" width="811" height="525" src="https://otus.ru/journal/wp-content/uploads/2023/03/image.png" alt="Операторы и типы данных Pascal" class="wp-image-5672" srcset="https://otus.ru/journal/wp-content/uploads/2023/03/image.png 811w, https://otus.ru/journal/wp-content/uploads/2023/03/image-300x194.png 300w, https://otus.ru/journal/wp-content/uploads/2023/03/image-150x97.png 150w, https://otus.ru/journal/wp-content/uploads/2023/03/image-768x497.png 768w" sizes="(max-width: 811px) 100vw, 811px" /></figure>
<p></p>
<h2 class="wp-block-heading"><span class="ez-toc-section" id="%D0%A6%D0%B8%D0%BA%D0%BB%D1%8B"></span>Циклы<span class="ez-toc-section-end"></span></h2>
<p>В некоторых диалектах Паскаля используются циклы:</p>
<ul>
<li>счетный оператор for, который применяется для реализации петли с параметрами;</li>
<li>с предусловием while;</li>
<li>с постусловием repeat.</li>
</ul>
<p>Первый вариант не может быть вызван для реализации итерационного цикла. Последние два нацелены на его реализацию, а также поддерживаются в for.</p>
<p>For обладает следующей формой представления:</p>
<figure class="wp-block-image"><img decoding="async" src="https://lh4.googleusercontent.com/YqzbJBovciy5z8XtfTzmxCdxOU1BWsm25Ezr9g3dnXBu9mR44Z7xG0Dm1BvIUfLtHsvnxCmtctCXB7obekqijXS_WJgpCF1ieN9_ZCPgZjeMIYkSLSNaDM3pkpnJTjR7uEy-cy3mPlMexT_KF0SE8g" alt="Операторы и типы данных Pascal"/></figure>
<p>While пишется так:</p>
<figure class="wp-block-image"><img decoding="async" src="https://lh5.googleusercontent.com/Q47kroCboifq4-kyoQGS80KiXon-ETiu-Ll84oiSGruw8K2qS8YYKQeq8OQABjjUtnAIA_krtYd4OJb6FasRALkrtCQmvfVsV-ZtG3kq6TCu2tYvkQa9bKlv5tJkTWE1fdV-iASAksxltgzCm5aG_Q" alt="Операторы и типы данных Pascal"/></figure>
<p>А repeat будет выглядеть следующим образом:</p>
<figure class="wp-block-image"><img decoding="async" src="https://lh3.googleusercontent.com/NP3jTo-RDMAxdaXPu4djrBZLYvlUHTnaHbwL6NbHuNP6IaDY69KfYl2QYDkT_I5K7rNmD7fFmsOiMxe1TwacOvNDMLWd_Fd2g0KQZWjTZ4tfmLhTf_SN68NVYZ-kF5gT4ORZcjDfth2tgtZON8meow" alt="Операторы и типы данных Pascal"/></figure>
<p><a href="http://dataexpress.wiki/remobject_pascal_script:operatory" data-wpel-link="external" target="_blank" rel="nofollow external noopener noreferrer" class="wpel-icon-right">Здесь<span class="wpel-icon wpel-image wpel-icon-6"></span></a> можно увидеть больше информации о работе циклов в Паскале.</p>
<h2 class="wp-block-heading"><span class="ez-toc-section" id="%D0%9A%D0%B0%D0%BA_%D0%BE%D1%81%D0%B2%D0%BE%D0%B8%D1%82%D1%8C_Pascal"></span>Как освоить Pascal<span class="ez-toc-section-end"></span></h2>
<p>Паскаль – не самый распространенный, но очень известный язык разработки. Его изучают для того, чтобы разобраться с основами создания программного обеспечения. Базовые знания Паскаля будут даны школьникам в старших классах на уроках информатики.</p>
<p>Если же хотите изучать более современные языки программирования, рекомендуется обращаться к помощи онлайн-курсов. Они предлагают:</p>
<ul>
<li>сжатые сроки обучения и тщательно составленные программы;</li>
<li>обучение с нуля основам и особенностям разработки на любом выбранном языке;</li>
<li>интересные практические и домашние задания;</li>
<li>постоянное кураторство;</li>
<li>помощь в формировании портфолио;</li>
<li>совмещение с работой, семьей и делами – все занятия можно посмотреть в записи;</li>
<li>возможность освоения IT-направления или профессии в срок до 12 месяцев.</li>
</ul>
<p>Пример – <a href="https://otus.ru/?utm_source=oj" data-wpel-link="external" target="_blank" rel="nofollow external noopener noreferrer" class="wpel-icon-right">курсы от образовательного центра OTUS<span class="wpel-icon wpel-image wpel-icon-6"></span></a>. В конце обучения пользователю будет выдан электронный сертификат установленной формы. Он поможет подтвердить приобретенные навыки и знания.</p>
</div><!-- .post-content -->
<div class="the-post-foot cf">
<div class="tag-share cf">
<div class="post-tags"><a href="https://otus.ru/journal/tag/programmirovanie/" rel="tag" data-wpel-link="internal">программирование</a></div>
<div class="post-share">
<div class="post-share-icons cf">
<span class="counters">
</span>
<a href="https://www.facebook.com/sharer.php?u=https%3A%2F%2Fotus.ru%2Fjournal%2Foperatory-i-tipy-dannyh-pascal%2F" class="link facebook wpel-icon-right" target="_blank" title="Share on Facebook" data-wpel-link="external" rel="nofollow external noopener noreferrer"><i class="fa fa-facebook"></i><span class="wpel-icon wpel-image wpel-icon-6"></span></a>
<a href="https://twitter.com/intent/tweet?url=https%3A%2F%2Fotus.ru%2Fjournal%2Foperatory-i-tipy-dannyh-pascal%2F&text=%D0%9E%D0%BF%D0%B5%D1%80%D0%B0%D1%82%D0%BE%D1%80%D1%8B%20%D0%B8%20%D1%82%D0%B8%D0%BF%D1%8B%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85%20Pascal" class="link twitter wpel-icon-right" target="_blank" title="Share on Twitter" data-wpel-link="external" rel="nofollow external noopener noreferrer"><i class="fa fa-twitter"></i><span class="wpel-icon wpel-image wpel-icon-6"></span></a>
<a href="https://www.linkedin.com/shareArticle?mini=true&url=https%3A%2F%2Fotus.ru%2Fjournal%2Foperatory-i-tipy-dannyh-pascal%2F" class="link linkedin wpel-icon-right" target="_blank" title="LinkedIn" data-wpel-link="external" rel="nofollow external noopener noreferrer"><i class="fa fa-linkedin"></i><span class="wpel-icon wpel-image wpel-icon-6"></span></a>
<a href="https://pinterest.com/pin/create/button/?url=https%3A%2F%2Fotus.ru%2Fjournal%2Foperatory-i-tipy-dannyh-pascal%2F&media=https%3A%2F%2Fotus.ru%2Fjournal%2Fwp-content%2Fuploads%2F2023%2F03%2Foj-1080x720-12.jpg&description=%D0%9E%D0%BF%D0%B5%D1%80%D0%B0%D1%82%D0%BE%D1%80%D1%8B%20%D0%B8%20%D1%82%D0%B8%D0%BF%D1%8B%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85%20Pascal" class="link pinterest wpel-icon-right" target="_blank" title="Pinterest" data-wpel-link="external" rel="nofollow external noopener noreferrer"><i class="fa fa-pinterest-p"></i><span class="wpel-icon wpel-image wpel-icon-6"></span></a>
</div>
</div>
</div>
</div>
<div class="post-nav">
<div class="post previous cf">
<a href="https://otus.ru/journal/paskal-i-class-chto-nuzhno-znat-razrabotchiku/" title="Prev Post" class="nav-icon" data-wpel-link="internal">
<i class="fa fa-angle-left"></i>
</a>
<span class="content">
<a href="https://otus.ru/journal/paskal-i-class-chto-nuzhno-znat-razrabotchiku/" class="image-link" rel="previous" data-wpel-link="internal">
<img width="150" height="106" src="data:image/svg+xml,%3Csvg%20viewBox%3D%270%200%20150%20106%27%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%3E%3C%2Fsvg%3E" class="attachment-thumbnail size-thumbnail lazyload wp-post-image" alt="Паскаль и Class: что нужно знать разработчику" decoding="async" loading="lazy" data-srcset="https://otus.ru/journal/wp-content/uploads/2023/03/oj-1080x720-11-150x106.jpg 150w, https://otus.ru/journal/wp-content/uploads/2023/03/oj-1080x720-11-300x212.jpg 300w, https://otus.ru/journal/wp-content/uploads/2023/03/oj-1080x720-11-1024x724.jpg 1024w, https://otus.ru/journal/wp-content/uploads/2023/03/oj-1080x720-11-768x543.jpg 768w, https://otus.ru/journal/wp-content/uploads/2023/03/oj-1080x720-11-1536x1086.jpg 1536w" data-src="https://otus.ru/journal/wp-content/uploads/2023/03/oj-1080x720-11-150x106.jpg" data-sizes="(max-width: 150px) 100vw, 150px" title="Паскаль и Class: что нужно знать разработчику" /> </a>
<div class="post-meta">
<span class="label">Prev Post</span>
<div class="post-meta post-meta-b">
<h2 class="post-title">
<a href="https://otus.ru/journal/paskal-i-class-chto-nuzhno-znat-razrabotchiku/" data-wpel-link="internal">Паскаль и Class: что нужно знать разработчику</a>
</h2>
<div class="below">
<a href="https://otus.ru/journal/paskal-i-class-chto-nuzhno-znat-razrabotchiku/" class="meta-item date-link" data-wpel-link="internal"><time class="post-date" datetime="2023-03-04T17:17:39+00:00">4 марта, 2023</time></a>
<span class="meta-sep"></span>
<span class="meta-item read-time">4 Mins Read</span>
</div>
</div> </div>
</span>
</div>
<div class="post next cf">
<a href="https://otus.ru/journal/razdelennye-classes-v-si-sharp/" title="Next Post" class="nav-icon" data-wpel-link="internal">
<i class="fa fa-angle-right"></i>
</a>
<span class="content">
<a href="https://otus.ru/journal/razdelennye-classes-v-si-sharp/" class="image-link" rel="next" data-wpel-link="internal">
<img width="150" height="106" src="data:image/svg+xml,%3Csvg%20viewBox%3D%270%200%20150%20106%27%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%3E%3C%2Fsvg%3E" class="attachment-thumbnail size-thumbnail lazyload wp-post-image" alt="Разделенные classes в Си Шарп" decoding="async" loading="lazy" data-srcset="https://otus.ru/journal/wp-content/uploads/2023/03/oj-1080x720-13-150x106.jpg 150w, https://otus.ru/journal/wp-content/uploads/2023/03/oj-1080x720-13-300x212.jpg 300w, https://otus.ru/journal/wp-content/uploads/2023/03/oj-1080x720-13-1024x724.jpg 1024w, https://otus.ru/journal/wp-content/uploads/2023/03/oj-1080x720-13-768x543.jpg 768w, https://otus.ru/journal/wp-content/uploads/2023/03/oj-1080x720-13-1536x1086.jpg 1536w" data-src="https://otus.ru/journal/wp-content/uploads/2023/03/oj-1080x720-13-150x106.jpg" data-sizes="(max-width: 150px) 100vw, 150px" title="Разделенные classes в Си Шарп" /> </a>
<div class="post-meta">
<span class="label">Next Post</span>
<div class="post-meta post-meta-b">
<h2 class="post-title">
<a href="https://otus.ru/journal/razdelennye-classes-v-si-sharp/" data-wpel-link="internal">Разделенные classes в Си Шарп</a>
</h2>
<div class="below">
<a href="https://otus.ru/journal/razdelennye-classes-v-si-sharp/" class="meta-item date-link" data-wpel-link="internal"><time class="post-date" datetime="2023-03-04T18:20:55+00:00">4 марта, 2023</time></a>
<span class="meta-sep"></span>
<span class="meta-item read-time">5 Mins Read</span>
</div>
</div> </div>
</span>
</div>
</div>
<section class="related-posts grid-3">
<h4 class="section-head"><span class="title">Читать ещё</span></h4>
<div class="ts-row posts cf">
<article class="post col-4">
<a href="https://otus.ru/journal/uroven-gotovnosti-cto-k-2026/" title="Уровень готовности CTO к 2026" class="image-link" data-wpel-link="internal">
<img width="270" height="180" src="data:image/svg+xml,%3Csvg%20viewBox%3D%270%200%20270%20180%27%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%3E%3C%2Fsvg%3E" class="image lazyload wp-post-image" alt="Уровень готовности CTO к 2026" title="Уровень готовности CTO к 2026" decoding="async" loading="lazy" data-srcset="https://otus.ru/journal/wp-content/uploads/2025/11/oj-1080x720-kopiya-3-270x180.jpg 270w, https://otus.ru/journal/wp-content/uploads/2025/11/oj-1080x720-kopiya-3-770x515.jpg 770w, https://otus.ru/journal/wp-content/uploads/2025/11/oj-1080x720-kopiya-3-370x245.jpg 370w" data-src="https://otus.ru/journal/wp-content/uploads/2025/11/oj-1080x720-kopiya-3-270x180.jpg" data-sizes="(max-width: 270px) 100vw, 270px" /> </a>
<div class="content">
<h3 class="post-title"><a href="https://otus.ru/journal/uroven-gotovnosti-cto-k-2026/" class="post-link" data-wpel-link="internal">Уровень готовности CTO к 2026</a></h3>
<div class="post-meta">
<time class="post-date" datetime="2025-11-16T19:50:59+00:00">16 ноября, 2025</time>
</div>
</div>
</article >
<article class="post col-4">
<a href="https://otus.ru/journal/novye-uroki-noyabrya-tolko-top-temy-po-programmirovaniju/" title="Новые уроки ноября: только топ-темы по программированию" class="image-link" data-wpel-link="internal">
<img width="270" height="180" src="data:image/svg+xml,%3Csvg%20viewBox%3D%270%200%20270%20180%27%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%3E%3C%2Fsvg%3E" class="image lazyload wp-post-image" alt="Новые уроки ноября: только топ-темы по программированию" title="Новые уроки ноября: только топ-темы по программированию" decoding="async" loading="lazy" data-srcset="https://otus.ru/journal/wp-content/uploads/2025/11/oj-1080x720-kopiya-2-270x180.jpg 270w, https://otus.ru/journal/wp-content/uploads/2025/11/oj-1080x720-kopiya-2-770x515.jpg 770w, https://otus.ru/journal/wp-content/uploads/2025/11/oj-1080x720-kopiya-2-370x245.jpg 370w" data-src="https://otus.ru/journal/wp-content/uploads/2025/11/oj-1080x720-kopiya-2-270x180.jpg" data-sizes="(max-width: 270px) 100vw, 270px" /> </a>
<div class="content">
<h3 class="post-title"><a href="https://otus.ru/journal/novye-uroki-noyabrya-tolko-top-temy-po-programmirovaniju/" class="post-link" data-wpel-link="internal">Новые уроки ноября: только топ-темы по программированию</a></h3>
<div class="post-meta">
<time class="post-date" datetime="2025-11-09T23:24:11+00:00">9 ноября, 2025</time>
</div>
</div>
</article >
<article class="post col-4">
<a href="https://otus.ru/journal/schjot-idjot-na-chasy/" title="Счёт идёт на часы" class="image-link" data-wpel-link="internal">
<img width="270" height="180" src="data:image/svg+xml,%3Csvg%20viewBox%3D%270%200%20270%20180%27%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%3E%3C%2Fsvg%3E" class="image lazyload wp-post-image" alt="Счёт идёт на часы" title="Счёт идёт на часы" decoding="async" loading="lazy" data-srcset="https://otus.ru/journal/wp-content/uploads/2025/10/oj-1080x720-kopiya-7-270x180.png 270w, https://otus.ru/journal/wp-content/uploads/2025/10/oj-1080x720-kopiya-7-770x515.png 770w, https://otus.ru/journal/wp-content/uploads/2025/10/oj-1080x720-kopiya-7-370x245.png 370w" data-src="https://otus.ru/journal/wp-content/uploads/2025/10/oj-1080x720-kopiya-7-270x180.png" data-sizes="(max-width: 270px) 100vw, 270px" /> </a>
<div class="content">
<h3 class="post-title"><a href="https://otus.ru/journal/schjot-idjot-na-chasy/" class="post-link" data-wpel-link="internal">Счёт идёт на часы</a></h3>
<div class="post-meta">
<time class="post-date" datetime="2025-10-30T15:04:59+00:00">30 октября, 2025</time>
</div>
</div>
</article >
</div>
</section>
</article> <!-- .the-post -->
</div>
<aside class="col-4 sidebar">
<div class="inner">
<ul>
<li id="search-2" class="widget widget_search"><h5 class="widget-title"><span>Поиск по блогу</span></h5>
<form method="get" class="search-form" action="https://otus.ru/journal/">
<label>
<span class="screen-reader-text">Search for:</span>
<input type="search" class="search-field" placeholder="Введите запрос и нажмите Enter" value="" name="s" title="Search for:" />
</label>
<button type="submit" class="search-submit"><i class="fa fa-search"></i></button>
</form>
</li>
<li id="tag_cloud-5" class="widget widget_tag_cloud"><h5 class="widget-title"><span>Метки</span></h5><div class="tagcloud"><a href="https://otus.ru/journal/tag/android-2/" class="tag-cloud-link tag-link-74 tag-link-position-1" style="font-size: 12.472222222222pt;" aria-label="Android (34 элемента)" data-wpel-link="internal">Android</a>
<a href="https://otus.ru/journal/tag/c-3/" class="tag-cloud-link tag-link-91 tag-link-position-2" style="font-size: 10.916666666667pt;" aria-label="C (23 элемента)" data-wpel-link="internal">C</a>
<a href="https://otus.ru/journal/tag/c-2/" class="tag-cloud-link tag-link-81 tag-link-position-3" style="font-size: 12.666666666667pt;" aria-label="C# (35 элементов)" data-wpel-link="internal">C#</a>
<a href="https://otus.ru/journal/tag/c/" class="tag-cloud-link tag-link-20 tag-link-position-4" style="font-size: 12.472222222222pt;" aria-label="c++ (34 элемента)" data-wpel-link="internal">c++</a>
<a href="https://otus.ru/journal/tag/computer-science/" class="tag-cloud-link tag-link-209 tag-link-position-5" style="font-size: 15.972222222222pt;" aria-label="computer science (78 элементов)" data-wpel-link="internal">computer science</a>
<a href="https://otus.ru/journal/tag/css/" class="tag-cloud-link tag-link-288 tag-link-position-6" style="font-size: 8.6805555555556pt;" aria-label="CSS (13 элементов)" data-wpel-link="internal">CSS</a>
<a href="https://otus.ru/journal/tag/data-science/" class="tag-cloud-link tag-link-151 tag-link-position-7" style="font-size: 8pt;" aria-label="Data Science (11 элементов)" data-wpel-link="internal">Data Science</a>
<a href="https://otus.ru/journal/tag/devops/" class="tag-cloud-link tag-link-98 tag-link-position-8" style="font-size: 10.138888888889pt;" aria-label="devops (19 элементов)" data-wpel-link="internal">devops</a>
<a href="https://otus.ru/journal/tag/docker/" class="tag-cloud-link tag-link-143 tag-link-position-9" style="font-size: 8.2916666666667pt;" aria-label="Docker (12 элементов)" data-wpel-link="internal">Docker</a>
<a href="https://otus.ru/journal/tag/gamedev/" class="tag-cloud-link tag-link-25 tag-link-position-10" style="font-size: 11.694444444444pt;" aria-label="gamedev (28 элементов)" data-wpel-link="internal">gamedev</a>
<a href="https://otus.ru/journal/tag/hr/" class="tag-cloud-link tag-link-103 tag-link-position-11" style="font-size: 8pt;" aria-label="hr (11 элементов)" data-wpel-link="internal">hr</a>
<a href="https://otus.ru/journal/tag/html/" class="tag-cloud-link tag-link-217 tag-link-position-12" style="font-size: 11.208333333333pt;" aria-label="HTML (25 элементов)" data-wpel-link="internal">HTML</a>
<a href="https://otus.ru/journal/tag/ios/" class="tag-cloud-link tag-link-101 tag-link-position-13" style="font-size: 8.9722222222222pt;" aria-label="iOS (14 элементов)" data-wpel-link="internal">iOS</a>
<a href="https://otus.ru/journal/tag/it/" class="tag-cloud-link tag-link-50 tag-link-position-14" style="font-size: 10.527777777778pt;" aria-label="IT (21 элемент)" data-wpel-link="internal">IT</a>
<a href="https://otus.ru/journal/tag/java/" class="tag-cloud-link tag-link-75 tag-link-position-15" style="font-size: 15.680555555556pt;" aria-label="Java (73 элемента)" data-wpel-link="internal">Java</a>
<a href="https://otus.ru/journal/tag/javascript/" class="tag-cloud-link tag-link-83 tag-link-position-16" style="font-size: 14.319444444444pt;" aria-label="JavaScript (53 элемента)" data-wpel-link="internal">JavaScript</a>
<a href="https://otus.ru/journal/tag/linux/" class="tag-cloud-link tag-link-141 tag-link-position-17" style="font-size: 11.888888888889pt;" aria-label="Linux (29 элементов)" data-wpel-link="internal">Linux</a>
<a href="https://otus.ru/journal/tag/machine-learning/" class="tag-cloud-link tag-link-167 tag-link-position-18" style="font-size: 8.6805555555556pt;" aria-label="Machine Learning (13 элементов)" data-wpel-link="internal">Machine Learning</a>
<a href="https://otus.ru/journal/tag/otus-book/" class="tag-cloud-link tag-link-261 tag-link-position-19" style="font-size: 9.9444444444444pt;" aria-label="otus book (18 элементов)" data-wpel-link="internal">otus book</a>
<a href="https://otus.ru/journal/tag/php/" class="tag-cloud-link tag-link-45 tag-link-position-20" style="font-size: 10.527777777778pt;" aria-label="PHP (21 элемент)" data-wpel-link="internal">PHP</a>
<a href="https://otus.ru/journal/tag/python/" class="tag-cloud-link tag-link-27 tag-link-position-21" style="font-size: 16.944444444444pt;" aria-label="Python (99 элементов)" data-wpel-link="internal">Python</a>
<a href="https://otus.ru/journal/tag/qa/" class="tag-cloud-link tag-link-155 tag-link-position-22" style="font-size: 11.402777777778pt;" aria-label="qa (26 элементов)" data-wpel-link="internal">qa</a>
<a href="https://otus.ru/journal/tag/sql/" class="tag-cloud-link tag-link-38 tag-link-position-23" style="font-size: 12.861111111111pt;" aria-label="SQL (37 элементов)" data-wpel-link="internal">SQL</a>
<a href="https://otus.ru/journal/tag/team-lead/" class="tag-cloud-link tag-link-364 tag-link-position-24" style="font-size: 9.9444444444444pt;" aria-label="team lead (18 элементов)" data-wpel-link="internal">team lead</a>
<a href="https://otus.ru/journal/tag/unity/" class="tag-cloud-link tag-link-24 tag-link-position-25" style="font-size: 8pt;" aria-label="unity (11 элементов)" data-wpel-link="internal">unity</a>
<a href="https://otus.ru/journal/tag/algoritmy/" class="tag-cloud-link tag-link-30 tag-link-position-26" style="font-size: 9.9444444444444pt;" aria-label="Алгоритмы (18 элементов)" data-wpel-link="internal">Алгоритмы</a>
<a href="https://otus.ru/journal/tag/bazy-dannyh/" class="tag-cloud-link tag-link-40 tag-link-position-27" style="font-size: 10.138888888889pt;" aria-label="Базы данных (19 элементов)" data-wpel-link="internal">Базы данных</a>
<a href="https://otus.ru/journal/tag/matematika/" class="tag-cloud-link tag-link-44 tag-link-position-28" style="font-size: 10.916666666667pt;" aria-label="Математика (23 элемента)" data-wpel-link="internal">Математика</a>
<a href="https://otus.ru/journal/tag/arhitektura-po/" class="tag-cloud-link tag-link-10 tag-link-position-29" style="font-size: 9.4583333333333pt;" aria-label="архитектура ПО (16 элементов)" data-wpel-link="internal">архитектура ПО</a>
<a href="https://otus.ru/journal/tag/bazy-dannyh-2/" class="tag-cloud-link tag-link-251 tag-link-position-30" style="font-size: 10.138888888889pt;" aria-label="базы данных (19 элементов)" data-wpel-link="internal">базы данных</a>
<a href="https://otus.ru/journal/tag/vebinar/" class="tag-cloud-link tag-link-201 tag-link-position-31" style="font-size: 13.930555555556pt;" aria-label="вебинар (48 элементов)" data-wpel-link="internal">вебинар</a>
<a href="https://otus.ru/journal/tag/dajdzhest/" class="tag-cloud-link tag-link-308 tag-link-position-32" style="font-size: 10.722222222222pt;" aria-label="дайджест (22 элемента)" data-wpel-link="internal">дайджест</a>
<a href="https://otus.ru/journal/tag/zapis-vebinara/" class="tag-cloud-link tag-link-226 tag-link-position-33" style="font-size: 14.902777777778pt;" aria-label="запись вебинара (61 элемент)" data-wpel-link="internal">запись вебинара</a>
<a href="https://otus.ru/journal/tag/zapis-uroka/" class="tag-cloud-link tag-link-272 tag-link-position-34" style="font-size: 16.069444444444pt;" aria-label="запись урока (80 элементов)" data-wpel-link="internal">запись урока</a>
<a href="https://otus.ru/journal/tag/informacionnaya-bezopasnost/" class="tag-cloud-link tag-link-232 tag-link-position-35" style="font-size: 10.138888888889pt;" aria-label="информационная безопасность (19 элементов)" data-wpel-link="internal">информационная безопасность</a>
<a href="https://otus.ru/journal/tag/karera-v-it/" class="tag-cloud-link tag-link-292 tag-link-position-36" style="font-size: 9.9444444444444pt;" aria-label="карьера в IT (18 элементов)" data-wpel-link="internal">карьера в IT</a>
<a href="https://otus.ru/journal/tag/podborka/" class="tag-cloud-link tag-link-7 tag-link-position-37" style="font-size: 12.666666666667pt;" aria-label="подборка (35 элементов)" data-wpel-link="internal">подборка</a>
<a href="https://otus.ru/journal/tag/podborka-statej/" class="tag-cloud-link tag-link-219 tag-link-position-38" style="font-size: 15.777777777778pt;" aria-label="подборка статей (75 элементов)" data-wpel-link="internal">подборка статей</a>
<a href="https://otus.ru/journal/tag/programmirovanie/" class="tag-cloud-link tag-link-65 tag-link-position-39" style="font-size: 22pt;" aria-label="программирование (332 элемента)" data-wpel-link="internal">программирование</a>
<a href="https://otus.ru/journal/tag/proekt/" class="tag-cloud-link tag-link-321 tag-link-position-40" style="font-size: 11.888888888889pt;" aria-label="проект (29 элементов)" data-wpel-link="internal">проект</a>
<a href="https://otus.ru/journal/tag/proektnaya-rabota/" class="tag-cloud-link tag-link-310 tag-link-position-41" style="font-size: 11.597222222222pt;" aria-label="проектная работа (27 элементов)" data-wpel-link="internal">проектная работа</a>
<a href="https://otus.ru/journal/tag/seti/" class="tag-cloud-link tag-link-181 tag-link-position-42" style="font-size: 12.958333333333pt;" aria-label="сети (38 элементов)" data-wpel-link="internal">сети</a>
<a href="https://otus.ru/journal/tag/testirovanie/" class="tag-cloud-link tag-link-69 tag-link-position-43" style="font-size: 13.930555555556pt;" aria-label="тестирование (48 элементов)" data-wpel-link="internal">тестирование</a>
<a href="https://otus.ru/journal/tag/upravlenie-komandoj/" class="tag-cloud-link tag-link-63 tag-link-position-44" style="font-size: 11.694444444444pt;" aria-label="управление командой (28 элементов)" data-wpel-link="internal">управление командой</a>
<a href="https://otus.ru/journal/tag/habr-2/" class="tag-cloud-link tag-link-203 tag-link-position-45" style="font-size: 13.930555555556pt;" aria-label="хабр (48 элементов)" data-wpel-link="internal">хабр</a></div>
</li>
</ul>
</div>
</aside>
</div> <!-- .ts-row -->
</div> <!-- .main -->
<footer class="main-footer dark bold">
<section class="lower-footer cf">
<div class="wrap">
<div class="links">
<div class="menu-menju-navykov-container"><ul id="menu-menju-navykov-1" class="menu"><li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-10413"><a href="https://otus.ru/categories/programming/" data-wpel-link="external" target="_blank" rel="nofollow external noopener noreferrer" class="wpel-icon-right">Программирование<span class="wpel-icon wpel-image wpel-icon-6"></span></a></li>
<li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-10414"><a href="https://otus.ru/categories/architecture/" data-wpel-link="external" target="_blank" rel="nofollow external noopener noreferrer" class="wpel-icon-right">Архитектура<span class="wpel-icon wpel-image wpel-icon-6"></span></a></li>
<li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-10415"><a href="https://otus.ru/categories/operations/" data-wpel-link="external" target="_blank" rel="nofollow external noopener noreferrer" class="wpel-icon-right">Инфраструктура<span class="wpel-icon wpel-image wpel-icon-6"></span></a></li>
<li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-10416"><a href="https://otus.ru/categories/information-security-courses/" data-wpel-link="external" target="_blank" rel="nofollow external noopener noreferrer" class="wpel-icon-right">Безопасность<span class="wpel-icon wpel-image wpel-icon-6"></span></a></li>
<li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-10417"><a href="https://otus.ru/categories/data-science/" data-wpel-link="external" target="_blank" rel="nofollow external noopener noreferrer" class="wpel-icon-right">Data Science<span class="wpel-icon wpel-image wpel-icon-6"></span></a></li>
<li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-10418"><a href="https://otus.ru/categories/gamedev/" data-wpel-link="external" target="_blank" rel="nofollow external noopener noreferrer" class="wpel-icon-right">GameDev<span class="wpel-icon wpel-image wpel-icon-6"></span></a></li>
<li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-10419"><a href="https://otus.ru/categories/marketing-business/" data-wpel-link="external" target="_blank" rel="nofollow external noopener noreferrer" class="wpel-icon-right">Управление<span class="wpel-icon wpel-image wpel-icon-6"></span></a></li>
<li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-10420"><a href="https://otus.ru/categories/analytics/" data-wpel-link="external" target="_blank" rel="nofollow external noopener noreferrer" class="wpel-icon-right">Аналитика и анализ<span class="wpel-icon wpel-image wpel-icon-6"></span></a></li>
<li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-10421"><a href="https://otus.ru/categories/testing/" data-wpel-link="external" target="_blank" rel="nofollow external noopener noreferrer" class="wpel-icon-right">Тестирование<span class="wpel-icon wpel-image wpel-icon-6"></span></a></li>
</ul></div> </div>
<p class="copyright"> © 2015-2026 OTUS </p>
<div class="to-top">
<a href="#" class="back-to-top"><i class="fa fa-angle-up"></i> Top</a>
</div>
</div>
</section>
</footer>
</div> <!-- .main-wrap -->
<div class="mobile-menu-container off-canvas" id="mobile-menu">
<a href="#" class="close"><i class="fa fa-times"></i></a>
<div class="logo">
</div>
<ul class="mobile-menu"></ul>
</div>
<div class="search-modal-wrap">
<div class="search-modal-box" role="dialog" aria-modal="true">
<form method="get" class="search-form" action="https://otus.ru/journal/">
<input type="search" class="search-field" name="s" placeholder="Search..." value="" required />
<button type="submit" class="search-submit visuallyhidden">Submit</button>
<p class="message">
Type above and press <em>Enter</em> to search. Press <em>Esc</em> to cancel. </p>
</form>
</div>
</div>
<script type="text/javascript" src="https://otus.ru/journal/wp-content/plugins/clearfy/components/comments-plus/assets/js/url-span.js" id="wbcr-comments-plus-url-span-js"></script>
<script type="text/javascript" id="ez-toc-scroll-scriptjs-js-extra">
/* <![CDATA[ */
var eztoc_smooth_local = {"scroll_offset":"30"};
/* ]]> */
</script>
<script type="text/javascript" src="https://otus.ru/journal/wp-content/plugins/easy-table-of-contents/assets/js/smooth_scroll.min.js" id="ez-toc-scroll-scriptjs-js"></script>
<script type="text/javascript" src="https://otus.ru/journal/wp-content/plugins/easy-table-of-contents/vendor/js-cookie/js.cookie.min.js" id="ez-toc-js-cookie-js"></script>
<script type="text/javascript" src="https://otus.ru/journal/wp-content/plugins/easy-table-of-contents/vendor/sticky-kit/jquery.sticky-kit.min.js" id="ez-toc-jquery-sticky-kit-js"></script>
<script type="text/javascript" id="ez-toc-js-js-extra">
/* <![CDATA[ */
var ezTOC = {"smooth_scroll":"1","visibility_hide_by_default":"","scroll_offset":"30","fallbackIcon":"<span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span>"};
/* ]]> */
</script>
<script type="text/javascript" src="https://otus.ru/journal/wp-content/plugins/easy-table-of-contents/assets/js/front.min.js" id="ez-toc-js-js"></script>
<script type="text/javascript" src="https://otus.ru/journal/wp-content/themes/contentberg/js/custom-script.js" id="custom-script-js"></script>
<script type="text/javascript" src="https://otus.ru/journal/wp-content/themes/contentberg/js/magnific-popup.js" id="magnific-popup-js"></script>
<script type="text/javascript" src="https://otus.ru/journal/wp-content/themes/contentberg/js/jquery.fitvids.js" id="jquery-fitvids-js"></script>
<script type="text/javascript" src="https://otus.ru/journal/wp-includes/js/imagesloaded.min.js" id="imagesloaded-js"></script>
<script type="text/javascript" src="https://otus.ru/journal/wp-content/themes/contentberg/js/object-fit-images.js" id="object-fit-images-js"></script>
<script type="text/javascript" id="contentberg-theme-js-extra">
/* <![CDATA[ */
var Bunyad = {"custom_ajax_url":"\/journal\/operatory-i-tipy-dannyh-pascal\/"};
/* ]]> */
</script>
<script type="text/javascript" src="https://otus.ru/journal/wp-content/themes/contentberg/js/theme.js" id="contentberg-theme-js"></script>
<script type="text/javascript" src="https://otus.ru/journal/wp-content/themes/contentberg/js/theia-sticky-sidebar.js" id="theia-sticky-sidebar-js"></script>
<script type="text/javascript" src="https://otus.ru/journal/wp-content/themes/contentberg/js/jquery.slick.js" id="jquery-slick-js"></script>
<script type="text/javascript" src="https://otus.ru/journal/wp-content/themes/contentberg/js/jarallax.js" id="jarallax-js"></script>
<script type="text/javascript" src="https://otus.ru/journal/wp-includes/js/masonry.min.js" id="masonry-js"></script>
<script type="text/javascript" src="https://otus.ru/journal/wp-includes/js/jquery/jquery.masonry.min.js" id="jquery-masonry-js"></script>
</body>
</html>
<!-- Cache served by breeze CACHE - Last modified: Mon, 09 Mar 2026 16:22:07 GMT -->