Хелпикс

Главная

Контакты

Случайная статья





C4 (высокий уровень, время – 60 мин)



C4 (высокий уровень, время – 60 мин)

Тема: Обработка данных, вводимых в виде символьных строк (написать программу средней сложности из 30-50 строк).

Что нужно знать:

· символьная строка – это цепочка символов, которая может обрабатываться как единое целое

· для обращения к символу с номеромi строки s используется запись s[i], это говорит о том, что строка – особый вариант массива, в котором хранятся символы

· знак сложения при работе с символьными строками означает сцепку, объединение двух строк в одну (добавление второй строки в конец первой), например:

s := '123' + '456'; { получили '123456' }

· с помощью функции Ord можно получить код символа; цифры имеют коды от 48 (цифра 0) до 57 (цифра 9), например

k := Ord('1');   { получили 49 }

то же самое можно сделать с помощью преобразования типа (привести char к integer)

k := integer('1'); { получили 49 }

· с помощью функции Chr можно сделать обратный переход: получить символ по его коду, например

c := Chr(49);  { получили символ '1' }

то же самое можно сделать с помощью преобразования типа (привести integer к char)

c := char(49); { получили символ '1' }

· для работы со строками в наиболее распространенных Паскаль-средах (Turbo Pascal, Borland Pascal, PascalABC, среда АЛГО) используют стандартные функции (здесь s – это переменная типа string, символьная строка; n и r – целые переменные)

n := Length(s); записать длину строки s в целую переменную n
s1 := Copy(s, 2, 5); записать в символьную строку s1 подстроку строки s, которая начинается с символа с номером 2 и состоит из 5 символов (важно – не со 2-го по 5-ый символ!)
n := Pos('Вася', s); записать в целую переменную n номер символа, с которого в строке s начинается подстрока 'Вася' (если ее нет, в переменную n записывается 0); так же можно искать отдельные символы (важно: сначала указываем, что ищем, а потом – где)
n := StrToInt(s); преобразовать строку s в целое число и записать результат в переменную n (PascalABC, Delphi)

и процедуры

Delete(s, 2, 5); удалить из строки s5 символов, начиная со второго
Insert('Вася', s, 3); вставить в строку s фрагмент 'Вася', начиная с третьего символа (между 3-м и 4-м)
Val(s, n, r); преобразовать строку s в целое число и записать результат в переменную n; если при этом произошла ошибка, в переменной r будет номер ошибочного символа, если все нормально – ноль

· структура (в Паскале она называется «запись», record) – это сложный тип данных, который может включать в себя несколько элементов – полей; поля могут иметь различный тип

· записи в Паскале объявляются с помощью ключевого слова record; в простейшем случае можно выделить память под одну запись так:

 



  

© helpiks.su При использовании или копировании материалов прямая ссылка на сайт обязательна.