-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathoperacion.cpp
71 lines (57 loc) · 1.65 KB
/
operacion.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
#include <iostream>
#include "operacion.h"
#include <math.h>
using namespace std;
Operacion::Operacion(){}
Operacion::Operacion(float operando1, float operando2, char operador){
setOperando1(operando1);
setOperando2(operando2);
setOperador(operador);
setResultado(crearResultado(operando1, operando2, operador));
}
void Operacion::setOperando1(float operando1){
this->operando1 = operando1;
}
void Operacion::setOperando2(float operando2){
this->operando2 = operando2;
}
void Operacion::setOperador(char operador){
this->operador = operador;
}
void Operacion::setResultado(string resultado){
this->resultado = resultado;
}
float Operacion::getOperador1(){
return operando1;
}
float Operacion::getOperador2(){
return operando2;
}
char Operacion::getOperador(){
return operador;
}
string Operacion::getResultado(){
return resultado;
}
string Operacion::getOperacion(){
return to_string(operando1) +" " + operador +" " + to_string(operando2);
}
string Operacion::crearResultado(float operando1, float operando2, char operador){
float resultado;
switch(operador){
case '+': resultado = operando1 + operando2;
break;
case '-': resultado = operando1 - operando2;
break;
case '*': resultado = operando1 * operando2;
break;
case '/': resultado = operando1 / operando2;
break;
case '%': resultado = fmod(operando1,operando2);
break;
}
return to_string(resultado);
}
string Operacion::toString(){
return to_string(operando1) +" " + operador +" " + to_string(operando2) +" = "+ resultado;
}