Оператор выбора Case Of в Pascal.

Помимо условного оператора If в языке программирования Pascal существует оператор выбора Case of. Рассмотрим его применение на примере программы, которая выводит на экран то или иное сообщение, в зависимости от введенного числа.

Тип данных Char. Функции Ord, Chr.

Мы с Вами уже рассмотрели типы данных, которые позволяют хранить и обрабатывать целые числа (integer) и дробные числа (real). Теперь рассмотрим тип данных, позволяющий хранить и обрабатывать различные символы. Символы – это все буквы и значки, ...

Ветвления в Pascal.

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

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

Сортировка двумерного массива.

Пример 36. Задан двумерный массив X из 6 строк и 4 столбцов. Упорядочить массив X по возрастанию элементов дробной части столбца с номером N. Отсортированный массив X вывести на экран монитора.

Разветвляющийся вычислительный процесс.

Если вычислительный процесс зависит от определенных условий и реализуется по одному из нескольких заранее предусмотренных направлений, он называется разветвляющимся вычислительным процессом, а каждое ...

Функция 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.


Комментарии  

 
+10 # Saruman 02.01.2013 15:57
У меня вопрос. Как узнать, какой по счёту нужный тебе символ, если он встречается несколько раз?
 
 
+2 # 1640max 06.02.2013 12:27
Я не профи, но думаю, что надо заменять найденный символ на иной и продолжить поиск
 
 
+2 # Антон 25.02.2013 14:30
Вариант!
 
 
+9 # шваха 10.04.2014 16:05
Как и в массиве - просто в цикле перебираешь всю строку и сравниваешь с нужным тебе символом. Если хочешь все позиции данного символа "выявить", то в этом же цикле при равенстве символов в массив закидываешь номер этого символа.(если я правильно понял вопрос)
 
 
-3 # qwerty 13.09.2014 13:43
:oops:
 
 
-2 # qqqqqq 12.11.2014 10:27
Хорошо объяснили. Спасибо 8)
 
 
+2 # Сергей 06.01.2015 12:04
Спасибо
 
 
0 # Мари 13.12.2016 20:10
А в Vba какая есть функция ,которая такая же , как Copy в Паскале ?
 
 
0 # Павел Дмитриевич 17.12.2016 22:55
С функцией POS не получается...
Вылетает ошибка: "Ожидалась переменная"
 
 
0 # Dj 14.03.2017 16:58
Даны 2 строки вывести все символы которые есть в s1 и которых нет в s2
 
 
0 # aijamal 10.04.2017 12:28
Составить и записать программу используя "Insert"
 
 
-1 # 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.
 
   ГлавнаяПаскальСтроки в ПаскальПроцедуры STR и VAL.