Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗cpOpFpEn 145 of 150 menu
◀ ▶

Практика на перечисления в C++

Задачи объявляют enum class, сравнивают константы и выбирают действие в switch по значению перечисления.

Сделайте enum class Level с константами Low, Mid и High. Дана переменная:

Level lv = Level::Mid;

Через switch выведите метку "mid" для Level::Mid и "other" для остальных случаев.

Сделайте enum class Color с полем hex в константах: Red - "f00", Green - "0f0", Blue - "00f". Выведите hex для Color::Green.

Сделайте enum class Op с константами Plus и Minus. Напишите функцию calc(a, b, op) с switch. Выведите результат для 7, 3 и Op::Minus.

Сделайте enum class Size с константами S, M и L. Дан вектор:

std::vector<Size> sizes = { Size::S, Size::L, Size::M, Size::S, };

Выведите число элементов Size::S.

Дан enum:

enum class Role { User, Admin }; bool canDelete(Role role) { return role == Role::Admin; }

Выведите canDelete(Role::User) и canDelete(Role::Admin).

Сделайте enum class Dir с константами N, E, S и W. Напишите функцию label(Dir d) с switch, которая возвращает "north", "east", "south" или "west". Выведите метку для Dir::E.

Сделайте класс Task с полем Status типа enum class Status с константами New, Done. Метод markDone меняет статус. Создайте задачу, отметьте выполненной и выведите 1, если статус Done.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить