Пример №41. Демонстрация процедур.
1. Program number41;
2. uses crt;
3. var a, b: integer;
4. procedure poisk;
5. begin
6. if a>b then
7. writeln ('Первое число больше второго')
8. else
9. if a<b then
10. writeln ('Первое число меньше второго')
11. else
12. writeln ('Оба числа равны');
13. end;
14. begin
15. clrscr;
16. write(' Введите a, b ');
17. readln(a, b);
18. poisk;
19. readln
20. end.
В строке №4 записываем зарезервированное слово Procedure. После этого слова через пробел пишем заголовок. Заголовок придумывает сам программист. Я назвал процедуру «poisk».
В строке №5-№13 находится тело процедуры.
Строка №6. Если «a» больше «b», то на экран выводится сообщение в строке №7.
Строка №8. В противном случае (т.е. если «a» меньше либо равно «b»), то проверяется условие в строке №9. И если «a» меньше «b», то на экран выводится сообщение в строке №10.
Строка №11. В противном случае (т.е. если «a» равно «b»), то на экран выводится сообщение в строке №12.
В строке №14 начинается сама программа.
В строке №16 выводится сообщение.
В строке №17 вводим числа с клавиатуры.
В строке №18 записываем название нашей процедуры «poisk». Т.е. с этого момента основная программа перестает работать и начинает работать процедура, которую мы записали в строках №4-№13. После того как процедура будет выполнена продолжится выполнение основной программы.
Теперь запустим программу в Паскале.
2. Работа с элементами массива.
Билет №13
1. Механизм реализации подпрограмм с помощью функций.
|
|
При решении новых задач можно попытаться воспользоваться ранее написанными программами. Алгоритм, ранее разработанной и целиком используемой в составе других алгоритмов, называется вспомогательным. Применение вспомогательных алгоритмов позволяет разбить задачу на части, структурировать ее.
Вся программа условно может быть разделена на две части: основную и вспомогательную. В основной части производится простейшая обработка информации, организуется обращение к разным вспомогательным модулям (подпрограммам).
Подпрограммы могут быть двух видов: подпрограмма без параметров и подпрограмма с параметрами. Обращение к подпрограмме может быть организовано из любого места основной программы или другой подпрограммы сколько угодно раз.
При работе с подпрограммами важными являются понятия формальных и фактических параметров.
Формальные параметры – это идентификаторы входных данных для подпрограммы. Если формальные параметры получают конкретные значения, то они называются фактическими. Формальные параметры могут получить конкретные значения только в той программе, где производится обращение к данному модулю – подпрограмме.
Тип и порядок записи фактических параметров должны быть такими же, как и формальных параметров. В противном случае, результат работы программы будет непредсказуемым. Из этого следует, что фактически параметры используются при обращении к подпрограмме из основной, а формальные параметры – только в самом модуле.
|
|
Подпрограмма с параметрами используется для записи многократно повторяющихся действий при разных исходных данных. Подпрограммы с параметрами можно разделить на два типа: подпрограммы-функции и просто подпрограммы с параметрами (их называют процедурами).
При составлении подпрограмм с параметрами надо соблюдать следующие правила:
1) Каждая подпрограмма имеет свое имя и список формальных параметров;
2) Процедура из основной программы вызывается командой вызова, которая по форме ничем не отличается от вызова команды исполнителя. Результат присваивается одной или нескольким переменным, которые находятся в списке формальных параметров. Но, результатом могут быть, конечно не только значения переменных, но какое-либо действие, выполненное на ЭВМ.
2. Понятие алгоритма.
Алгоритм – это метод или способ решения задач, записанных по определенным правилам, обеспечивающий однозначность и его понимание, и механическое исполнение при все значениях исходных данных.
|
|
Историческая справка: Слово алгоритм - это латинская транслитерация (Algorithmi) имени знаменитого среднеазиатского ученого Мухамеда бен Мусы аль - Хорезми (787 - 850). Его основополагающие трактаты по арифметике и алгебре, переведены в XII веке на латинский язык, оказали существенное влияние на развитие математики в Западной Европе.
В информатике используют следующие определения:
Алгоритм - это совокупность формальных правил для решения некоторой задачи.
Алгоритмизация - это процесс составления алгоритма.
Алгоритм, как набор правил, должны удовлетворять следующим требованиям:
Определенность (детерминированность) - означает, что предписанные алгоритмом действия должны быть определены точно и однозначно, исключая какие - либо произвольные (случайные) толкования. Детерминированность обеспечивает одинаковость результата, полученного при выполнении алгоритма несколько раз, если исходные данные сохраняют свое значение.
Массовость - алгоритм должен обеспечивать выполнение не одной конкретной задачи, а быть пригодным для реализации класса задач, то есть алгоритм можно применить к любому ряду исходных данных.
|
|
Результативность - это требование обеспечивает конечность применения указаний, то есть результат должен быть получен за конечное число шагов, либо за конечное число шагов должно быть получено указание на неприменимость данного алгоритма к решаемой задачи.
Алгоритм задается в той форме, которая наиболее понятна человеку. К самым распространенным способам задания можно отнести:
1. словесный (описательный);
2. табличный;
3. графический (в виде блок - схем).
Билет №14
1. Функции в Паскале.
2. Основные правила записи блок – схем.
Каждый блок может иметь метку, нумерация идет сверху - вниз и слева - направо.
Линиями соединения отдельных блоков показывают направление процесса обработки в схеме. Каждое такое направление вычислений называется ветвью (линия потока). Направление линий сверху вниз и слева направо принимаются за основные и стрелками не обозначаются. В остальных случаях направление линий потока указываются стрелками.
Записи внутри блоков (символов) должны быть краткими, а выполнение записанных в блоке действий всегда предполагается в последовательности слева на право и сверху вниз.
Билет №15
1. Элементы языка Паскаль.
Алфавит языка ТР включает буквы, цифры, шестнадцатеричные цифры, специальные символы и зарезервированные слова
2.
Буквы - буквы латинского алфавита от a до z и от A до Z. В ТР нет различий между прописными и строчными буквами, если только они не входят в символьные и строковые выражения и символ подчеркивания "_" - буква.
Цифры - арабские цифры от 0 до 9.
Шестнадцатеричные - 0…9; + 6 букв латинского алфавита А…F / а…f.
Специальные знаки - символы: +, -, *, /, =, ,, ., :, ;, <, >, [ ], ( ), { }, ^, @, $, #
К специальным знакам относятся пары символов: <>, <=, >=, :=, (* *), (. .)
В программе эти пары символов нельзя разделять пробелами, если они используются как знаки операций сравнения или ограничители комментария.
Особое место занимают пробелы, к которым относятся любые символы ASCII в диапазоне кодов от 0 до 32. Эти символы рассматриваются как ограничители идентификаторов, констант, чисел, зарезервированных слов. Несколько следующих друг за другом пробелов считаются одним пробелом (исключение: строковые константы).
В Турбо Паскале имеются следующие зарезервированные слова:
and | do | goto | mod | procedure | to |
asm | type | if | nil | program | xor |
array | until | implementation | not | record | |
begin | downto | in | object | repeat | |
case | else | uses | of | set | |
const | end | var | or | shl | |
constructor | file | inline | packed | shr | |
destructor | for | interface | while | string | |
div | function | label | with | then |
Зарезервированные слова не могут использоваться в качестве идентификаторов.
Стандартные директивы первоначально связаны с некоторыми стандартными объявлениями в программе. К ним относятся:
absolute | external | forward | near | virtual |
assembler | far | interrupt | private |
Если идентификатор будет иметь такой вид, то это не будет считаться ошибкой, однако, этого надо избегать.
2.Организация ввода – вывода в Паскале.
Операторы в языке ТР - это синтаксические конструкции, предназначенные для записи алгоритмических действий над данными.
Язык содержит следующие операторы:
Ø оператор присваивания
Данный оператор является простейшим и наиболее часто употребляемым оператором языка. Оператор выполняется следующим образом. Вычисляется выражение в правой части оператора присваивания. После этого переменная, указанная в левой части, получает вычисленное значение. При этом тип выражения д.б. совместимым по присваиванию с типом переменной.
Присваивания допускаются для всех типов кроме файловых типов.
Ø оператор перехода
Оператор (безусловного) перехода вызывает передачу управления оператору, которому предшествует метка. При использовании оператора GOTO необходимо соблюдать следующие правила:
1. Все метки, используемые в блоке, должны быть описаны.
2. Метка, указанная в операторе GOTO, должна помечать оператор, находящийся в том же блоке, что и сам оператор GOTO. Не допускаются переходы из вне процедур (функции) или внутрь их.
Ø условный оператор
Условный оператор позволяет проверить некоторое условие и в зависимости от результатов проверки выполнить то или иное действие. Условный оператор позволяет организовать разветвляющийся вычислительный процесс.
Ø оператор варианта
Данный оператор является обобщением условного оператора для произвольного числа альтернатив (ветвей).
Оператор работает следующим образом:
1. вычисляется значение выражения;
2. затем значения сравниваются с константами, записанными перед операторами;
3. при совпадении значения с одной константой будет выполнен оператор ею помеченный. Затем управление передается следующему за оператором case оператору.
4. если значение выражения не совпадет ни с одной константой, то будет выполнена ветвь else; если отсутствует эта ветвь, то управление передается следующему за case оператору.
Ø оператор цикла с предусловием
Ø оператор цикла с постусловием
Ø оператор цикла с параметром
Ø оператор процедуры
Ø пустой оператор
Ø составной оператор
Составной оператор - это последовательность производимых операторов, заключенная в операторные скобки - зарезервированные слова BEGIN ..END. Язык ТР не ограничивает характер операторов, входящих в составной оператор. ТР допускает вложенность составного оператора.
Билет №16
1. Описание меток в Паскале.
Описание в ТР - это произвольный идентификатор, позволяющий именовать некоторый оператор программы и таким образом ссылаться на него. В ТР допускается использование в качестве меток целых чисел без знака.
Метка располагается непосредственно перед помечаемым оператором и отделяется от него двоеточием.
Перед тем как появиться в программе метка должны быть описана. Описание меток состоит из зарезервированного слова Label, за которым следует список меток:
Label
lb1, lb2, lb3;
....
2. Преобразование типов данных в Паскале.
Язык ТР - это типизированный язык, построенный на принципе, в соответствии с которым все операции определены только над операндами совместимых типов. Однако при решении некоторых задач возникает необходимость преобразовывать значение переменной одного типа в некоторое "соответствующее" значение другого типа.
ТР допускает в известных пределах производить такие преобразования.
В ТР допускается явное и неявное преобразование типов.
При явном преобразовании типов используют специальные стандартные функции, аргументы которых принадлежат одному типу, а значения другому.
В ТР может использоваться и более общий механизм преобразования типов. Этот механизм называется «приведением типа», или автоопреленное преобразование типов.
В этом случае имя (идентификатор) стандартного типа или типа, определенного пользователем, используется как имя функции, которая преобразует переменную или выражение к обозначенному типу.
Суть этих действий следующая: определяя тип, мы определяем форму хранения информации в ОЗУ, то есть переменная данного типа будет представлена в памяти заранее известной структурой. Но если "взглянуть" на ее образ в памяти с точки зрения машинного представления другого типа, то можно будет трактовать, то же самое значение как принадлежащее другому типу.
Операция преобразования задается следующим образом:
1. Имя типа (Переменная)
2. Имя типа (Значение)
Приведение типов не определяет тип переменных оно лишь дает возможность нарушить правила совмещения типов при условии, что соответствующие значения совместимы в машинном представлении.
При преобразовании типа переменной ее размер всегда должен быть равен размеру типа, к которому приводится значение.
Приведение типа переменной может находиться во всех позициях, в которых допускается вхождение переменной), есть и слева, и справа.)
Допускается вложенность преобразований при условии сохранения размера.
Аналогично изменению типа переменных можно изменять тип значений как таковых, а также результирующий тип выражений.
В этом случае происходит трактование значения в скобках как значения другого типа. Преобразование типа значения внешне похоже на преобразование типа переменной, но эффект от применения иной и ограничения на применение другие.
а) Как задаваемый тип, так и тип значения должны быть порядковыми или адресными.
б) Преобразование значения не может использоваться в левой части присваивания.
Билет №17
1. Способы представления алгоритмов.
Существуют много способов описания, представления алгоритмов, однако остановимся на следующих четырех – на естественном языке, на графическом языке, на алгоритмическом языке, на языке программирования.
Каждый вид представления имеет свои средства описания алгоритмов, ориентированные на своего исполнителя:
− Естественный язык (исполнитель - человек) – лексика русского, казахского, английского и других языков. Данный способ получил значительно меньшее распространение из-за его многословности и отсутствия наглядности;
− Графический язык (исполнитель - человек) – графические схемы (блок-схемы) с описанием действий;
− Алгоритмический язык (исполнитель - человек) – определенные слова естественного языка, или команды для исполнителя;
− ЯП (исполнитель - компьютер) – команды ЯП. Представление алгоритмов на ЯП называется программой.
2. Выражения в Паскале.
Основными элементами, из которых конструируется исполняемая часть программы, являются константы, переменные и обращения к функциям.
С помощью знаков операций и скобок из них можно составлять выражения, которые представляют собой "правила" получения новых значений.
В общем случае выражение состоит из нескольких элементов (операндов) и знаков операций, а тип его значения определяется типом операндов и видом примененных к ним операций.
При вычислении выражений любого типа приоритет вычислений (порядок) определяется расставленными скобками, а при их отсутствии в порядке убывания приоритета.
@ - получение адреса объекта.
in - принадлежность к множеству.
В отличие от многих других языков программирования в ТР логические операции имеют более высокий приоритет, чем операции сравнения, поэтому для правильности их выполнения в сложных логических выражениях необходимо расставлять скобки:
а = b аnd c< - с и (b>
синтаксическая ошибка, т.к. будет выполнено в аnd с (а = b) аnd (c < d)
Для точного определения порядка вычислений выражения необходимо учитывать следующие правила:
1. Операнд, находящийся между двумя операциями с различными приоритетами, связывается с операцией, имеющий более высокий приоритет.
2. Операции с равными приоритетами выполняются слева направо.
3. Часть выражения, заключенная в круглые скобки, при вычислении рассматривается как отдельный операнд, т.е. все операции внутри скобок будут выполнены раньше, чем операции справа или слева от скобок.
Билет №18
1. Массивы в Паскале.
Нередко приходится иметь дело с различными данными, которые должны обрабатываться одинаковым образом. Если для каждого значения отвести свою переменную, то и обрабатывать их придется индивидуально.
Решить эту проблему позволяют массивы. Массив представляет собой как бы набор однотипных переменных, имеющих одно и то же имя и различающихся только по числовому индексу. Этот индекс записывается после идентификатора переменной в скобках.
1) Прежде чем массив можно будет использовать, его необходимо объявить. Объявление массива производится при помощи оператора DIM (размер).
2) После ключевого слова DIM указывается идентификатор массива, за которым в скобках идут максимально допустимые значения индексов. Минимальное допустимое значение индекса считается равным нулю. Число индексов определяет размерность массива. Наиболее распространены одномерные, хотя можно использовать также двухмерные, трехмерные и т.д.
3) Для того чтобы обратиться к элементу массива, после идентификатора надо указать в скобках индекс необходимого элемента.
2. Типы вычислительных процессов.
Все разрабатываемые алгоритмы по структуре связей между действиями в процессе решения задачи разделяются на линейные, разветвляющиеся и циклические.
1) Наиболее простой организацией обладает алгоритм линейной структуры, который обеспечивает получение результата путем однократного выполнения последовательности действий независимо от значений исходных данных или промежуточных результатов. Линейный алгоритм не содержит логических условий и имеет одну ветвь вычислений.
2) Разветвляющийся алгоритм содержит одно или несколько логических условий и имеет несколько ветвей вычислений. При графическом изображении логические условия записываются внутри блока "решение" и в зависимости от ответа «да» или «нет», образуются две ветви вычисления. При движении по каждой ветви может встретится следующий логический блок, который образует еще две ветви и так далее. Все ветви, в конце концов, сходятся.
3) В большинстве процедур решения задач предусматривается многократное выполнение определенных последовательностей действий. Эти последовательности называются циклами - многократно повторяемая часть алгоритма.
Циклический алгоритм - это алгоритм, содержащий один или несколько циклов.
По способу организации выхода циклические алгоритмы подразделяются на следующие типы:
Ø итерационные с заданным логическим условием выхода;
Ø со счетным заранее определенным числом повторений;
Ø вложенные с известным или вычисляемым для каждого из них числом повторений;
Ø комбинированные сложной структуры.
Билет №19
1. Логический тип данных.
2. Оператор варианта в Паскале.
Билет №20
1. Оператор CASE.
Данный оператор является обобщением условного оператора для произвольного числа альтернатив (ветвей).
CASE <выражение> of <список альтернатив>
Else операторы end;
Список альтернатив имеет вид:
константа: оператор;
Оператор работает следующим образом:
1. вычисляется значение выражения;
2. затем значения сравниваются с константами, записанными перед операторами;
3. при совпадении значения с одной константой будет выполнен оператор ею помеченный. Затем управление передается следующему за оператором case оператору.
4. если значение выражения не совпадет ни с одной константой, то будет выполнена ветвь else; если отсутствует эта ветвь, то управление передается следующему за case оператору.
Кроме одиночных констант в альтернативах могут быть заданы списки и/или диапазоны значений, которые разделяются запятыми.
При использовании оператора CASE надо выполнять следующие правила:
1. Значение <выражения> должно быть дискретного типа (для целого типа - 32768..32767) (т.е. не могут быть real, word (свыше 32767), longin и сложные типы).
2. все константы в альтернативах должны иметь тип, совместимый с типом выражения.
3. все константы в альтернативах должны быть уникальны в пределах оператора CASE; диапазоны не должны пересекаться и содержать констант, указанных в данной или другой альтернативе.
4. в каждой альтернативе возможен только один оператор (простой или составной); а ветвь else допускает последовательность операторов, разделенных символом «;».
2. Оператор присваивания.
Данный оператор является простейшим и наиболее часто употребляемым оператором языка. Оператор выполняется следующим образом. Вычисляется выражение в правой части оператора присваивания. После этого переменная, указанная в левой части, получает вычисленное значение. При этом тип выражения д.б. совместимым по присваиванию с типом переменной.
Присваивания допускаются для всех типов кроме файловых типов.
X: = (Y+Z)/(2+Z*10)-0.5;
Done: = (i>100) or (A=0);
Color: = red;
Два типа являются совместимыми по присваиванию, если:
1) оба типа эквивалентны;
2) оба типа являются дискретными, и значения правой части попадают в диапазон значений типа левой части;
3) оба типа вещественного значения правой части попадают в диапазон значений типа левой части;
4) Тип левой части является вещественным, а тип правой части - целым.
Билет №21
1. Структура программы в Паскале.
Программа на языке ТР всегда состоит из двух основных частей:
Ø описания последовательности действий, которые необходимо выполнить,
Ø и описания данных, с которыми оперируют действия.
Действия представляются операторами языка, данные вводятся посредством описаний и определений.
Кроме того, программа снабжена заголовком, который задает имя программы и её параметры (для процедур и функций наличие заголовка обязательно).
Описания данных текстуально предшествуют описанию действий и должны содержать упоминание всех объектов, используемых в операторах.
Символом «конца» для программы служит « . », для процедуры или функции - символ « ; ».
В разделе описаний объявляются идентификаторы типов, объектов, констант, переменных, а также метки, процедуры и функции.
В стандартной версии программы соответствующие разделы следуют друг за другом в фиксированном порядке, ТР не содержит такого ограничения, т.е. разделы могут следовать друг за другом в любом порядке и встречаться в разделе описаний несколько раз.
Описание процедуры или функции заключается в указании её заголовка и её тела.
Раздел исполняемых операторов начинается с зарезервированного слова BEGIN и заканчивается словом END; друг от друга операторы отделяются символом « ; ».
В текстах программ допускаются фрагменты пояснительного характера - комментарии. Наличие комментария не изменяет смысл программы и не влияет на её выполнение. Комментарий - произвольная последовательность символов, заключенная в фигурные скобки { } или в разделители вида (* *):
2. Вызов процедуры.
Билет №22
1. Основные операции с числовыми данными.
2. Вызов функции.
Билет №23
1. Реализация управляющей конструкции «Повторение».
2. Целые типы данных.
Эта группа типов обозначает множества целых чисел в различных диапазонах. Имеется пять целых типов, различающихся допустимым диапазоном значений и размером занимаемой оперативной памяти:
При использовании процедур и функций, с целочисленными параметрами нужно помнить о «вложенности» типов, т.е. тип Word допускает использование BYTE (но не наоборот), LONGINT включает INTEGER, который включает Shortint.
Над целыми числами допустимы операции: +, -, *, /, div, mod.
Все операции дают целый результат, кроме операции деления, результат которой всегда вещественный.
К целым числам возможно применение логических операций и операций сдвига.
Результат логической операции тоже целое число, биты которого формируются из битов операндов по установленным правилам.
Билет №24
1. Реализация управляющей конструкции «Следование».
2. Вещественные типы данных.
Эта группа типов обозначает множества вещественных значений в различных диапазонах.
Доступ к вещественным типам Single, double, extended возможен только при особых режимах компиляции и/или при наличии арифметического сопроцессора Intel 8087/80287{$N+,E+}, тип REAL оптимизирован для работы без сопроцессора.
Хотя тип Comp считается вещественным, он содержит только целые числа из весьма значительного диапазона, которые представляются в вычислениях как вещественные (с нулевой мантиссой).
Для работы с вещественными данными могут использоваться операции: *,-,+,/, встроенные математические функции:
ROUND (X) | Округляет до ближайшего целого числа |
TRUNC (X) | Усекает х, путем отбрасывания дробной части числа |
Билет №25
1. Реализация управляющей конструкции «Развилка».
2. Строковый и символьный типы данных.
Строковый тип данных определяет множество символьных цепочек произвольной длины (от нуля символов до заданного их числа). Для определения строкового типа используется служебное слово string, вслед за которым в квадратных скобках указывается максимальная длина строки.
Type
Line: string [120]
Var
ML: Line;
В приведенном примере переменная ML в качестве своего значения может иметь любую последовательность символов произвольной длины в пределах от 0 до 120.
Значение строковой переменной может быть присвоено оператором присваивания либо прочитано из файла. Например:
ML := 'Строка символов';
ML :=AnL;
В определении строкового типа максимальная длина строки может быть задана целым числом или константой целого типа. Указание максимальной длины может быть опущено, в этом случае считается, что максимальная длина равна 255, - эта длина является максимально возможной для строкового типа. Таким образом, важнейшие отличие строк от символьных массивов в том, что строки могут изменять свою длину.
Для строк определена операция конкатенации "+":
ML := 'Строка';
ML := ML + 'символов';
В случае присваивания строковой переменной строкового выражения с длиной большей, чем максимально допустимая для данной переменной, происходит обрубание строки до максимальной длины.
В памяти под переменные строкового типа отводится (N + 1) байт, где N - максимальное число символов, которое было задано в описании. Из них N байтов предназначены для хранения символов строки, а один байт - для хранения текущей длины строки. Так как строка имеет произвольную длину, то лишь часть памяти реально занимается символами:
Элементы строки нумеруются целыми числами, начиная с единицы. Из рисунка видно, что байт с текущей длиной, считается как бы нулевым ее элементом.
Доступ к отдельным элементам строк производится аналогично доступу к элементам одномерного символьного массива: после имени переменной в квадратных скобках указывается выражение целого типа, обозначающий номер элемента строки:
ML[i] ML[i+1]
Данная конструкция имеет тип Char и является переменной, то есть может находится в левой части оператора присваивания.
Однако определенную аналогию строковых типов с символьными массивами нельзя понимать как полную их идентичность. Распространенной ошибкой является работа с элементами строки без учета ее текущей длины.
Предполагается, что данная программа должна сформировать строку из 26 символов и содержать последовательность заглавных букв латинского алфавита. Однако этого не произойдет, так как при первоначальном присваивании длина строки была установлена как 1, и дальнейшие присваивания элементам строки некоторых значений на длину строки не влияют, и поэтому процедура writeln выведет только символ 'A'. Чтобы исправить эту ошибку , будем использовать «+»:
Кроме операции конкатенации, над значениями строковых типов определены операции сравнения:
<, <=, >, >=, = , <>
При их выполнении действуют следующие правила:
1. операция выполняется над строками посимвольно, слева направо с учетом внутренней кодировки символов
2. Если одна строка меньше другой по длине, недостающие символы короткой строки заменяются значениями CHR(0).
Следующие операции отношения имеют значения TRUE:
'A'>1
'Turbo'<'Turbo Pascal'
'Паскаль'>'Turbo Pascal'
Все остальные действия над строками реализуются с помощью встроенных процедур и функций.
1. СONCAT (S1[,S2,…,SN]) - результат функции имеет тип string. Функция выполняет слияние строк - параметров S1, S2,…SN. Каждый параметр является выражением строкового типа. Если длина результирующей строки больше 255 символов, то она усекается до 255.
2. COPY (ST, INDEX, COUNT) - функции типа string. ST - тип string. INDEX, COUNT : integer. Функция возвращает подстроку, выделенную из исходной строки ST, длиной COUNT cимволов, начиная с символа с номером INDEX.
3. DELETE (ST, INDEX, COUNT) - процедура. Удаляет COUNT символов из строки ST, начиная с символа с номером INDEX.
4. INSERT (SUBST, ST, INDEX) - процедура. Вставляет строку SUBST в строку ST, начиная с символа с номером INDEX.
5. LENGTH(ST) - функция типа INTEGER. Возвращает текущую длину строки - параметра.
6. POS (SUBST, ST) - функция типа INTEGER. Отыскивает в строке ST первое вхождение подстроки SUBST и возвращает номер позиции, с которой она начинается, если подстрока не найдена, возвращается ноль.
7. STR(X[:WIDTH[:DECIMALS]],ST) -процедура. Преобразует число X любого вещественного или целого типов в строку символов ST. Параметры WIDTH и DECIMALS, если они присутствуют, задают формат преобразования. WIDTH - определяет общую ширину поля. DECIMALS - количество символов в дробной части (имеет смысл, когда Х вещественного типа).
8. VAL (ST, X, CODE) - процедура. Преобразует строку символов ST во внутреннем представлении целой или вещественной переменной Х, которое определяется типом этой переменной. Параметр CODE содержит 0, если преобразование произошло успешно, и тогда в Х помещается результат преобразования. В противном случае он содержит номер позиции в строке ST, где обнаружен ошибочный символ, и в этом случае содержимое Х не меняется, ведущие пробелы в строке ST должны отсутствовать.
Дата добавления: 2020-12-12; просмотров: 99; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!