Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
DragonBorn88
2 / 2 / 0
Регистрация: 10.09.2018
Сообщений: 257
1

Реализовать базовый класс «Буква» в соответствии с условием (найти и исправить ошибки в коде)

11.09.2018, 10:50. Просмотров 846. Ответов 8
Метки с++ (Все метки)

Создать базовый класс «буква», такой, что:
a) он содержит перечислительная тип, что обозначает 4 цвета.
b) его экземпляр содержит код буквы латинского алфавита и цвет этой буквы.
c) его конструктор без параметра создает экземпляр со значением «пробел», цвет
белый, а конструктор с параметрами создает экземпляр с соответствующими значение
буквы и цвета.
d) его методы позволяют получать и присваивать значение, выполняя при этом
соответствующие превращение.
e) функция print () вывода на экран букву и ее цвет.

Написал код, но он почему-то не работает, подскажите пожалуйста в чём ошибка?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#include <iostream>
using namespace std;
 
 
enum class Color : int { WHITE, RED, GREEN, BLUE };
 
class Char
{
    char m_Ch;
    Color m_Color;
public:
    Char() : Char{ ' ', Color::WHITE } {}
    Char(char _Ch, Color _color) : m_Ch{ _Ch }, m_Color{ _color }{}
    void SetChar(char _Ch) { m_Ch = _Ch; }
    char GetChar() const { return m_Ch; }
    void SetColor(Color _color) { m_Color = _color; }
    Color GetColor() const { return m_Color; }
};
 
void print(const Char &Ch)
{
    cout << "'" << Ch.GetChar() << "' ";
    switch (Ch.GetColor())
    {
    WHITE:
    cout << "WHITE" << std::endl;
        break;
    RED:
    cout << "RED" << std::endl;
        break;
    GREEN:
    cout << "GREEN" << std::endl;
        break;
    BLUE:
    cout << "BLUE" << std::endl;
        break;
    default:
    cout << "NONE" << std::endl;
    }
}
 
int main()
{
    {
        Char Ch{};
        print(Ch);
    }
    {
        Char Ch{ 85, Color::RED };
        print(Ch);
    }
    system("pause");
 
}
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.09.2018, 10:50
Ответы с готовыми решениями:

Базовый и производный класс: найти и исправить ошибки в коде
Ребятки подскажите где ошибка?! Что не правильно сделала?. #include &lt;iostream&gt; #include...

Реализовать класс Bank (найти и исправить ошибки и недочёты в коде)
Что тут не так? Подскажите пж! 2 дня сижу и не понимаю как сделать этот чёртов банк! #include...

Реализовать пользовательский класс Matrix (найти причины возникновения ошибок в коде и исправить эти ошибки)
Доброго времени суток,задание написать класс Matrix,все вроде бы понятно,но почему-то моя матрица...

Реализовать класс "Счётчик" (Найти и исправить ошибки в коде)
Вот условие: &quot;Цифровой счетчик, это переменная с ограниченным диапазоном. Значение которой...

Реализовать шифратор/дешифратор (найти и исправить ошибки в коде)
Выходят три ошибки Помогите исправить // ConsoleApplication30.cpp: определяет точку входа для...

8
sourcerer
Модератор
Эксперт CЭксперт С++
4913 / 2099 / 326
Регистрация: 20.02.2013
Сообщений: 5,573
Записей в блоге: 24
Завершенные тесты: 1
11.09.2018, 11:09 2
DragonBorn88, заголовочник добавьте:
C++
1
#include <windows.h>
а то у вас компилятор не понимает, что такое system("pause");
0
DragonBorn88
2 / 2 / 0
Регистрация: 10.09.2018
Сообщений: 257
11.09.2018, 12:37  [ТС] 3
Подключил библиотеку,но не чего не изменилось. Программа все равно не работает как должна
0
sourcerer
Модератор
Эксперт CЭксперт С++
4913 / 2099 / 326
Регистрация: 20.02.2013
Сообщений: 5,573
Записей в блоге: 24
Завершенные тесты: 1
11.09.2018, 12:44 4
Цитата Сообщение от DragonBorn88 Посмотреть сообщение
не работает как должна
DragonBorn88, будем ждать телепатов
0
11.09.2018, 12:44
DragonBorn88
2 / 2 / 0
Регистрация: 10.09.2018
Сообщений: 257
11.09.2018, 13:29  [ТС] 5
Вот что программа мне выводит. А должна выводить букву и её цвет
0
Миниатюры
Реализовать базовый класс «Буква» в соответствии с условием (найти и исправить ошибки в коде)  
sourcerer
Модератор
Эксперт CЭксперт С++
4913 / 2099 / 326
Регистрация: 20.02.2013
Сообщений: 5,573
Записей в блоге: 24
Завершенные тесты: 1
11.09.2018, 13:50 6
Лучший ответ Сообщение было отмечено DragonBorn88 как решение

