Форум программистов, компьютерный форум CyberForum.ru

ручной ввод.бинарное дерево.нужно на вечер! пожалуйста - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Является ли число суммой степеней двойки? http://www.cyberforum.ru/cpp-beginners/thread729096.html
помогите написать такую функцию, чтоб проверяла число на сумму степеней двойки(без повторений этих степеней) например число 30 устраивает (2+4+8+16) а 34 и 33 и 32 и тп уже не устраивает уже не устраивает
C++ Объявление глобальных переменных #include "stdafx.h" #include <conio.h> #include <stdio.h> void main (int x, int y) { printf ("x="); scanf_s ("x=&d", &x); printf ("y="); http://www.cyberforum.ru/cpp-beginners/thread729091.html
C++ Visual жалуется на конструктор "Error C2512: нет подходящего конструктора по умолчанию"
Привет, мне Visual C++ выдал такие ошибки error C2512: Dog: нет подходящего конструктора по умолчанию G:\projects\class, day 6\class, day 6\class, day 6.cpp 50 IntelliSense: для класса "Dog" не существует конструктор по умолчанию g:\projects\class, day 6\class, day 6\class, day 6.cpp 50 делаю все как в уроке, пытаюсь описать класс в заголовочном файле, вот код с заголовочного файла ...
C++ Объявите указатели на следующие типы int, char, double - проинициализируйте их, выведите их значения на экран.
Инициализация указателей. Объявите указатели на следующие типы int, char, double - проинициализируйте их, выведите их значения на экран. Запишите по данным адресам конкретные значения. Выведите на экран значения, хранящиеся по заданным адресам
C++ работа с очередью http://www.cyberforum.ru/cpp-beginners/thread729057.html
1. Написать программу, которая формирует очередь целых чисел, вводимых с клавиатуры, и выводит элементы очереди на экран. Найти в этой очереди максимальный элемент и перенести его в начало очереди. Вывести полученную очередь на экран. Я вообще в этих очередях 0 помогите пажалуйста.
C++ Разработать функцию, которая определяет сумму элементов в тех строках, которые не содержат положительных элементов. Работа с двумерным динамическим массивом. Для целочисленного двумерного массива (размерность массива задается пользователем), разработайте функцию, которая определяет сумму элементов в тех строках, которые не содержат положительных элементов. подробнее

Показать сообщение отдельно
barash21
0 / 0 / 0
Регистрация: 10.12.2012
Сообщений: 4
12.12.2012, 17:08     ручной ввод.бинарное дерево.нужно на вечер! пожалуйста
как сделать чтоб вручную в этой программе вводилось слово а потом выводило перевод..к примеру набираю на клаве red выдаёт красный....
вот код программы
C++ (Qt)
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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
#include <iostream>
#include <Windows.h>
#include <string>
#include <iomanip>
 
class Translator
{
private:
    struct Node
    {
        Node(std::string const& rus, std::string const& eng) :
            pl(0), pr(0), rus_(rus), eng_(eng){}
        Node* Insert(std::string const& rus, std::string const& eng)
        {
            Node* pret = 0;
            if(rus < rus_)
            {
                if(!pl)
                {
                    pl = new Node(rus, eng);
                    pret = pl;
                }
                else
                {
                    pret = pl->Insert(rus, eng);
                }
            }
            else if(rus > rus_)
            {
                if(!pr)
                {
                    pr = new Node(rus, eng);
                    pret = pr;
                }
                else
                {
                    pret = pr->Insert(rus, eng);
                }
            }
            return pret;
        }
        std::string GetEng(std::string const& rus) const
        {
            std::string sret;
            if(rus == rus_)
                sret = eng_;
            else if(rus < rus_)
            {
                if(pl)
                    sret = pl->GetEng(rus);
            }
            else
            {
                if(pr)
                    sret = pr->GetEng(rus);
            }
            return sret;
        }
        void Print() const
        {
            if(pl)
                pl->Print();
            std::cout << std::setw(14) << std::left << rus_ << eng_ << std::endl;
            if(pr)
                pr->Print();
 
        }
        void Cleanup()
        {
            if(pl)
            {
                pl->Cleanup();
                pl = 0;
            }
            if(pr)
            {
                pr->Cleanup();
                pr = 0;
            }
            delete this;
        }
        std::string rus_, eng_;
        Node* pl, *pr;
    };
public:
    Translator() : p_(0){}
    Node* Insert(std::string const& s1, std::string const& s2)
    {
        Node* pret = 0;
        if((s1[0] > 0 && s2[0] < 0) || (s1[0] < 0 && s2[0] > 0))
        {
            std::string const& rus(s1[0] < 0 ? s1 : s2);
            std::string const& eng(s1[0] > 0 ? s1 : s2);
            if(!p_)
            {
                p_ = new Node(rus, eng);
                pret = p_;
            }
            else
            {
                pret = p_->Insert(rus, eng);
            }
        }
        return pret;
    }
    std::string GetEng(std::string const& rus) const
    {
        std::string sret;
        if(p_)
        {
            sret = p_->GetEng(rus);
        }
        return sret;
    }
    void Print() const
    {
        if(p_)
            p_->Print();
    }
    void Cleanup()
    {
        if(p_)
        {
            p_->Cleanup();
            p_ = 0;
        }
    }
private:
    Node* p_;
    Translator(Translator const&);
    Translator& operator=(Translator);
};
 
int main()
{
    SetConsoleOutputCP(1251);
    Translator d;
    d.Insert("красный", "red");
    d.Insert("black", "чёрный");
    d.Insert("зелёный", "green");
    d.Insert("white", "белый");
    std::cout << d.GetEng("красный") << std::endl;
    std::cout << d.GetEng("серый") << std::endl;
    d.Print();
    d.Cleanup();
    std::cin.get();
    return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 06:20. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru