Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Обработка строк с использованием операторов цикла





 

При выполнении работы необходимо знать:

  • Особенности работы со строками.
  • Операторы цикла и уметь применять их при обработке строк.
  • Уметь составить схему программы (алгоритм) циклической структуры для задачи по обработке строк и записать программу по готовому алгоритму.

 

Теоретический минимум:

1. Строки.

Строки – представляют собой последовательность символов, иными словами структуры, состоящие из элементов простого типа (Char).

Значение типа string представляет собой строку длиной от 0 (пустая строка) до 255 символов. При этом нулевой байт строки содержит сведения о текущей длине строки.

 

Примеры строковых значений:

‘12345’ ‘@#$%^’ ‘TRUE’ ‘АБВГДЕЖЗ’ ‘2007 год’

 

Следует помнить, что строка ‘12345’ не имеет ничего общего с числом и с ней нельзя производить арифметических действий. Строка ‘TRUE’ также вовсе не является значением типа Boolean.

 

Пример описания переменных строкового типа:

Var

A: string; {если длина строки не указана, то по умолчанию}

{она считается равной 255 символам}

B: string [80]; {максимальную длину строки можно указать явно}

 

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

Строки занимают промежуточное положение между простыми и структурированными типами данных. Строка – это структура, состоящая из элементов простого типа (Char). И в тоже время к строкам применимы некоторые действия, неприменимые к данным структурированного типа. Например, строку можно ввести с клавиатуры или вывести на экран, воспользовавшись операторами Read(A) и Write(A), где А-переменная строкового типа. Также допустимо сравнивать строки. Эти действия невозможны с другими данными структурированного типа – массивами и записями, обработка которых осуществляется только в цикле.

Обратиться к отдельному символу строки можно, указав имя строковой переменной и порядковый номер символа в строке, например:

 

A[5]: =’F’; {5-му символу в строке присваивается значение типа Char }

Write (A[33]); {значение 33-го символа строки выводится на экран}

 

Переменную типа string можно сравнить с другой переменной или константой типа string, используя знаки >, <, > =, < =, < >. Строки сравниваются посимвольно от первого символа. Если все символы строк одинаковы, то строки считаются равными. Если в одинаковых позициях строк находятся разные символы, то большей считается та строка, у которой в этой позиции находится символ с большим кодом.

К строкам применимы некоторые специальные процедуры и функции, приведенные в таблице.


Таблица 9. Стандартные строковые процедуры и функции.

Процедура или функция Назначение Тип результата
  Length(x)   Определяет текущую длину строки х.   Целое число – количество символов строки х.  
Delete(x, p, n) Позволяет удалить часть строки х, начиная с позиции p, длиной n символов. Строка.
Pos(x1, x) Позволяет определить положение подстроки х1 в строке х. Целое число, номер позиции вхождения подстроки в строку. Если подстрока не найдена, возвращает ноль.
Copy(x, p, n) Позволяет скопировать фрагмент строки х, начиная с позиции p, длиной n символов. Строка.
Insert (x1, x, n) Вставка подстроки х1 в строку х, начиная с позиции n. Строка.
Val(x, p, n) Позволяет преобразовать изображение числа х в число, р - переменная, которой присваивается полученное число, n - код ошибки. Если строка успешно преобразована в число, то код ошибки ноль, если преобразование невозможно, то код ошибки равен номеру позиции в строке, содержащей недопустимый символ.

 

Для того, чтобы обработать строку посимвольно от первого символа до последнего, можно применить цикл, например:

 

For i: =1 to Length(x) do { переменная i перебирает номера символов строки }

If x[i]=’a’ then k: =k+1; { подсчитываем в цикле количество букв ‘а’ в строке }

 







Дата добавления: 2014-11-12; просмотров: 623. Нарушение авторских прав; Мы поможем в написании вашей работы!




Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...


Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...


Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...


Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...

Образование соседних чисел Фрагмент: Программная задача: показать образование числа 4 и числа 3 друг из друга...

Шрифт зодчего Шрифт зодчего состоит из прописных (заглавных), строчных букв и цифр...

Краткая психологическая характеристика возрастных периодов.Первый критический период развития ребенка — период новорожденности Психоаналитики говорят, что это первая травма, которую переживает ребенок, и она настолько сильна, что вся последую­щая жизнь проходит под знаком этой травмы...

Травматическая окклюзия и ее клинические признаки При пародонтите и парадонтозе резистентность тканей пародонта падает...

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

Принципы и методы управления в таможенных органах Под принципами управления понимаются идеи, правила, основные положения и нормы поведения, которыми руководствуются общие, частные и организационно-технологические принципы...

Studopedia.info - Студопедия - 2014-2026 год . (0.008 сек.) русская версия | украинская версия