Строковый тип данных



Дата05.09.2014
Размер33.9 Kb.
ТипЗадача
Строковый тип данных
Для обработки строковой информации в Турбо Паскаль введен строковый тип данных. Строкой в Паскале называется последовательность из определенного количества символов. Количество символов последовательности называется длиной строки. Синтаксис:

var s: string[n];

var s: string;
n - максимально возможная длина строки - целое число в диапазоне 1..255. Если этот параметр опущен, то по умолчанию он принимается равным 255.
В Турбо Паскаль имеется простой доступ к отдельным символам строковой переменной: i-й символ переменной st записывается как st[i].

Например, если

st := 'Строка', то st[1] - это 'С', st[2] - это 'т', st[3] - 'р' и так далее.
Операции над строками:

1. Операция слияния, обозначаемая знаком +. Например:

a := 'Turbo';

b := 'Pascal';

c := a + b; {c приобретет значение 'TurboPascal'}.
2. Длина строки

n:=Length(s);

Пример.

n := length('Pascal'); {n будет равно 6}
Задача. Ввести строку с клавиатуры и заменить все буквы «а» на буквы «б».

program qq;

var s: string;

i: integer;

begin

writeln('Введите строку');

readln(s);

for i:=1 to Length(s) do

if s[i] = 'а' then s[i] := 'б';

writeln(s);

end.
3. Подстрока: выделить часть строки в другую строку.

Пример.

s := 'Система Turbo Pascal';

s2 := copy(s, 1, 7); {s2 будет равно 'Система'}

s3 := copy(s, 9, 5); {s3 будет равно 'Turbo'}

s4 := copy(s, 15, 6); {s4 будет равно 'Pascal'}
4. Удаление части строки

Пример.

s := 'Система Turbo Pascal';

delete(s,8,6); {s будет равно 'Система Pascal'}

5. Вставка в строку

Пример.


s := 'Turbo Pascal';

insert('Я изучаю ',s, 1); {s будет равно 'Я изучаю Turbo Pascal'}
6. Поиск в строке

Функция производит поиск в строке s подстроки. Результатом функции является номер первой позиции подстроки в исходной строке. Если подстрока не найдена, то функция возвращает 0.
Пример.

s := 'Система Turbo Pascal';

x1 := pos('Pascal', s); {x1 будет равно 15}

x2 := pos('Basic', s); {x2 будет равно 0}
Задача Ввести имя, отчество и фамилию. Преобразовать их к формату «фамилия-инициалы».

Пример:

Введите имя, фамилию и отчество:

Василий Алибабаевич Хрюндиков

Результат:

Хрюндиков В.А.

Алгоритм:

  • найти первый пробел и выделить имя

  • удалить имя с пробелом из основной строки

  • найти первый пробел и выделить отчество

  • удалить отчество с пробелом из основной строки

  • «сцепить» фамилию, первые буквы имени и фамилии, точки, пробелы…


program qq;

var s, name, otch: string;

n: integer;

begin

writeln('Введите имя, отчество и фамилию');

readln(s);

n := Pos(' ', s);

name := Copy(s, 1, n-1); { вырезать имя }

Delete(s, 1, n);

n := Pos(' ', s);

otch := Copy(s, 1, n-1); { вырезать отчество }

Delete(s, 1, n); { осталась фамилия }

s := s + ' ' + name[1] + '.' + otch[1] + '.';

writeln(s);

end.

Домашнее Задание

«3»:
1. Ввести символьную строку и заменить все буквы «а» на буквы «б», как заглавные, так и строчные.


Пример:
Введите строку: Результат:
ааббссААББСС ббббссББББСС
2. Ввести в одну строку фамилию, имя и отчество, разделив их пробелом. Вывести инициалы и фамилию.
Пример:
Введите фамилию, имя и отчество:
Иванов Петр Семёнович
Результат:
П.С. Иванов
«4»:
1. Ввести символьную строку и заменить все буквы «а» на буквы «б» и наоборот, как заглавные, так и строчные.
Пример:
Введите строку:
ааббссААББСС
Результат:
ббаассББААСС
2. Ввести имя файла (возможно, без расширения) и изменить его расширение на «.exe».
Пример:
Введите имя файла: Введите имя файла:
qqq qqq.com
Результат: Результат:
qqq.exe qqq.exe
«5»:
1. Ввести символьную строку и проверить, является ли она палиндромом (палиндром читается одинаково в обоих направлениях).
Пример: Пример:
Введите строку: Введите строку:
АБВГДЕ КАЗАК
Результат: Результат:
Не палиндром. Палиндром.
2. Ввести путь к файлу и «разобрать» его, выводя каждую вложенную папку с новой строки
Пример:
Введите путь к файлу:
C:\Мои документы\10-Б\Вася\qq.exe
Результат:
C:
Мои документы
10-Б
Вася
qq.exe

Похожие:

Строковый тип данных iconСтроковый тип данных
Вы уже познакомились с символьным типом данных char, который позволяет работать с отдельными символами текста. Для обработки более...
Строковый тип данных iconЯзык программирования Паскаль. Строковый тип данных. Разработка программы Калькулятор
Изучить основные приемы работы со строковыми данными, процедурами и функциями пользователя, рекурсивными алгоритмами и научиться...
Строковый тип данных icon«простые типы данных. Символьный тип данных» Простые типы данных делятся на порядковые и ве­щественный типы данных
Под порядковым типом понимают тип данных, областью значений которых является упорядоченное счетное множество. Каждому элементу такого...
Строковый тип данных icon«Перечисляемый тип данных»
Этот тип данных получил название перечисляемого, потому что он задается в виде перечисления некоторых значений. Эти значения образуют...
Строковый тип данных iconТип данных set множество
В языке Паскаль для задач подобного рода предусмотрен специальный тип данных set. Значения переменных этого типа всевозможные подмножества...
Строковый тип данных iconЯзыки программирования. Лекция 7
На прошлой лекции обсуждались арифметические типы данных и перечислимый тип. Перечислимый тип является разновидностью порядкового...
Строковый тип данных iconПонятие базы данных, реляционной базы данных, субд, ключа, отношения
Базовые понятия реляционных баз данных (тип данных, домен, атрибут, кортеж, первичный ключ, отношение)
Строковый тип данных iconКонспект по теме: «Вещественный тип данных»
Определение: Вещественный тип – это простой стандартный тип, предназначенный для хранения подмножества вещественных чисел и выполнения...
Строковый тип данных iconУрок 7 Тема: Переменные. Типы переменных. Целый тип данных
Запоминание данных в программе происходит путем присваивания значений переменным
Строковый тип данных iconБилеты к выпускному экзамену по информатике
Структура программы в Паскале. Вещественный и целый тип данных. Стандартные функции и процедуры для работы с целым и вещественным...
Разместите кнопку на своём сайте:
ru.convdocs.org


База данных защищена авторским правом ©ru.convdocs.org 2016
обратиться к администрации
ru.convdocs.org