Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Data Structures and Algorithms in C++ 2e (На ру...docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
2.37 Mб
Скачать

1.8. Упражнения 61

R-1.9 Напишите C ++ функция printArray (A, m, n), который печатает m n два -

размерное множество целых чисел, которые, как объявляют, были «интервалом **», к стандарту

продукция. Каждый из m рядов должен появиться на отдельной линии.

R-1.10 Что (если что-нибудь) является особенным в поведении следующих двух

функции f и g, которые увеличивают переменную и печатают ее стоимость?

пустота f (интервал x)

станд.:: суд <<++ x;

пустота g (int& x)

станд.:: суд <<++ x;

R-1.11 Напишите C ++ класс, Флауэр, у которой есть три членских переменные последовательности типа,

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

R-1.12 Измените класс CreditCard от Кодового Фрагмента 1.3, чтобы проверить что

ценовой аргумент прошел к функции chargeIt, и платежный аргумент прошел к функции makePayment, положительные.

R-1.13 Измените класс CreditCard от Кодового Фрагмента 1.2, чтобы начислить проценты

на каждой оплате. R-1.14 Измените класс CreditCard от Кодового Фрагмента 1.2, чтобы взыскать штраф за просрочку платежа

для любой оплаты, которая проходит ее число истечения срока. R-1.15 Измените класс CreditCard от Кодового Фрагмента 1.2, чтобы включать модификатор

функции, которые позволяют пользователю изменять внутренние переменные в классе CreditCard способом, которым управляют.

R-1.16 Измените декларацию первого для петли в Испытательном классе в Кодексе Frag-

ment 1.4 так, чтобы его обвинения в конечном счете заставили точно одну из этих трех кредитных карт пробегаться через свой кредитный лимит. Какая кредитная карта - он?

R-1.17 Напишите C ++ класс, AllKinds, у которого есть три членских переменные интервала типа,

долго, и float, соответственно. Каждый класс должен включать конструктора func-tion, который инициализирует каждую переменную к ненулевому значению, и каждый класс должен включать функции для урегулирования ценности каждого типа, получение ценности каждого типа, и вычисления и возвращения суммы каждой возможной combi-страны типов.

R-1.18 Напишите короткий C ++ функция, isMultiple, который берет две длинных ценности, n и

m, и прибыль, верная, если и только если n - кратное число m, то есть, n = m i для

некоторое целое число i.

R-1.19 Напишите короткий C ++ функция, isTwoPower, который берет интервал i и прибыль

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

62

Глава 1. C ++ учебник для начинающих

R-1.20 Напишите короткий C ++ функция, которая берет целое число n и возвращает сумму

все целые числа, меньшие, чем n.

R-1.21 Напишите короткий C ++ функция, которая берет целое число n и возвращает сумму

все странные целые числа, меньшие, чем n.

R-1.22 Напишите короткий C ++ функция, которая берет положительную двойную стоимость x и прибыль

количество раз мы можем разделить x на 2, прежде чем мы получим число меньше чем 2.

Креативность

C-1.1 Напишите псевдокодовое описание метода, который полностью изменяет множество n

целые числа, так, чтобы числа были перечислены в противоположном заказе, чем, они были прежде и сравнивают этот метод с эквивалентным C ++ метод для того, чтобы сделать ту же самую вещь.

C-1.2 Напишите короткий C ++ функция, которая берет множество международных ценностей и определяет

если есть пара чисел во множестве, продукт которого ровен.

C-1.3 Напишите C ++ функция, которая берет вектор STL международных ценностей, и удержите -

шахты, если все числа отличаются друг от друга (то есть, они отличны).

C-1.4 Напишите C ++ функция, которая берет вектор STL международных ценностей и печатает все

странные ценности в векторе.

C-1.5 Напишите C ++ функция, которая берет множество, содержащее набор всех целых чисел

в диапазоне 1 - 52 и shuffles это в случайный заказ. Используйте встроенный func-tion рэнд, который возвращает псевдослучайное целое число каждый раз, когда это называют. Ваша функция должна произвести каждый возможный заказ с равной вероятностью.

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

используя каждый из знаков, 'b', 'c', 'd', 'e', и 'f' точно однажды.

C-1.7 Напишите короткий C ++ программа, которая берет весь вход линий к стандартному входу

и пишет им стандартной продукции в обратном порядке. Таким образом, каждая линия произведена в правильном порядке, но заказ линий полностью изменен.

C-1.8 Напишите короткий C ++ программа, которая берет два аргумента типа STL vec-

скалистая вершина <дважды>, a и b и прибыль поэлементно продукт a и b. Таким образом, это возвращает вектор c той же самой длины, таким образом что c [я] =

[я] b [я].

C-1.9 Напишите C ++ класс Vector2, который хранит (x, y) координаты двух -

размерный вектор, где x и y имеют тип дважды. Покажите, как отвергнуть различный C ++ операторы, чтобы осуществить добавление двух векторов (приводящий к векторному результату), умножение скалярные времена вектор (приводящий к векторному результату), и точечный продукт двух векторов (приводящий к двойному результату).