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

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

Работа со строками






на экран будет выведено сообщение: "Пароход ".

 

Замечание.
"Склеивание" строк можно производить, используя символ "+", например, C:=A+'о'+B; в результате строка C будет иметь вид: 'Пароход'.

6. Копирование строк. Для копирования строк или их фрагментов используется функция Copy. Ее общий вид:


Рис.4. Общий вид функции Copy

Например, при выполнении оператора WriteLn(Copy ('Язык Паскаль',6,7)) на экран будет выведено сообщение:" Паскаль".

Часто возникает необходимость получить строковое представление числа и наоборот (например, получить строку '13' из числа 13). Для работы с числами и строками применяются следующие две процедуры.

7. Перевод числа в строку. Для перевода числа в строку используется процедура Str, общий вид которой следующий:


Рис.5. Общий вид процедуры Str

Например, Str(1.21, St); в результате выполнения процедуры строка будет такой: St='1.21'.

8. Перевод строкового выражения в число. Для перевода строки в число используется процедура Val. Ее общий вид:


Рис.6. Общий вид процедуры Val

Если данная строка действительно является записью числа (целого или действительного), то значение признака будет равно нулю, иначе значение признака будет равно номеру первого символа, с которым процедура Val "не справилась", то есть преобразование этого символа является невозможным.

Например, при выполнении процедуры Val ('1234',N,K); значение переменной N будет равно 1234, а переменная K будет равна нулю, так как строка '1234' является записью целого числа. При выполнении конструкции Val('12-34',N,K); значение переменной N не изменится, а переменная K будет равна трем, то есть номеру символа, с которого преобразование невозможно, так как знак "-" в записи чисел может быть только на первом месте.

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

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

Приведем текст программы:

Program Summa;

Var

St:String;

Sum,k,d:Integer;

i:Byte;

Begin

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

ReadLn(St);

Sum:=0;{Начальное значение суммы.}

{"Просматриваем" все символы в исходной строке.}

For i:=1 To Length(St) Do

Begin

{Перевод очередного символа в число.}

Val(St[i],d,k);

{Если символ является цифрой, то находим сумму.}

If k=0 Then Sum:=Sum+d;

End;

WriteLn('Сумма цифр в строке равна: ', Sum);

End.

Задание: Ввести строку с клавиатуры, вывести на экран длину строки.

 

Работа со строками

 

Язык Pascal поддерживает стандартный символьный тип char и динамические строки, описываемые типом string (могут иметь различную длину).

Значение типа char – непустой символ, заключенный в апострофы, например, ‘2’, ‘h’, ‘я’.

Значение типа string – любая последовательность символов, заключенных в апострофы, например, ‘Привет!’, ‘Мама мыла раму.’, ‘abcd’.

Максимальная длина строки – 255 символов. Можно использовать пустую строку – ‘’. К каждому символу строки можно обращаться также как к элементу одномерного массива – по имени строки и номеру символа, заключенному в квадратные скобки, например, s [3] – третий символ строки s.

 







Дата добавления: 2015-08-30; просмотров: 377. Нарушение авторских прав; Мы поможем в написании вашей работы!



Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...

Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...

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

Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...

Весы настольные циферблатные Весы настольные циферблатные РН-10Ц13 (рис.3.1) выпускаются с наибольшими пределами взвешивания 2...

Хронометражно-табличная методика определения суточного расхода энергии студента Цель: познакомиться с хронометражно-табличным методом опреде­ления суточного расхода энергии...

ОЧАГОВЫЕ ТЕНИ В ЛЕГКОМ Очаговыми легочными инфильтратами проявляют себя различные по этиологии заболевания, в основе которых лежит бронхо-нодулярный процесс, который при рентгенологическом исследовании дает очагового характера тень, размерами не более 1 см в диаметре...

Философские школы эпохи эллинизма (неоплатонизм, эпикуреизм, стоицизм, скептицизм). Эпоха эллинизма со времени походов Александра Македонского, в результате которых была образована гигантская империя от Индии на востоке до Греции и Македонии на западе...

Демографияда "Демографиялық жарылыс" дегеніміз не? Демография (грекше демос — халық) — халықтың құрылымын...

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

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