Часть 2. Задания по дисциплине «Объектно-ориентированное программирование»



Задание 1

а) Напишите программу на языке С++ (в консольном или оконном режиме) для слияния двух массивов A и B в отсортированный по возрастанию массив С. Массив А состоит из N случайных целых чисел и отсортирован по возрастанию. Массив В состоит из М случайных целых чисел и отсортирован по убыванию.

б) Изобразите алгоритм решения задачи в виде блок-схемы.

Задание 2

а) Напишите программу на языке С++ (в консольном или оконном режиме), вычисляющую среднюю длину слов во введенном тексте.

б) Изобразите алгоритм решения задачи в виде блок-схемы.

Задание 3

а) Напишите программу на языке С++ (в консольном или оконном режиме), определяющую, из каких цифр состоит заданное натуральное число и печатающую эти цифры в возрастающем порядке.

б) Изобразите алгоритм решения задачи в виде блок-схемы.

Задание 4

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

б) Изобразите алгоритм решения задачи в виде блок-схемы.

Задание 5

а) Напишите на языке С++ (в консольном или оконном режиме), программу для сложения двух простых дробей a/b и c/d (в результате должна получаться правильная несократимая дробь или смешанное число). Операцию сложения оформите как функцию.

б) Изобразите алгоритм решения задачи в виде блок-схемы.

 

Задание 6

Напишите программу на языке С++ (в консольном или оконном режиме), удаления из строки n-символов, начиная с q-го.

Задание 7

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

Задание 8

Опишите на языке С++ структуру с именем STUDENT, содержащую поля: ФИО, номер группы, успеваемость (массив из пяти элементов). Напишите программу (в консольном или оконном режиме), выполняющую ввод с клавиатуры данных в массив, состоящий из десяти структур STUDENT, вывод на дисплей фамилий студентов, средний балл которых превышает 4.0.

Задание 9

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

Назначение объекта Обозначение в программе Тип Диапазон
Название таблицы books book 1 … 10
Название книги name string 0 ... 15
Автор author string 0 … 10
Количество страниц pages int 0 … 1000

Обеспечьте формирование записей для 10 книг. Данные вводятся с клавиатуры, название книг и фамилия автора может состоять из нескольких слов, разделенных пробелами. Также обеспечьте корректировку заданной строки таблицы (строку идентифицировать фамилией автора, вводимой с клавиатуры).

Задание 10

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

 

Задание 11

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

Задание 12

Опишите на языке С++ шаблонный класс для создания массива из 10 чисел любого типа, его инициализации и подсчета среднего значения элементов массива. Напишите программу (в консольном или оконном режиме), демонстрирующую работу с данным классом (она должна содержать меню для выбора типа чисел).

 

Задание 13

Опишите на языке С++ шаблонную функцию для вычисления значения выражения   с аргументом любого типа. Напишите программу (в консольном или оконном режиме) вычисления значения функции для введенного значения аргумента и вывода вычисленного значения на экран (она должна содержать меню для выбора типа аргумента).

Задание 14

Опишите на языке С++ класс для создания массива из 10 целых чисел, его инициализации и подсчета среднего значения элементов массива. С помощью перегрузки операции [] обеспечьте контроль индекса при обращении к элементам массива (при выходе за границу массива должны выводиться сообщение «Out size array»). Напишите программу (в консольном или оконном режиме), демонстрирующую работу с данным классом.

Задание 15

Опишите на языке С++ абстрактный класс для вычисления функции с аргументом x и двумя параметрами a и b. Создайте на его основе конкретные классы для вычисления функций                  и . Напишите программу (в консольном или оконном режиме), демонстрирующую работу с данными классами (она должна содержать меню для выбора типа вычисляемой функции).

Задание 16

Напишите программу на языке С++ (в консольном или оконном режиме) для вычисления суммы , где a – массив целых чисел. Вычисление суммы оформите как функцию, обеспечьте ее вызов в основной программе. Внутри функции обеспечьте возбуждение, перехват и обработку исключительной ситуации, связанную с переполнением разрядной сетки (- 32768 . . . 32767).


Дата добавления: 2018-02-15; просмотров: 990; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!