С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 11.10.2014
Сообщений: 31
1

Перегрузка ввода

24.05.2015, 20:45. Показов 611. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Нужно реализовать перегрузку ввода для этой программы:
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
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
#include "stdafx.h"
#include <iostream>
#include <fstream>
#include <sstream>
#include <cmath>
using namespace std;
class Number
{
private:
    double num;
public:
    Number() { }
    Number(double n) : num(n) { }
    double getNum() const;
    friend istream & operator >> (istream& rt, Number& n1);
    friend istream & operator >> (istream& stream, Number& n2);
    Number operator + (const Number &);
    Number operator - (const Number &);
    Number operator * (const Number &);
    Number operator / (const Number &);
    Number &operator = (const Number &);
};
 
double Number::getNum() const
{
    return num;
}
istream & operator >> (istream& rt, Number& ut)
{
    rt >> ut.num;
    return rt;
}
istream & operator >> (istream& stream, Number& zx)
{
    stream >> zx.num;
    return stream;
}
Number Number::operator + (const Number &rhs)
{
    return Number(num + rhs.getNum());
}
Number Number::operator - (const Number &rhs)
{
    return Number(num - rhs.getNum());
}
Number Number::operator * (const Number &rhs)
{
    return Number(num * rhs.getNum());
}
Number Number::operator / (const Number &rhs)
{
    return Number(num / rhs.getNum());
}
Number &Number::operator = (const Number &rhs)
{
    if (this == &rhs)
        return *this;
    num = rhs.getNum();
    return *this;
}
int main()
{
    Number n1, n2;
    while (1)
    {
        int j;
        cout << "\n";
        cout << "|*************************************|\n";
        cout << "|Enter 0 to the Exit                  |\n"
             << "|*************************************|\n";
        cout << "|Enter 1 to move to division          |\n";
        cout << "|Enter 2 to move to the multiplication|\n";
        cout << "|Enter 3 to move to the alignment     |\n";
        cout << "|Enter 4 to move to the addition of   |\n";
        cout << "|Enter 5 to move to the substraction  |\n"
             << "|*************************************|\n";
        cout << "|You order:                           |\n"; cin >> j;
        cout << "|*************************************|\n";
        if (cin.good())
            switch (j)
        {
            case 0:
                cout << "Program is canceled ";
                system("pause");
                return 0;
            case 1:
                cout << "Enter the first number = "; 
                cin >> n1;
                cout << "\n";
                cout << "Enter the second number = "; 
                cin >> n2;
                cout << "\n";
                cout << "Result = \t"; n1 / n2;
                cout << "\n";
                break;
            case 2:
                cout << "Enter the first number = "; 
                cin >> n1;
                cout << "\n";
                cout << "Enter the second number = "; 
                cin >> n2;
                cout << "\n";
                cout << "Result = "; n1 * n2;
                cout << "\n";
                break;
            case 3:
                cout << "Enter the first number = "; 
                cin >> n1;
                cout << "\n";
                cout << "Enter the second number = "; 
                cin >> n2;
                cout << "\n";
                cout << "Result = "; n1 = n2;
                cout << "\n";
                break;
            case 4:
                cout << "Enter the first number = "; 
                cin >> n1;
                cout << "\n";
                cout << "Enter the second number = ";
                cin >> n2;
                cout << "\n";
                cout << "Result = "; n1 + n2;
                cout << "\n";
                break;
            case 5:
                cout << "Enter the first number = ";
                cin >> n1;
                cout << "\n";
                cout << "Enter the second number = ";
                cin >> n2;
                cout << "\n";
                cout << "Result = "; n1 - n2;
                cout << "\n";
                break;
        }
    }
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.05.2015, 20:45
Ответы с готовыми решениями:

Перегрузка ввода
Вроде делал всё правильно, перегрузка вывода работает, делал аналогично и ввода, компилируется...

перегрузка ввода
class LONG { int a; public: friend istream&amp; operator &gt;&gt;(istream&amp; input, LONG&amp; m); };...

Перегрузка оператора ввода
Всем привет. Я хочу попробовать написать свой класс string. Вот пока собственно класс:class...

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

3
Заблокирован
24.05.2015, 20:51 2
А это вот чего?
Цитата Сообщение от Anvar2014 Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
istream & operator >> (istream& rt, Number& ut)
{
    rt >> ut.num;
    return rt;
}
istream & operator >> (istream& stream, Number& zx)
{
    stream >> zx.num;
    return stream;
}
0
0 / 0 / 0
Регистрация: 11.10.2014
Сообщений: 31
25.05.2015, 06:04  [ТС] 3
Это не правильно
0
lss
941 / 869 / 355
Регистрация: 10.10.2012
Сообщений: 2,706
25.05.2015, 08:47 4
Цитата Сообщение от Anvar2014 Посмотреть сообщение
Это не правильно
Почему неправильно? Только он один должен быть.

Добавлено через 2 минуты
Или оператор ввода и оператор вывода.
0
25.05.2015, 08:47
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.05.2015, 08:47
Помогаю со студенческими работами здесь

Перегрузка оператора ввода
Добрый день, есть вот такая штуковина: // в M.matrix лежат значения элементов матрицы //...

Перегрузка вывода и ввода
Здравствуйте прошу помочь ,написал программу в ней нужно перегрузить вывод и ввод ,как это можно...

Перегрузка оператора ввода
почему не работает следующий код? class obj { unsigned int book_id; string title; unsigned...

Перегрузка оператора ввода
Добрый вечер, уважаемые форумчане. Возник вопрос о перегрузке оператора ввода. Имеется класс...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru