ПРАКТИЧЕСКОЕ ЗАНЯТИЕ РАЗРАБОТКА ПРОГРАММ ОБРАБОТКИ СТРОКОВЫХ ДАННЫХ

  • docx
  • 11.11.2021
Публикация на сайте для учителей

Публикация педагогических разработок

Бесплатное участие. Свидетельство автора сразу.
Мгновенные 10 документов в портфолио.

Иконка файла материала Л2-00411.docx

ПРАКТИЧЕСКОЕ ЗАНЯТИЕ

РАЗРАБОТКА ПРОГРАММ ОБРАБОТКИ СТРОКОВЫХ ДАННЫХ

 

1.   ЦЕЛИ ЗАНЯТИЯ

1.1    Познакомиться с основными приемами работы со строковыми переменны- ми;

1.2   Научиться решать типовые задачи.

 

2.   ИНФОРМАЦИОННЫЙ БЛОК

Строковый тип данных относится к числу структурированных типов.

Строка – это последовательность символов, каждый из которых в памяти занимает 1 байт. Количество символов в строке называется его длиной. Длина строки может находиться в диапазоне 0 255 символов.

Строковые величины могут быть константами или переменными.

Строковая константа – это последовательность символов, заключенная в апострофы. Например:

‘Язык программирования Pascal’ ’52-89-74’

Строковая переменная описывается  в разделе описания переменных сле-

дующим образом

Var      <идентификатор>: String [максимальная длина строки]; Например:

Var S: String[10]; {описана строковая переменная S, максимальная дина ко- торой – 10 символов}

Параметр длины может и не указываться в описании. В этом случае подра- зумевается, что он равен максимальной величине – 255. Например: Var Slovo: String;

Строковая переменная занимает в памяти на 1 байт больше, чем указано при описании. Т.к. один (нулевой) байт содержит значение текущей длины строки. Поскольку в каждой ячейке строки (в том числе нулевой) может хра- ниться только переменная типа char, то непосредственно записать в нулевую ячейку число, соответствующее длине строки нельзя. Поэтому в нулевую ячей- ку строки записывается символ, код которого совпадает с длиной строки. На- пример,

S1:=’Aлло’;

S1[0]:=Chr(3); {функция Chr возвращает символ с указанным кодом} Writeln(S1); {на экране появятся три символа Алл}

Сравнение строк происходит посимвольно, начиная с первого символа в строке. Строки равны, если имеют одинаковую длину и посимвольно эквива- лентны. Если при посимвольном сравнении окажется, что один символ «боль- ше» другого (его код больше), то строка, его содержащая, также считается большей. Остатки строк и их длины игнорируются и на результат сравнения не влияют.


3.   ИСПОЛНИТЕЛЬНЫЙ БЛОК

Задание 1. Работа со строковыми константами и переменными

Написать программу, которая запрашивает имя пользователя и здоровается с ним.

Рекомендуемый вид экрана:

Как Вас зовут?

Введите свое имя и нажмите <Enter>

> Вася Здравствуйте, Вася!

 

Задание 2. Работа со стандартными процедурами и функциями для строк

Составить программу получения слова «правило» из слова «операция», ис- пользуя только процедуры Insert и Delete.

 

Задание 3. Работа с кодами символов

Написать программу, которая выдает код символа введенного пользовате- лем. Программа должна завершать работу после ввода, например, точки. (Функция Ord возвращает код символа. Например, Writeln(ord(‘A’)) на экране появится код символа ‘А’).

Рекомендуемый вид экрана:

Введите символ и нажмите <Enter>. Для завершения работы программы на- жмите точку.

> 1

Символ: 1 Код: 49

> 2

Символ: 2 Код: 50

> ы

Символ: ы Код: 235

> .

Задание 4. Решение типовых задач со строками

4.1   Дана строка символов, среди которых есть двоеточие. Определить сколько символов ему предшествует, и вывести их на экран.

4.2   Удалить все лишние пробелы из строки, определить количество уда- ленных символов.

 

4.   КОНТРОЛЬНЫЕ ВОПРОСЫ

1)     Что будет выведено на экране в результате работы следующего фрагмен-

та

S1:=’Пришла весна!’;

Writeln (S1[5], S1[9], S1[10]);

2)     Какая из двух строк больше, почему?

‘PASCAL’ или ‘pascal’

3)     Каким образом можно определить длину строки?

4)     С помощью какой процедуры можно удалить часть строки из строковой переменной? Приведите пример.


5)     Для чего и как используется нулевой байт в строке.

 

5.   ЗАДАНИЯ ДЛЯ САМОСТОЯТЕЛЬНОГО ВЫПОЛНЕНИЯ

1)     Из строки удалить часть символов, заключенных в круглые скобки, вме- сте со скобками.

2)     Вывести на три введенные строки по алфавиту.

3)     Определить количество слов, начинающихся на букву b.

4)     Дано предложение, в котором нет символа "-". Определить количество букв «о» в первом слове. Учесть, что в начале предложения могут быть пробелы.

5)     Дано предложение. Определить количество букв «н», предшествующих первой запятой предложения. Рассмотреть два случая:

-     известно, что запятые в предложении есть;

-     запятых в предложении может не быть.

6)     Дано предложение. Определить порядковые номера первой пары одина- ковых соседних символов. Если таких символов нет, то должно быть на- печатано соответствующее сообщение.

7)     Дано предложение. Определить, есть ли в нем буквосочетания чу или щу. В случае положительного ответа найти также порядковый номер первой буквы первого из них.


 

Скачано с www.znanio.ru