Domingo 15 de Diciembre de 2024, 11:52
SoloCodigo
Bienvenido(a),
Visitante
. Por favor,
ingresa
o
regístrate
.
¿Perdiste tu
email de activación?
Inicio
Foros
Chat
Ayuda
Buscar
Ingresar
Registrarse
SoloCodigo
»
Foros
»
Programación General
»
C/C++
(Moderador:
Eternal Idol
) »
Problema Con C++
« anterior
próximo »
Imprimir
Páginas: [
1
]
Autor
Tema: Problema Con C++ (Leído 1755 veces)
hdtano
Nuevo Miembro
Mensajes: 3
Problema Con C++
«
en:
Domingo 4 de Enero de 2004, 00:03 »
0
Bueno, despues de 6 meses, ahora me decidi a agarrar enserio C++, ,el tema es el siguiente, me olvide, como hacer para que al final de la aplicacion le preguunte al usuario si quiere repetir alguna otra operacion. Y comience todo de nuevo. Ya se que es muy estupida mi duda, pero me olvide
Aca dejo el codigo, probe con un do while, pero cuando le doy a 'Y', me hace un bucle interminable, y pasa la pantalla a full.
Aca dejo el codigo.
#include <iostream>
#include <stdlib.h>
using namespace std;
int main()
{
float num1, num2, resul;
char operacion;
cout << "\t\t\t***************************\n";
cout << "\t\t\t********CALCULADORA********\n";
cout << "\t\t\t***************************\n\n";
cout << "\t\t\t* Introduzca el primero numero: ";
cin >> num1;
cout << "\t\t\t* Introduzca el segundo numero: ";
cin >> num2;
cout << "\t\t\t* Que operacion desea realizar: ";
cin >> operacion;
switch(operacion)
{
case 'm':
resul = num1 * num2;
cout << "\t\t\t* El resultado fue: " << resul << endl;
break;
case 'd':
resul = num1 / num2;
cout << "\t\t\t* El resultado fue: " << resul << endl;
break;
case 's':
resul = num1 + num2;
cout << "\t\t\t* El resultado fue: " << resul << endl;
break;
case 'r':
resul = num1 - num2;
cout << "\t\t\t* El resultado fue: " << resul << endl;
break;
}
system("pause");
return 0;
}
Salu2 y gracias.
Tweet
hdtano
Nuevo Miembro
Mensajes: 3
Re: Problema Con C++
«
Respuesta #1 en:
Lunes 5 de Enero de 2004, 00:38 »
0
Bueno, tengo el siguiente problema, ante todo, ahora estoy jugando un poco con funciones, ,cambie todo, el tema es que mi idea es si el usuario al ingresar el primer numero pone -999 (momentaneamente), el programa tendria que salir, pero ocurre con cualquier numero que ponga, ya no se me ocurre que puede ser.
Salu2
********************************************************************
#include <iostream>
#include <C:\Projecto1\Funciones.h>
using namespace std;
int main()
{
float a, b, resul;
string multi, division, suma, resta;
int respuesta;
char formulas;
do
{
cout << "Ingrese un numero(-999 para salir): ";
cin >> a;
if (a == -999);
{ break; }
cout << "Ingrese otro numero: ";
cin >> b;
cout << "Que operacion quiere realizar: ";
cin >> formulas;
switch(formulas)
{
case 'S': case 's':
resul = Suma(a,B);
break;
case 'R': case 'r':
resul = Resta(a,B);
break;
case 'D': case 'd':
resul = Division(a,B);
break;
case 'M': case 'm':
resul = Multi(a,B);
break;
}
cout << "La formula dio: "<< resul << endl;
}while ( a != -999);
return 0;
}
© Jonathan ©
Moderador
Mensajes: 1671
Nacionalidad:
Re: Problema Con C++
«
Respuesta #2 en:
Lunes 5 de Enero de 2004, 13:34 »
0
Hola, segun creo, cualquier numero que sea negativo te ejecutaria lo que esta dentro del bucle, porque no intentas comparar pero con caracteres:
char a;
/* antes tenes que leer el teclado */
if(a != "-999")
Lo mismo con el bucle while, creo que al ser un tipo de entero negativo el if trabaja mal, no se realmente porque, solo se que las veces que he intentado hacer eso nunca logro hacerlo andar. Prueba como te dije, buscare alguna solucion mas eficaz. Saludos
EINSTEC Tecnología
«La única fuente del conocimiento es la experiencia.»
«Lo importante es no dejar de hacerse preguntas.»
carmamezo
Miembro MUY activo
Mensajes: 232
Re: Problema Con C++
«
Respuesta #3 en:
Lunes 5 de Enero de 2004, 18:58 »
0
Si el código que has presentado en la página es el correcto hay un fallo en la sentencia
if (a == -999);
El punto y coma del final lo tienes que eliminar, si aun así no funciona en vez de hacer break haz un return.
Un saludo.
No hay tonto más molesto que el ingenioso.
hdtano
Nuevo Miembro
Mensajes: 3
Re: Problema Con C++
«
Respuesta #4 en:
Lunes 5 de Enero de 2004, 21:48 »
0
hice lo que me dijiste carmamezo, pero me hace un bucle infinito.
Y despues lo que dice jonathan, no lo puedo hacer, ya que a y b, los uso para almacenar los numeros float que el usuario ingrese.
Salu2
© Jonathan ©
Moderador
Mensajes: 1671
Nacionalidad:
Re: Problema Con C++
«
Respuesta #5 en:
Lunes 5 de Enero de 2004, 22:13 »
0
Hola, pues te entiendo, como consejo seria bueno que en vez de poner case 's': case 'S'...dos veces pogas:
case 's'|'S': /* seria lo mismo pero queda mejor */
Te pido si es posible, que postees el codigo de funcion.h, ya que segun parece ahi esta el problema, aveces pasa que la funcion a la que llamas te retorna un valor que hacer que el bucle desde donde se llama la llame una y otra vez... espero tu code. Saludos
EINSTEC Tecnología
«La única fuente del conocimiento es la experiencia.»
«Lo importante es no dejar de hacerse preguntas.»
carmamezo
Miembro MUY activo
Mensajes: 232
Re: Problema Con C++
«
Respuesta #6 en:
Miércoles 7 de Enero de 2004, 19:53 »
0
Prueba a ver este código si te funciona, he realizado algún que otro cambio sin importancia... Si funciona sigue a partir de él realizando cada vez cosas más complejas. Un saludo
Código: Text
#include <iostream>
#include <C:\Projecto1\Funciones.h>
#include <stdlib.h> //funcion tolower
using namespace std;
int main()
{
float a, b, resul;
char formulas;
do
{
cout << "Ingrese un numero(-999 para salir): ";
cin >> a;
if (a != -999);
{
cout << "Ingrese otro numero: ";
cin >> b;
cout << "Que operacion quiere realizar: ";
cin >> formulas;
formulas=tolower(formulas); //convierte el texto a minusculas
switch(formulas)
{
case 's':
resul = a+b;
break;
case 'r':
resul = a-b;
break;
case 'd':
resul = a/b;
break;
case 'm':
resul = a*b;
break;
}
cout << "La formula dio: "<< resul << endl;
}
}while ( a != -999);
return 0;
}
No hay tonto más molesto que el ingenioso.
Imprimir
Páginas: [
1
]
« anterior
próximo »
SoloCodigo
»
Foros
»
Programación General
»
C/C++
(Moderador:
Eternal Idol
) »
Problema Con C++