Скачиваний:
0
Добавлен:
31.05.2025
Размер:
246.52 Кб
Скачать

МИНОБРНАУКИ РОССИИ

Санкт-Петербургский государственный

электротехнический университет

«ЛЭТИ» им. В.И. Ульянова (Ленина)

Кафедра ИИСТ

отчет

по практической работе №4

по дисциплине «Информационные технологии»

Тема: Работа с объектами

Студентка гр. номер

ФИО

Преподаватель

Куракина Н.И

Санкт-Петербург

20__

Цель работы.

Написать программу для анализа строки с использованием понятий класса, конструктора и функций-членов на языке С++.

Задание.

Создать класс строка. Максимальное число символов в строке – 79.

Ввод строки и определение ее длины оформить в конструкторе

Определить:

  1. Содержит ли строка символы отличные от букв;

  2. Начинается ли строка с буквы А;

  3. Сколько слов в строке

 Анализ строки оформить в виде функций-членов. Например, функция возвращает 0, если все символы – буквы, 1 – если нет.

Код функций-членов – вне пространства определения класса.

Основные теоретические положения.

  • Как определить содержит ли строка символы, отличные от букв?

Вводим переменную, которая будет отвечать за возвращаемое значение и присваиваем ей нулевое значение. Далее с помощью оператора for() и оператора if() проверяем каждый элемент: если проверяемый элемент попадает в диапазон от 'A'('a') до 'Z'('z') т.е. введённая строка удовлетворяет условию(истина), в нашем случае (==0), то функция возвращает значение 0, если условие ложное, то возвращается значение 1.

  • Как определить начинается ли строка с буквы А(а)?

С помощью оператора условия if() проверяем нулевой элемент. Если он является нужной нам буквой (т.е. коды символов совпадают), то возвращается 1, в противном случае возвращается 0.

  • Как посчитать количество слов в строке?

Для этого таким же образом, как и в проверке строки на отличные от букв символы, можно использовать оператор условия if(). Добавляем переменную, которая будет отвечать за количество слов (в данном случае count, присваиваем значение 0). Проверяем каждый элемент строки на то, является ли он пробелом, и является ли пробелом следующий за ним элемент. В результате, после каждого пробела увеличиваем значение count на 1. Клавиша enter является элементом конца строки '\0', поэтому необходимо проверить элемент на соответствие этому символу. Переменная count увеличивается на 1 при таком соответствии, так как слово, которое написано до нажатия клавиши enter не учитывается автоматически. Следует учесть, что строка может начинаться с пробела, поэтому необходимо указать в условии два критерия (один элемент должен быть не пробелом, а следующий за ним обязательно пробелом).

Результаты работы.

Общий вид программы:

Запускаем программу на выполнение.

В результате выполнения программа требует ввести строку. Строку необходимо вводить на латинице. Вводим строку (Абрикосы растут на деревьях). Проверяем корректность работы программы.

Строка содержит только буквы – верно (в коде программы прописано, что символ «пробел» не считается, как отличный от букв символ).

Строка начинается с буквы А – верно.

В строке 4 слова – верно.

Теперь введём строку, которая не начинается с буквы А, а также имеет отличные от букв символы (операция инкремента обозначается знаком ++):

++ не является буквой, значит в строке не только буквы – верно.

Первая буква в строке не 'а' – верно.

В строке 5 слов (++ тоже считается за слово) – верно.

Теперь введём строку, которая будет начинаться с пробела (Жители Омска называются омичами):

Строка содержит только буквы и не начинается с буквы А – верно.

Слов в строке 4 – все верно.

Выводы.

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

Соседние файлы в папке Практика 4