-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathFraccion.cpp
More file actions
80 lines (67 loc) · 1.61 KB
/
Fraccion.cpp
File metadata and controls
80 lines (67 loc) · 1.61 KB
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
/*
Definir un tipo abstracto para representar fracciones, con la siguiente interfaz:
*/
#include "Fraccion.h"
struct FraccionSt
{
int numerador;
int denominador;
};
// PROP: realiza el producto de dos numeros
int producto(int& a , int& b){
return (a*b);
}
int num(Fraccion& f){
return f->numerador;
}
int den(Fraccion& f){
return f->denominador;
}
Fraccion fraccion(int x, int y)
{
Fraccion f = new FraccionSt;
f->numerador = x;
f->numerador = y;
return f;
};
Fraccion sumar(Fraccion f1, Fraccion f2)
{
return(fraccion(producto(f2->denominador, f1->numerador)+
producto(f1->denominador, f2->numerador),
producto(f1->denominador, f2->denominador)
)
);
};
Fraccion restar(Fraccion f1, Fraccion f2)
{
return(fraccion(producto(f2->denominador, f1->numerador)-
producto(f1->denominador, f2->numerador),
producto(f1->denominador, f2->denominador)
)
);
};
Fraccion multiplicar(Fraccion f1, Fraccion f2)
{
return fraccion(producto(f1->numerador, f2->numerador),
producto(f1->denominador, f2->denominador)
);
};
Fraccion dividir(Fraccion f1, Fraccion f2)
{
return fraccion(producto(f1->numerador, f2->denominador),
producto(f1->denominador, f2->numerador)
);
};
void invertir(Fraccion& f1)
{
int aux = f1->numerador;
f1->numerador = f1->denominador;
f1->denominador = aux;
};
void simplificar(Fraccion& f1)
{
};
void destruir(Fraccion& f1)
{
delete f1;
};