Функции trunc, round в Pascal.

Для того чтобы в Паскаль можно было оперировать не только целыми числами, но и дробными существуют вещественные типы данных. Один из таких типов называется Real. В этом уроке мы рассмотрим 2 функции, которые производятся над дробными числами. Это ...

Использование Var, Integer, Readln.

Процедура Readln используется не только для задержки экрана. Ее основная задача - ввод данных с клавиатуры. В этой статье мы научимся вводить числа с клавиатуры, и потом выводить их на экран. Для этого нам будет необходимо познакомиться с разделом ...

Процедура Writeln в Pascal

Помимо зарезервированного слова Write, для вывода сообщения на экран в Pascal используется процедура Writeln. Отличие процедуры Writeln от оператора Write заключается в том, что Writeln после вывода сообщения на экран переводит курсор на другую ...

Циклы и массивы

Массив строк типа STRING.

Одномерный массив строк используется для хранения в оперативной памяти компьютера промежуточного фрагмента текста с целью его обработки.

Вложенный арифметический цикл. Часть 2.

Примеры использования различных операторов цикла. Вложенный цикл.

Функция Copy позволяет копировать из строки часть символов. Функция имеет 3 параметра. Copy (st, index, count). St-строка из которой копируют, Index-номер символа, с которого начинается копирование, Count-количество символов, которое будет скопировано.
Процедура Delete удаляет часть символов из строки. Процедура имеет 3 параметра. Delete (st, index, count). St-строка, из которой будут удалены символы, Index-номер символа, с которого начинается удаление, Count-количество символов, подлежащих удалению.
Процедура Insert позволяет вставлять символы в строку. Процедура имеет 3 параметра. Insert (subst, st, index). Subst-подстрока, которую необходимо вставить, St-строка, в которую вставляется подстрока, Index-номер элемента, с которого начинается вставка.
Функция Pos отыскивает в строке первое вхождение подстроки и возвращает в качестве значения номер элемента, с которого начинается вхождение. Функция имеет 2 параметра. Pos (subst, st). Subst-подстрока, St-строка.

Использование функции COPY, процедуры DELETE.


program string5;
uses crt;
var stroka1,stroka2:string;
begin
clrscr;
stroka1:='Programmirovanie ';
stroka2:=copy(stroka1,3,10);
writeln(stroka2);
delete(stroka1,3,10);
writeln(stroka1);
readln
end.

Строка №6. Записываем в переменную «stroka1» слово «Programmirovanie».

Строка №7. В переменную «stroka2» записываем значение функции Copy. В результате работы этой функции из переменной «stroka1» (слова «Programmirovanie») будет скопировано 10 символов, начиная с 3-го символа.

Строка №9. Процедура Delete удалит из слова «Programmirovanie» 10 символов, начиная с 3-го.

funkciya COPY, procedura DELETE

funkciya COPY, procedura DELETE.


Использование функции POS, процедуры INSERT.



program string6;
uses crt;
var stroka1,stroka2:string;
nomer:integer;
begin
clrscr;
stroka1:='Programmirovanie ';
stroka2:='PASCAL';
insert(stroka2,stroka1,8);
writeln(stroka1);
nomer:=pos('S',stroka1);
writeln(nomer);
readln
end.


Строка №9. Процедура Insert позволяет вставить в строку другую строку. В нашем случае в слово «Programmirovanie» вставляется слово «PASCAL», начиная с 8-го символа.
Строка №11. В переменную «nomer» записывается значение функции Pos. Переменная «stroka1» содержит слово «ProgramPASCALmirovanie». Буква «S» является 10-й по счету. Соответственно в переменную «nomer» будет записано число 10.

funkciya POS, procedura INSERT

funkciya POS, procedura INSERT.


Предыдущая статья : Функции LENGTH и CONCAT.

Оглавление : Уроки Паскаль. Строки.

Следующая статья : Процедуры STR и VAL.


Комментарии  

 
+12 # Saruman 02.01.2013 15:57
У меня вопрос. Как узнать, какой по счёту нужный тебе символ, если он встречается несколько раз?
 
 
+3 # 1640max 06.02.2013 12:27
Я не профи, но думаю, что надо заменять найденный символ на иной и продолжить поиск
 
 
+2 # Антон 25.02.2013 14:30
Вариант!
 
 
+12 # шваха 10.04.2014 16:05
Как и в массиве - просто в цикле перебираешь всю строку и сравниваешь с нужным тебе символом. Если хочешь все позиции данного символа "выявить", то в этом же цикле при равенстве символов в массив закидываешь номер этого символа.(если я правильно понял вопрос)
 
 
-5 # qwerty 13.09.2014 13:43
:oops:
 
 
0 # qqqqqq 12.11.2014 10:27
Хорошо объяснили. Спасибо 8)
 
 
+3 # Сергей 06.01.2015 12:04
Спасибо
 
 
-1 # Мари 13.12.2016 20:10
А в Vba какая есть функция ,которая такая же , как Copy в Паскале ?
 
 
0 # Павел Дмитриевич 17.12.2016 22:55
С функцией POS не получается...
Вылетает ошибка: "Ожидалась переменная"
 
 
-3 # Dj 14.03.2017 16:58
Даны 2 строки вывести все символы которые есть в s1 и которых нет в s2
 
 
-1 # aijamal 10.04.2017 12:28
Составить и записать программу используя "Insert"
 
 
+2 # Casil 16.03.2018 13:21
var
s,s_old,s_new: string;
i,l_old: byte;
begin
write('Insert string: ');
readln(s);
write('What change? ');
readln(s_old);
l_old := length(s_old);
write('What to replace? ');
readln(s_new);
i := pos(s_old,s);
delete(s,i,l_ol d);
insert(s_new,s, i);
writeln(s);
readln
end.
 
 
-1 # Vasil 29.09.2021 18:40
Неплохо
 
   ГлавнаяПаскальСтроки в ПаскальФункции Copy, Pos, процедуры Delete, Insert.