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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
LexaB
0 / 0 / 0
Регистрация: 31.10.2011
Сообщений: 31
#1

Money - C++

29.11.2012, 14:17. Просмотров 243. Ответов 0
Метки нет (Все метки)

Создайте класс Money, в котором перегрузите арифметические
операции для работы с денежным форматом. Перегрузите два оператора
следующим образом:
double * Money //умножить число на деньги
double / Money //делить число на деньги
Эти операции требуют наличия дружественных функций, так как справа от оператора находится объект, а слева – обычно число. Убедитесь, что main()
позволяет пользователю ввести две денежные строки и число с плавающей
запятой, а затем корректно выполнить все семь арифметических действий с
соответствующими парами значений.

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
#include <stdio>
#include <conio>
#include <iostream>
#include <math>
using namespace std;
typedef unsigned int unit;
class TMoney
{ long double Summa; 
// вспомогательные приватные функции 
string toString() ;
long double round(const long double &r) 
{ long double t = fabs(r);
t = (t-floor(t)<0.5)?floor(t):ceil(t); 
return (r<0)?-t:t; 
} 
public: 
void Init(const long double &t); 
TMoney AddMoney(const TMoney &a); 
TMoney AddMoney(const long double &r);
TMoney SubtractMoney(const TMoney &b);
int CompareMoney(const TMoney &a); 
TMoney MultByNumber(const double &b); 
TMoney DevideByNum(const double &b); 
double DevideMoney(const TMoney &b); 
bool isNegative()
{ return (Summa<0); }
void ReadMoney() ;
void DisplayMoney(); } ;
// метод сравнения
 int TMoney::CompareMoney(const TMoney &a)
{ int sign = 0; 
if(Summa < a.Summa) sign = -1; 
else if (Summa > a.Summa) sign = 1;
return sign; }
// метод вычитания денежных сумм 
TMoney TMoney::SubtractMoney(const TMoney &b)
{ TMoney t=*this;
t.Summa -=b.Summa;
return t;
} 
// метод деления денежных сумм
double TMoney::DevideMoney(const TMoney &b)
{ return fabs(Summa)/fabs(b.Summa);
}
// метод деления на число 
 TMoney TMoney::DevideByNum(const double &b) 
{ TMoney t = *this;
if (b>0) t.Summa = round(Summa/b); 
return t; }
 
void TMoney::Init(const long double &t=0.0) 
{Summa = round(t*100);
}
// метод ввода денежных сумм
void TMoney::ReadMoney()
{
int k;
cout << "Rubli>"; cin >> Summa;
bool negative = (Summa<0);
Summa = floor(fabs(Summa)*100);
cout << "Kop>"; cin >> k;
if (k < 100) Summa+=k;
Summa = negative?-Summa: +Summa;
}
 
void main(){
 
TMoney metod;  metod.Init();
 
metod.ReadMoney();
 
metod.ReadMoney();
 
metod.Init();
 
 
 
getch();
 
 
}
Запускаются только 2 метода, ввод и инициализация, подскажите как запустить остальные.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.11.2012, 14:17     Money
Посмотрите здесь:

Класс Money - C++
Создать класс Money, разработав следующие элементы класса: Поля: int first;/ / номинал купюры int second; / / количество купюр ...

Создать класс Money - C++
Задача: Создать класс Money для работы с денежными суммами.Число должно быть представлено двумя полями: типом long для рублей и типом...

Реализовать класс money - C++
Номиналы российских рублей могут принимать значения 1, 2, 5, 10, 50, 100, 500, 1000, 5000. Копейки представить как 0.01 (1 копейка), 0.05...

Разработайте класс MONEY - C++
Задание 1: Разработка класса. Разработайте класс MONEY. Элемент класса: рубли; копейки. Методы: конструктор без...

Создать класс Money - C++
Создать класс Money, содержащий следующие члены класса: 1. Поля: int nominal - номинал купюры int amount - количество купюр 2....

Создать класс Money - C++
здравствуйте, нужно создать мини программку,на с++. Я учусь на первом курсе, к сожалению не очень сильно понимаю программирование, буду...

Создать класс Money и разработать указанные элементы класса - C++
Нужно написать программу за таким типом.

Создать структуру Money для работы с денежными суммами - C++
Люди, помогите, пожалуйста! Есть задача: Создать структуру Money для работы с денежными суммами. Число должно быть представлено двумя...

Разработал класс Money денежного счета, нужна критика и совет с функцией - C++
Доброго времени суток! Очень прошу помоши, прошу бегло взглянуть на мой гавнокод и посоветовать, до чего тут можно доебатся. Мой опыт...

Реализовать класс Money, используя класс Fraction - C++
// реализовать класс Money используя класс Fraction #include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;sstream&gt; #include...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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