КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Примеры обработки строковых переменных
Процедуры обработки строковых переменных Функции обработки строковых переменных length(s:string):byte - подсчитывается фактическая длина строки, включая пробелы и знаки препинания. Например: … s:=’Москва’; wrtiteln(length(s)); Результат на экране: Число 6, количество символов в сломе Москва. copy(s:string,i,n):string – копируется фрагмент строки s. Где s – переменная, из которой копируется фрагмент; i – позиция, с которой копируется; n – количество копируемых символов.
Если i и n – вне пределов строки, сообщения об ошибке не будет. Если i>length(s) результат – строка нулевой длины. Если n >length(s) результат – фрагмент от i до конца строки. Например: … s:='электрификация'; b:=copy(s,8,3)+copy(s,12,3); writeln(s); … Результат на экране: фикция pos(t:string,s:string):byte – осуществляет поиск подстроки t в строке s. Результатом этой функции является позиция вхождения t в s. Если подстрока не найден - результат 0. Например: … t:='ритм'; s:='алгоритм'; k:=pos(t,s); wrieln(‘k=’,k); Результат на экране: k=5 insert(t,s,i); – вставить подстроку t в строку s начиная, начиная с позиции i. Например: … s:='ритм'; insert(‘алго’,s,1); wrieln(s); … Результат на экране: алгоритм delete(s,i,n); – удалить из строки s с позиции i n символов. Например: … s:='алгоритм'; delete(s,1,4); writeln(s); … Результат на экране: ритм i,n – в процедурах insert и delete обязательно должны присутствовать в строке s. Иначе – сообщениие об ошибке. Задача. В произвольном тексте заменить все сочетания «чя» на «ча». Таблица идентификаторов
Program word_text; Uses crt; var text:string; i:integer; begin clrscr; writeln(‘Введите текст’); readln(text); for i:=1 to length(text)-1 do if copy(text,i,2)=‘чя’ then begin delete (text,i+1,1); insert (‘a’,text,i+1); end; writeln(‘Преобразованный текст’); writeln(text); readln; end. Задача. В произвольном тексте (text) в слове word заменить первую букву на заглавную и подсчитать количество замен (текст латинский). Таблица идентификаторов
Program word_text1; Uses crt; var text,word:string; s,i:integer; begin writeln(‘Введите текст’); readln(text); s:=0; writeln(‘Введите слово’); readln(word); for i:=1 to length(text)-lenght(word)+1 do if copy(text,i,length(word))=word then begin s:=s+1; text[i]:=upcase(text[i]); end; writeln (s); readln; end. Задача. Заменить в произвольном тексте все слова word1 на слово word2. Таблица идентификаторов
Program word_text2; var text,word1,word2:string; i:integer; begin writeln(‘Введите исходный текст’); readln text); writeln(‘Введите первое слово’); readln(word1); writeln(‘Введите второе слово’); readln(word2); repeat i:=pos(word1,text) if i<>0 then begin delete(text,i,length(word1)); insert(word2,text,i); end; until i=0; writeln(‘Преобразованный текст’); writeln(text); readln; end. Вопросы для самоконтроля
Дата добавления: 2014-12-27; Просмотров: 421; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |