Ver Mensaje Individual
  #1 (permalink)  
Antiguo 25/10/2008, 14:36
Joaquin_Phi
 
Fecha de Ingreso: julio-2008
Mensajes: 18
Antigüedad: 15 años, 9 meses
Puntos: 0
Manejo de Excepciones

Agradeceria si resolvieran la siguiente duda:

Intentando comprender el Tema "Manejo de excepciones", he realizado el siguiente codigo:


Cita:
#include <iostream>

using namespace std;

int main() {

int a;
int x;

try{

for(a=5; a>= 0; a--){

x = 100/a;

cout<< x <<endl;
}}

catch(int c){

cout<<"Division entre cero"<<endl;
}
}
En espera que al llegar a la operaciòn entre cero, se genere una excepcion y aparezca el mensaje "Division entre cero". Sin embargo, esto no sucede solamente aparece 20, 25, 33, 50, 100 y despues aparecer un cuadro que dice:

"<nombre del programa> ha detectado un problema y debe cerrarse". Es decir, si se da el error por la division entre cero, pero no se genera lo que yo espero, que es la frase del "catch".

¿Talvez debo incluir la palabra "throw"?, si es asi, a donde se debe colocar. He probado colocandola asi:

throw x = 100/a;

Y efectivamente me genera la frase: "Division entre cero", pero no realiza los calculos anteriores.

Me parece, entonces, que no he comprendido correctamente el Tema, podria alguien porfavor explicar como se pude lograr que anta la division entre cero se publique la frase: "Division entre cero"

Gracias por la ayuda.