Задача на побитые операции в c++ В пиццерии для заказа пиццы используют стенд заказов, на котором посетители выбирают ингредиенты. Возможные ингредиенты: помидоры, ветчина, грибы, сыр, ананасы, креветки и лук; выбранные ингредиенты записываются в одну переменную как битовые флаги. Пункт А. Создайте константы для обозначения флагов для ингредиентов. С их создайте и запишите в переменную заказ на пиццу с помидорами, ветчиной и луком. Остальные пункты. Выполняются произвольно, в любом порядке и количестве. Во всех пунктах предполагается, что в переменной pizza записан некоторый (произвольный) заказ.
Пункт B. Посчитайте и выведите общее количество ингредиентов в заказе.
Пункт C. В пиццерии проводится акция: во все пиццы добавляется сыр. Установите соответствующий флаг. В пиццерии закончились креветки. Сбросьте соответствующий флаг. На стенде перепутали подписи у кнопки заказа ананасов. Поменяйте соответствующий флаг на протиповоложный.
Пункт D. Новая акция: каждый, заказавший грибы, получает к ним лук. Установите флаг для лука, если в заказе установлен флаг для грибов. Условные операторы if, switch, циклы и тернарная операция всё ещё запрещены.

TS1311 TS1311    1   16.09.2020 19:23    1

Ответы
katysid155 katysid155  16.10.2020 19:24

Программа представлена на скрине.

Далее под константой будет пониматься макроопределение (символическая константа)

Были созданы константы для обозначения флагов ингредиентов. Им даны осмысленные названия. Также была создана константа для формирования пустого заказа.

int ingredientsCount(Pizza&); - возвращает количество ингредиентов.

void addCheese(Pizza&); - добавляет в заказ сыр

void removeOnion(Pizza&); -  убирает из заказа лук

void togglePineapple(Pizza&);  - переключает ананасы

void addOnionIfMushroomsExist(Pizza&); - добавляет лук если есть грибы


Задача на побитые операции в c++ В пиццерии для заказа пиццы используют стенд заказов, на котором по
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика