- •3 Вопрос.
- •Языки программирования низкого уровня
- •Преимущества
- •Недостатки
- •Языки программирования высокого уровня
- •4 Вопрос.
- •5 Вопрос.
- •Синтаксис и языковые конструкции
- •Семантика языков программирования
- •6 Вопрос.
- •12 Вопрос. Символьные типы
- •Логический тип
- •14 Вопрос
- •20 Вопрос
- •21 Вопрос
- •22 Вопрос
- •23 Вопрос
- •Присваивание (ввод/вывод);
- •Сравнение
- •Конкатенацию.
- •25 Вопрос
- •26 Вопрос
- •27 Вопрос.
- •28 Вопрос
- •29 Вопрос Рекурсия в программировании [править]Функции
- •31 Вопрос
- •Краткое описание алгоритма
- •32 Вопрос
- •33 Вопрос. Операции с файлом
- •[Править]Операции, связанные с открытием файла
- •34 Вопрос. Стандартные процедуры и функции для текстовых и типизированных файлов
5 Вопрос.
Паскаль (англ. Pascal) — язык программирования общего назначения. Один из наиболее известных языков программирования, широко применялся в промышленном программировании[4], до сих пор используется для обучения программированию в высшей школе, является базой для ряда других языков. Особенностями языка являются строгая типизация и наличие средств структурного (процедурного) программирования. Паскаль был одним из первых таких языков. По мнению Н. Вирта, язык должен способствовать дисциплинированию программирования, поэтому, наряду со строгой типизацией, в Паскале сведены к минимуму возможные синтаксические неоднозначности, а сам синтаксис автор постарался сделать интуитивно понятным даже при первом знакомстве с языком.
Синтаксис и языковые конструкции
Паскаль, в его первоначальном виде, представляет собою чисто процедурный язык и включает в себя множество алголоподобных структур и конструкций с зарезервированными словами наподобие if, then, else, while, for, и т. д. Тем не менее, Паскаль также содержит большое количество возможностей для структурирования информации и абстракций, которые отсутствуют в изначальном Алголе-60, такие как определение типов, записи, указатели, перечисления, и множества. Эти конструкции были частично унаследованы или инспирированы от языков Симула-67, Алгол-68, созданного Никлаусом Виртом AlgolW и предложены Хоаром.
В современных диалектах (Free Pascal) доступны такие операции, как перегрузка операторов и функций.
Семантика языков программирования
Существует несколько подходов к определению семантики языков программирования.
Наиболее широко распространены разновидности следующих трёх: операционного, деривационного (аксиоматического) и денотационного (математического).
При описании семантики в рамках операционного подхода обычно исполнение конструкций языка программирования интерпретируется с помощью некоторой воображаемой (абстрактной) ЭВМ.
Деривационная семантика описывает последствия выполнения конструкций языка с помощью языка логики и задания пред- и постусловий.
Денотационная семантика оперирует понятиями, типичными для математики — множества, соответствия, а также суждения, утверждения и др.
6 Вопрос.
Система Pascal ABC основана на языке Delphi Pascal и призвана осуществить постепенный переход от простейших программ к модульному, объектно-ориентированному, событийному и компонентному программированию. Некоторые языковые конструкции в Pascal ABC допускают, наряду с основным, упрощенное использование, что позволяет использовать их на ранних этапах обучения. Например, в модулях может отсутствовать разделение на секцию интерфейса и секцию реализации. В этом случае модули устроены практически так же, как и основная программа, что позволяет приступить к их изучению параллельно с темой "Процедуры и функции". Тела методов можно определять непосредственно внутри классов (в стиле Java и C#), что позволяет создавать классы практически сразу после изучения записей, процедур и функций. В языке Pascal ABC имеются арифметические операции с типизированными указателями (в стиле языка C), а также тип complex, предназначенный для работы с комплексными числами.
Компилятор Pascal ABC является компилятором переднего плана (front-end). Это означает, что он не генерирует исполняемый код в виде .exe-файла, а создает в результате компиляции дерево программы в памяти, которое затем выполняется с помощью встроенного интерпретатора. В итоге скорость работы программы примерно в 20 раз медленнее скорости работы этой же программы, откомпилированной в среде Borland Pascal, и в 50 раз медленнее этой программы, откомпилированной в среде Borland Delphi.
7-8 вопрос.
Языком называется совокупность символов, соглашений и правил, используемых для общения. Основой Паскаля, как и любого языка, являетсяалфавит – конечный набор знаков, состоящий из букв и других символов. В Паскале разрешается использовать буквы латинского алфавита, десятичные и шестнадцатеричных цифры, а также ряд специальных символов (+, -, *, /, ( , ) и т.п.).
Неделимые последовательности знаков алфавита образуют слова, несущие в программе определённый смысл. Слова разделяются пробельными символами. Набор слов Паскаля можно разделить на три группы: зарезервированные слова, стандартные идентификаторы и идентификаторы пользователя. Зарезервированные слова (служебные слова) имеют неизменяемый вид и смысл (они не могут быть изменены программистом). Например: if, end, or – зарезервированные слова. Зарезервированные слова нельзя использовать в качестве имён для обозначения величин в программе.
Группа слов, имеющая некоторый смысл, называется словосочетанием. Минимальная конструкция языка, представляющая собой законченную мысль, называется предложением. Если предложение языка задаёт полное описание некоторого действия, оно называется оператором. Предложение, описывающее структуру и организацию данных – объектов языка, над которыми производятся различные действия, называется описанием.
Для того чтобы научиться составлять программы для компьютера, необходимо изучить синтаксис языка (правила записи его конструкций) и егосемантику (смысл и правила использования этих конструкций).
Для того чтобы программа решения задачи обладала свойством массовости, следует употреблять не конкретные значения величин, а использовать их обозначения для возможности изменения их значений в ходе выполнения программы. Для этого предназначены имена – идентификаторы, которые ставят в соответствие объекту программы некоторый набор символов. Все идентификаторы можно разделить на стандартные и пользовательские.Стандартные идентификаторы определяются разработчиками языка и служат для обозначения типов данных, констант, процедур и функций (например, sin– имя функции для вычисления синуса заданного угла). Стандартные идентификаторы в отличие от зарезервированных слов можно переопределять в программе, но без особой необходимости это делать не следует. Пользовательские идентификаторы вводятся программистом по своему усмотрению. В пределах одного блока программы нельзя использовать один идентификатор для обозначения более чем одного объекта.
Решение задачи на компьютере – это процесс сбора, обработки и передачи информации. Поэтому любая программа имеет смысл, если она обрабатывает какие-либо данные. Как и в других языках программирования, в Паскале данные разделяются на константы и переменные.Константами называют элементы данных, значения которых не могут изменяться в процессе выполнения программы. Так в выражении 7*x+10*y, 7 и 10 это целые константы. Программист может присвоить некоторым константам символические имена в описательной части программы, а затем использовать эти имена в записи выражений. В программе, кроме констант, используются переменные. Переменными называют величины, которые могут менять свои значения в процессе выполнения программы. В программе переменные определяются именами (идентификаторами), по которым к ним можно обращаться для получения текущих значений. Имя переменной подобно ячейке, которую можно заполнить различными значениями (чего нельзя сделать с константой). Однако имя переменной используется только в тексте программы. Компьютер реально работает только с числами и вместо имени переменной использует ее адрес – номер первого байта участка памяти отведенного под переменную. Адрес переменной используется при каждом обращении к переменной. Когда значение переменной используется в выражениях, то происходит чтение по определенному адресу оперативной памяти. Когда значение переменной изменяется, то происходит запись по соответствующему адресу.
10-11вопрос.
Целое, целочисленный тип данных (англ. Integer), в информатике — один из простейших и самых распространённых типов данных в языках программирования. Служит для представления целых чисел. Множество чисел этого типа представляет собой подмножество бесконечного множества целых чисел, ограниченное максимальным и минимальным значениями. Если используется 32-разрядное машинное слово, то беззнаковое целое будет представлять значения 0..232−1 ≈ 4×109.
В Турбо Паскале имеется 5 вещественных типов:
- Real (занимает 6 байт, диапазон от 2.9E-39 до 1.7E+38 по модулю, точность 11-12 значащих цифр)
- Single (занимает 4 байта, диапазон от 1.5E-45 до 3.4E+38 по модулю, точность 7-8 значащих цифр)
- Double (занимает 8 байт, диапазон от 5.0Е-324 до 1.7Е+308 по модулю, точность 15-16 значащих цифр)
- Extended (занимает 10 байт, диапазон от 3.4E-4932 до 1.1E+4932 по модулю, точность19-20 значащих цифр).
- Comp (занимает 8 байт, диапазон от -9.2E-18 до 9.2E+18, хранятся точно, поскольку это целые числа)
Вещественные типы являются упорядоченными, но не порядковыми. Операции над вещественными числами: сложение ,вычитание, умножение, деление и операции отношения. Кроме того, имеется большое количество встроенных функций для работы с числами: abs, sqr, sqrt, sin, cos и т.п.
Вещественные числа хранятся неточно. Каждый из имеющихся вещественных типов гарантирует правильное хранение только определенного количества значащих цифр, их называют верными цифрами. С математической точки зрения, из за особенностей внутреннего представления речь идет об относительной погрешности.
Неточности в хранении вещественных чисел могут привести к тому, что при вычитании близких чисел может произойти потеря значимости. Это же объясняет, почему следует избегать сравнения вещественных величин на точное равенство.