-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathFracciones.cpp
100 lines (86 loc) · 2.09 KB
/
Fracciones.cpp
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
#include <iostream>
class Fraccion
{
private:
int numerador;
int denominador;
public:
Fraccion(int num,int den);
Fraccion operator +(Fraccion f2);
Fraccion operator -(Fraccion f2);
Fraccion operator *(Fraccion f2);
Fraccion operator /(Fraccion f2);
void imprime();
friend void operator <<(std::ostream &salida, Fraccion f);
friend void operator >>(std::istream &entrada, Fraccion &f);
};
void operator <<(std::ostream &salida, Fraccion f)
{
salida<<f.numerador<<"\n--"<<"\n"<<f.denominador<<"\n";
}
void operator >>(std::istream &entrada, Fraccion &f)
{
std::cout<<"numerador:";
entrada>>f.numerador;
std::cout<<"denominador:";
entrada>>f.denominador;
}
Fraccion::Fraccion(int num,int den)
{
this->numerador=num;
this->denominador=den;
}
Fraccion Fraccion::operator +(Fraccion f2)
{
Fraccion f{0,0};
f.numerador=(this->numerador*f2.denominador)+(this->denominador*f2.numerador);
f.denominador=this->denominador*f2.denominador;
return f;
}
Fraccion Fraccion::operator -(Fraccion f2)
{
Fraccion f{0,0};
f.numerador=(this->numerador*f2.denominador)-(this->denominador*f2.numerador);
f.denominador=this->denominador*f2.denominador;
return f;
}
Fraccion Fraccion::operator *(Fraccion f2)
{
Fraccion f{0,0};
f.numerador=(this->numerador*f2.numerador);
f.denominador=this->denominador*f2.denominador;
return f;
}
Fraccion Fraccion::operator /(Fraccion f2)
{
Fraccion f{0,0};
f.numerador=(this->numerador*f2.denominador);
f.denominador=this->denominador*f2.numerador;
return f;
}
void Fraccion::imprime()
{
std::cout<<this->numerador<<std::endl;
std::cout<<"--"<<std::endl;
std::cout<<this->denominador<<std::endl;
std::cout<<std::endl;
}
int main()
{
Fraccion f1{1,1};
std::cin>>f1;
std::cout<<f1;
Fraccion f2{1,1};
std::cin>>f1;
std::cout<<f1;
Fraccion f3{1,1};
f3=f1+f2;
std::cout<<f3;
f3=f1-f2;
std::cout<<f3;
f3=f1*f2;
std::cout<<f3;
f3=f1/f2;
std::cout<<f3;
return 0;
}