Решение

DragonBorn88, вот:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#include <iostream>
#include <windows.h>
 
enum class Color : int { WHITE, RED, GREEN, BLUE };
 
class Char
{
    char m_Ch;
    Color m_Color;
public:
    Char() : Char{ ' ', Color::WHITE } {}
    Char(char _Ch, Color _color) : m_Ch{ _Ch }, m_Color{ _color }{}
    void SetChar(char _Ch) { m_Ch = _Ch; }
    char GetChar() const { return m_Ch; }
    void SetColor(Color _color) { m_Color = _color; }
    Color GetColor() const { return m_Color; }
};
 
void print(const Char &Ch)
{
    using std::cout;
 
    cout << "'" << Ch.GetChar() << "' ";
    switch (Ch.GetColor())
    {
        case Color::WHITE:
        cout << "WHITE\n";
            break;
        case Color::RED:
        cout << "RED\n";
            break;
        case Color::GREEN:
        cout << "GREEN\n";
            break;
        case Color::BLUE:
        cout << "BLUE\n";
            break;
        default:
        cout << "NONE\n";
            break;
    }
}
 
int main()
{
    Char Ch1{};
    print(Ch1);
 
    Char Ch2('a', Color::RED);
    print(Ch2);
 
    system("pause");
}
1
Миниатюры
Реализовать базовый класс «Буква» в соответствии с условием (найти и исправить ошибки в коде)  
DragonBorn88
2 / 2 / 0
Регистрация: 10.09.2018
Сообщений: 257
11.09.2018, 17:33  [ТС] 7
Компилятор (Visual Studio)
Выдает такую ошибку:
0
Миниатюры
Реализовать базовый класс «Буква» в соответствии с условием (найти и исправить ошибки в коде)  
sourcerer
Модератор
Эксперт CЭксперт С++
4913 / 2099 / 326
Регистрация: 20.02.2013
Сообщений: 5,573
Записей в блоге: 24
Завершенные тесты: 1
11.09.2018, 18:27 8
Цитата Сообщение от DragonBorn88 Посмотреть сообщение
Компилятор (Visual Studio)
Выдает такую ошибку:
Мой - не выдаёт. У меня MS Visual Studio 2017 (ver. 15.8.2)
0
Миниатюры
Реализовать базовый класс «Буква» в соответствии с условием (найти и исправить ошибки в коде)   Реализовать базовый класс «Буква» в соответствии с условием (найти и исправить ошибки в коде)   Реализовать базовый класс «Буква» в соответствии с условием (найти и исправить ошибки в коде)  

DragonBorn88
2 / 2 / 0
Регистрация: 10.09.2018
Сообщений: 257
11.09.2018, 18:30  [ТС] 9
Уже все хорошо.
Большое спасибо вам
0
11.09.2018, 18:30
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.09.2018, 18:30

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

Реализовать структуру Student (не работает вывод на консоль - найти и исправить ошибки в коде)
Описать структуру с именем STUDENT, содержащую следующие поля:-фамилия и инициалы;-номер...

Реализовать класс, выводящий сообщение на консоль (найти и исправить ошибки)
Здравствуйте! Разбираю тему &quot;классы&quot; в С++. Программа должна выдавать сообщение: website:...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru