import javax.swing.*;
public class TestaEq2Grau {
public static void main(String[] args){
EquacaoSegundoGrau x = new EquacaoSegundoGrau ();
String aux = JOptionPane.showInputDialog ( "Insira o A da equação do 2º grau ");
x.setA ( Integer.parseInt (aux) );
// Obs.1: Considere que o usuário fornecerá o valor de a diferente de zero.
if ( x.getA() !=0) {
aux = JOptionPane.showInputDialog ( "Insira o B da equação do 2º grau " );
x.setB ( Integer.parseInt (aux) );
aux = JOptionPane.showInputDialog ( "Insira o C da equação do 2º grau " );
x.setC ( Integer.parseInt (aux) );
JOptionPane.showMessageDialog ( null, x.delta() );
}
else if ( x.getA() == 0 ) {
JOptionPane.showMessageDialog ( null, "insira o A diferente de 0 ","BURRO" , JOptionPane.INFORMATION_MESSAGE );
}
}
}
Try catch - resolvido
9 Respostas
jovem…normalmente usamos o bloco try/catch para tratar exception
Caso vc veja a possibilidade de ocorrer erros em sua rotina e quer fazer um tratamento, use-o!
taa.mais como eu faço ?? ainda nãoa prendi na faculdade. quero fazer por conta propria.
Já que quer aprender veja este tutorial… é bem simples!
http://www.arquivodecodigos.net/arquivo/visualizar_dica.php?qual_dica=2133
Mas resumidamente é assim:
try{
// código que pode provocar erros
}
catch(Tipo_Exceção nome){
// tratamento do erro
}
import javax.swing.*;
public class TestaEq2Grau {
public static void main(String[] args){
String aux = "";
EquacaoSegundoGrau x = new EquacaoSegundoGrau ();
try {
aux = JOptionPane.showInputDialog ( "Insira o A da equação do 2º grau ");
x.setA ( Integer.parseInt (aux) );
// Obs.1: Considere que o usuário fornecerá o valor de a diferente de zero.
if ( x.getA() ==0 ){
JOptionPane.showMessageDialog ( null, "insira o A diferente de 0 ","BURRO" , JOptionPane.INFORMATION_MESSAGE );
}
else {
aux = JOptionPane.showInputDialog ( "Insira o B da equação do 2º grau " );
x.setB ( Integer.parseInt (aux) );
aux = JOptionPane.showInputDialog ( "Insira o C da equação do 2º grau " );
x.setC ( Integer.parseInt (aux) );
JOptionPane.showMessageDialog ( null, x.delta() );
}
}catch(Exception e){
JOptionPane.showMessageDialog ( null,"erro de leitura");
}
}
}
mais ou menos isso ?
Mais ou menos. podia remover por completo os ‘ifs’, no caso quando ele fizesse a divisão por zero iria cair no catch, e a mensagem de erro ficaria lá…
Mais ou menos assim:
import javax.swing.*;
public class TestaEq2Grau {
public static void main(String[] args){
String aux = "";
EquacaoSegundoGrau x = new EquacaoSegundoGrau ();
try {
aux = JOptionPane.showInputDialog ( "Insira o A da equação do 2º grau ");
x.setA ( Integer.parseInt (aux) );
aux = JOptionPane.showInputDialog ( "Insira o B da equação do 2º grau " );
x.setB ( Integer.parseInt (aux) );
aux = JOptionPane.showInputDialog ( "Insira o C da equação do 2º grau " );
x.setC ( Integer.parseInt (aux) );
JOptionPane.showMessageDialog ( null, x.delta() );
}catch(Exception e){
JOptionPane.showMessageDialog ( null, "insira o A diferente de 0 ","BURRO" , JOptionPane.INFORMATION_MESSAGE );
/* Obs: Caso queira colocar mais erros o bloco catch pode ser repetido sem problemas */
}
}
}
Se realmente fosse para ele tratar Exeception , vc deveria tratar em um nivel mais baixo como tratar diretamente
por exemplo ArithmeticException .
Eh nao generelizar com o Exeception .
não funciono inseri o zero e não de erro.
Anh sim, no codigo que está ali, está chamando sua função que calcula o Delta… e pelo que eu me lembro o valor de A no delta pode ser 0… vai dar pau na divisão, se ‘a’ for 0, vai ficar dividindo por 0.
Estou querendo fazer um try catch para que nao possar
remover um arquivo referenciado em outra tabela, se alguem poder me
ajudar fico muito grato?