Autor
|
Tema: Calculadora (Leído 3,591 veces)
|
bryanrz96
Desconectado
Mensajes: 17
|
Bueno, quisiera una ayuda, no me da el resultado de la division esta calculadora, le falta una funcion, no se cual es,..quiero el resultado con dos decimales. ademas quisiera que cuando divida para cero me imprima: imposible realizar operacion. disculpen el idioma, estudio en italiano. #include <iostream> using namespace std; int somma(int a, int b) { int ret; ret = a + b; return ret; } int sottrai(int a, int b) { int ret; ret = a - b; return ret; } int molt(int a, int b) { int ret; ret = a * b; return ret; } double dividi(int a, int b) { double ret; ret = a/b; return ret; } int main() { int a,b; char op; cout<<"Inserisci il primo numero:"; cin>>a; cout<<"Inserisci il secondo numero:"; cin>>b; cout<<"Scegli l'operatore: "; cin>>op; switch(op) { case '+':{ cout<<"risultato:"<<a/b<<endl; break; } case '-':{ cout<<"risultato:"<<a-b<<endl; break; } case '*':{ cout<<"risultato:"<<a*b<<endl; break; }case '/':{ cout<<"risultato:"<<a/b<<endl; break; } } return 0; }
Mod: Los códigos deben ir en etiquetas GeSHi
|
|
« Última modificación: 28 Octubre 2015, 20:10 pm por bryanrz96 »
|
En línea
|
|
|
|
engel lex
|
la división de 2 enteros da por resultado un entero, si quieres que esto no sea así tienes que usar casting de variables ret = (double)a/b;
esto tornará "a" tipo double antes de calcularlo, por lo tanto el resultado es el tipo de varibale de mayor precisión sobre la división entre 0 tienes 2 caminos, el simple if(b==0) imprimir ("no puedes dividir entre cero")
el complicado, manejo de excepciones try - catch
|
|
|
En línea
|
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
|
|
|
bryanrz96
Desconectado
Mensajes: 17
|
la división de 2 enteros da por resultado un entero, si quieres que esto no sea así tienes que usar casting de variables ret = (double)a/b;
esto tornará "a" tipo double antes de calcularlo, por lo tanto el resultado es el tipo de varibale de mayor precisión sobre la división entre 0 tienes 2 caminos, el simple if(b==0) imprimir ("no puedes dividir entre cero")
el complicado, manejo de excepciones try - catch Disculpa donde debo poner ret = (double)a/b;
No me sale :'(
|
|
« Última modificación: 28 Octubre 2015, 20:32 pm por bryanrz96 »
|
En línea
|
|
|
|
engel lex
|
en la división, linea 25
|
|
|
En línea
|
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
|
|
|
bryanrz96
Desconectado
Mensajes: 17
|
en la división, linea 25
Ya lo puse, pero no me viene el resultado, si divido 5/2 me da 2. que puedo hacer?
|
|
|
En línea
|
|
|
|
engel lex
|
muestra como tienes el código en este momento
|
|
|
En línea
|
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
|
|
|
bryanrz96
Desconectado
Mensajes: 17
|
muestra como tienes el código en este momento
El codigo esta asi: #include <iostream> using namespace std; int somma(int a, int b) { int ret; ret = a + b; return ret; } int sottrai(int a, int b) { int ret; ret = a - b; return ret; } int molt(int a, int b) { int ret; ret = a * b; return ret; } double dividi(int a, int b) { double ret; ret = (double)a/b; return ret; } int main() { int a,b; char op; cout<<"Inserisci il primo numero:"; cin>>a; cout<<"Inserisci il secondo numero:"; cin>>b; cout<<"Scegli l'operatore: "; cin>>op; switch(op) { case '+':{ cout<<"risultato:"<<a/b<<endl; break; } case '-':{ cout<<"risultato:"<<a-b<<endl; break; } case '*':{ cout<<"risultato:"<<a*b<<endl; break; }case '/':{ cout<<"risultato:"<<a/b<<endl; break; } } return 0; }
Creo que luego del int main debo declarar una variable, pero no se cual... y para que me imprima "no es posible efectuar la operacion" cuando divido para cero no se donde poner el If para que actue.
|
|
|
En línea
|
|
|
|
engel lex
|
mira tu switch switch(op) { case '+':{//cuando es "+" divides? cout<<"risultato:"<<a/b<<endl;//divides directamente en lugar de usar la función? break; }
|
|
|
En línea
|
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
|
|
|
bryanrz96
Desconectado
Mensajes: 17
|
mira tu switch switch(op) { case '+':{//cuando es "+" divides? cout<<"risultato:"<<a/b<<endl;//divides directamente en lugar de usar la función? break; }
Si, me he confundido con ese paso. que funcion puedo usar en ves de la que tengo establecida? switch(op) { case '+':{ cout<<"risultato:"<<a+b<<endl; break; }
|
|
|
En línea
|
|
|
|
engel lex
|
tu creaste una serie de funciones con un fin, ese fin es usarlas ej case '/':{ cout<<"risultato:"<<dividi(a,b)<<endl; break; }
|
|
|
En línea
|
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Calculadora
Electrónica
|
Neobius
|
2
|
4,788
|
11 Noviembre 2005, 17:24 pm
por Neobius
|
|
|
Calculadora
.NET (C#, VB.NET, ASP)
|
kokokoko
|
3
|
3,028
|
17 Enero 2012, 17:41 pm
por kokokoko
|
|
|
calculadora en c++
Programación C/C++
|
anarchy2k1
|
4
|
9,057
|
25 Marzo 2012, 21:03 pm
por Don Pollo
|
|
|
CALCULADORA
Java
|
Gabrieldeus
|
3
|
2,881
|
12 Junio 2016, 15:19 pm
por DarK_FirefoX
|
|
|
Calculadora
Programación C/C++
|
Ramses_977Alejandre
|
1
|
1,847
|
20 Noviembre 2017, 18:15 pm
por engel lex
|
|