Раздел: Стандартные функции Паскаля
Процедура Insert в Паскале
Основы программирования Каждый профессионал когда-то был чайником. Наверняка вам знакомо состояние, когда “не знаешь как начать думать, чтобы до такого додуматься”. Наверняка вы сталкивались с ситуацией, когда вы просто не знаете, с чего начать. Эта книга ориентирована как раз на таких людей, кто хотел бы стать программистом, но совершенно не знает, как начать этот путь. Подробнее... |
Процедура Insert
в Паскале вставляет данные в строку или динамический массив. Синтаксис:
procedure Insert(const Source : string; var S : string; const Index : Integer); procedure Insert(const Source : DynaArrayType; var S : DynArrayType; const Index : Integer);
В конце статьи есть видео - можете перейти сразу туда.
Процедура Insert
вставляет строку Source в строку S
, начиная с позиции
Index
, сдвигая все символы после Index
вправо. Результирующая строка при необходимости усекается до 255 символов (для коротких строк).
Index
- это номер символа в строке. Нумерация начинается с 1. Если Index
меньше 1,
вставка происходит в начале строки, как если бы было указано значение 1.
Если значение Index
больше длины строки, то к строке S
добавляется строка Source
.
Для динамических массивов Insert
вставляет элементы массива Source
в массив S
,
начиная с позиции Index
, сдвигая все элементы после Index
вправо.
Index
- это номер элемента в массиве. Нумерация начинается с 0. Если Index
меньше 0,
вставка происходит в начало массива, как если бы было указано значение 0.
Если значение Index
больше длины массива, то к массиву S
добавляется
элемент (или массив) Source
.
Пример использования:
program proginsert; var Hello : string; Mas : array of WORD; Arr : array of WORD; i : WORD; begin //Вставка в строку Hello := 'Hello, World !'; WriteLn(Hello); //Вставляем "brave new" перед "World" Insert('brave new ', Hello, 8); WriteLn(Hello); //Вставка в динамический массив //Создаём массив из 5 элементов SetLength(Mas, 5); WriteLn(#10#13'Length(Mas) = ', Length(Mas)); for i := 0 to 4 do begin Mas[i] := i; Write(Mas[i], ' '); end; //Вставляем элемент в массив на 3-ю позицию Insert(100, Mas, 2); WriteLn(#10#13'Length(Mas) = ', Length(Mas)); for i := 0 to Length(Mas)-1 do Write(Mas[i], ' '); //Вставка массива в динамический массив //Создаём массив из 3 элементов SetLength(Arr, 3); WriteLn(#10#13'Length(Arr) = ', Length(Arr)); for i := 0 to 2 do begin Arr[i] := i * 10; Write(Arr[i], ' '); end; //Вставляем массив Arr в конец массива Mas Insert(Arr, Mas, 10); WriteLn(#10#13'Length(Mas) = ', Length(Mas)); for i := 0 to Length(Mas)-1 do Write(Mas[i], ' '); ReadLn; end.
Эта программа на экран выведет следующее:
На этом всё. Для лучшего понимания посмотрите видео:
Вступить в группу "Основы программирования"
Подписаться на канал в РУТУБ Подписаться на Дзен-канал Подписаться на рассылки по программированию |
Как стать программистом 2.0
Эта книга для тех, кто хочет стать программистом. На самом деле хочет, а не просто мечтает. И хочет именно стать программистом с большой буквы, а не просто научиться кулебякать какие-то примитивные программки… Подробнее... |
Помощь в технических вопросах
Помощь студентам. Курсовые, дипломы, чертежи (КОМПАС), задачи по программированию: Pascal/Delphi/Lazarus; С/С++; Ассемблер; языки программирования ПЛК; JavaScript; VBScript; Fortran; Python и др. Разработка (доработка) ПО ПЛК (предпочтение - ОВЕН, CoDeSys 2 и 3), а также программирование панелей оператора, программируемых реле и других приборов систем автоматизации. Подробнее... |