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

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

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






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

 

Замечание.
"Склеивание" строк можно производить, используя символ "+", например, 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; просмотров: 374. Нарушение авторских прав; Мы поможем в написании вашей работы!



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

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

ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...

Теория усилителей. Схема Основная масса современных аналоговых и аналого-цифровых электронных устройств выполняется на специализированных микросхемах...

Разработка товарной и ценовой стратегии фирмы на российском рынке хлебопродуктов В начале 1994 г. английская фирма МОНО совместно с бельгийской ПЮРАТОС приняла решение о начале совместного проекта на российском рынке. Эти фирмы ведут деятельность в сопредельных сферах производства хлебопродуктов. МОНО – крупнейший в Великобритании...

ОПРЕДЕЛЕНИЕ ЦЕНТРА ТЯЖЕСТИ ПЛОСКОЙ ФИГУРЫ Сила, с которой тело притягивается к Земле, называется силой тяжести...

СПИД: морально-этические проблемы Среди тысяч заболеваний совершенно особое, даже исключительное, место занимает ВИЧ-инфекция...

ТРАНСПОРТНАЯ ИММОБИЛИЗАЦИЯ   Под транспортной иммобилизацией понимают мероприятия, направленные на обеспечение покоя в поврежденном участке тела и близлежащих к нему суставах на период перевозки пострадавшего в лечебное учреждение...

Кишечный шов (Ламбера, Альберта, Шмидена, Матешука) Кишечный шов– это способ соединения кишечной стенки. В основе кишечного шва лежит принцип футлярного строения кишечной стенки...

Принципы резекции желудка по типу Бильрот 1, Бильрот 2; операция Гофмейстера-Финстерера. Гастрэктомия Резекция желудка – удаление части желудка: а) дистальная – удаляют 2/3 желудка б) проксимальная – удаляют 95% желудка. Показания...

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