Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
тех прог.doc
Скачиваний:
38
Добавлен:
14.11.2019
Размер:
3.59 Mб
Скачать

Задачи 167-174. Структуры

  1. Дополните программу 37 выводом статистики, то есть общего количества прочитанных слов, числа различных ключевых слов, встреченных в тексте и количества ключевых слов, не вошедших в текст.

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

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

  4. Объединение из программы 39 позволяет получать различные значения числа с плавающей точкой путем изменения отведенных под него байтов. Напишите программу, реализующую такой способ задания чисел с плавающей точкой и установите внутреннее представление и значение наибольшего и наименьшего положительного числа типа float.

  5. Напишите программу для установления внутреннего представления и значения наименьшего числа типа float и наименьшего по модулю отрицательного числа того же типа.

  6. Напишите программу для анализа внутреннего представления величин типа double. Предусмотрите возможность задания различных значений переменной типа double путем записи в отведенные под нее байты некоторых значений. Исследуйте, как выглядит внутреннее представление наибольшего и наименьшего положительного значения типа double.

  7. Напишите программу для установления внутреннего представления и значения наименьшего отрицательного числа типа double и наименьшего по модулю отрицательного числа этого типа.

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

Глава 15.Классы

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

Классы являются инструментом объектно-ориентированного программирования, в котором во главе угла стоят данные.

Класс – это определяемый пользователем тип. Тип является конкретным представлением некоторой концепции. Например, встроенный тип float вместе с операциями +, -, *, / представляет конкретное воплощение математической концепции вещественного числа. Новые типы создаются для определения концепции, не выражаемой непосредственно встроенными типами.

15.1.Структуры в C++. Инкапсуляция

В языке C++ в состав структур могут входить не только данные, как это имеет место в языке C, но и функции. Объединение в структуре и данных и функций для их обработки называется инкапсуляцией. Достоинством инкапсуляции является полное описание модели в одном месте, что упрощает работу с моделью. Функции, входящие в структуру, имеют непосредственный свободный доступ к данным, хранящимся в структуре.

Например, для работы со временем суток можно использовать структуру, описанную в следующей программе.