Triangulo Tipo

7 respostas
A

Um exercicio pra definir que tipo de triangulo eh:

pelo que testei aqui creio que esta certo;....

e demorei pakas pa faze isso

;D

import javax.swing.JOptionPane;
 class Go{
      public static void main(String []args){
          String i1,i2,i3;
          double s1,s2,s3;
          
        
        i1 = JOptionPane.showInputDialog(null,
        "Um dos lados do triangulo: ","",JOptionPane.PLAIN_MESSAGE);
        s1 = Double.parseDouble(i1);
        
         i2 = JOptionPane.showInputDialog(null,
        "Um dos lados do triangulo: ","",JOptionPane.PLAIN_MESSAGE);
        s2 = Double.parseDouble(i2);
        
         i3 = JOptionPane.showInputDialog(null,
        "Um dos lados do triangulo: ","",JOptionPane.PLAIN_MESSAGE);
        s3 = Double.parseDouble(i3);
        
        if(s1 == s2 && s2 ==s3){
            JOptionPane.showMessageDialog(null,
        "Triangulo Equilátero!","",JOptionPane.PLAIN_MESSAGE);}
       
        
        else if (s1 != s2 && s2 != s3 && s1 != s3 ){
             JOptionPane.showMessageDialog(null,
        "Triangulo Escaleno!","",JOptionPane.PLAIN_MESSAGE);}

        else if(s1 == s2 || s2 == s3 || s1 == s3){
        JOptionPane.showMessageDialog(null,
        "Triangulo Isósceles!","",JOptionPane.PLAIN_MESSAGE);}

        else
        System.exit(0);     
            
        
    }
}

soh que kero utilizar o for pra pegar os valores direto

a ideia q tenho é essa
mas os parametros estao errados...

for (int i=0;i<3;i++)

        i1[i] = JOptionPane.showInputDialog(null,
        "Um dos lados do triangulo: ","",JOptionPane.PLAIN_MESSAGE);
        s1 = Double.parseDouble(i1);

fiz utilizanu o System.out.println soh q ae ocorre ao contrario o for consigo fazer mas n consigo fazer as comparaçoes vo postar depois

mas me ajudem com esse

7 Respostas

M

Bom, tem certeza quanto a ultíma condição??

s1 == s2 || s2 == s3 || s1 == s3
parte 1 = V parte 2=V parte3=V ==V
caso as 3 partes retornarem true, o triangulo seria equilatero n??

Usando estruturas IF fica melhor assim:

if(s1 == s2 && s2 ==s3){  
             JOptionPane.showMessageDialog(null,  
         "Triangulo Equilátero!","",JOptionPane.PLAIN_MESSAGE);}  
          
           
         else if (s1 != s2 && s2 != s3 && s1 != s3 ){  
              JOptionPane.showMessageDialog(null,  
         "Triangulo Escaleno!","",JOptionPane.PLAIN_MESSAGE);}  
   
         else {  
         JOptionPane.showMessageDialog(null,  
        "Triangulo Isósceles!","",JOptionPane.PLAIN_MESSAGE);}

no caso são só 3 possibilidades, equilátero, escaleno e isósceles.. portanto testando a veracidade de 2, vc obtem a da 3..., e o seu Else nunca aconteceria se você assumir esse racíocinio

com for pelo que entendi como vc queria fazer ficaria mais ou menos assim:

import javax.swing.JOptionPane;  
 class Go{  
       public static void main(String []args){  
            
           double lados[] = new double[3]; 
           
          for(int cont = 0; cont<3;cont++){
                double[cont] = Double.parseDouble(JOptionPane.showInputDialog(null,  
         "Digite o lado " + cont+1 + " do triangulo": ","",JOptionPane.PLAIN_MESSAGE));  
          }  
         
           
         if(lados[0] == lados[1] && lados[2] ==lados[1]){  
             JOptionPane.showMessageDialog(null,  
         "Triangulo Equilátero!","",JOptionPane.PLAIN_MESSAGE);}  
          
           
         else if (lados[0] != lados[1] && lados[1] != lados[2] && lados[0] != lados[2] ){  
              JOptionPane.showMessageDialog(null,  
         "Triangulo Escaleno!","",JOptionPane.PLAIN_MESSAGE);}  
   
         else{  
         JOptionPane.showMessageDialog(null,  
         "Triangulo Isósceles!","",JOptionPane.PLAIN_MESSAGE);}  
   

         System.exit(0);       
               
           
     }  
 }

Esperto ter ajudado.

A

Olah

s1 == s2 || s2 == s3 || s1 == s3

vc quis dizer se as tres condiçoes ae for verdade era pra retornar Equilatero
e nao Isosceles?

foi por isso q coloquei o ||(ou) pq se os tres lados for igual ,no primeiro if ele jah fala que eh Equilatero ae…

vou entender seu codigo aqui agora com as estruturas do for

vlews por ajudar

:smiley:

A
for ( int i=1;i<4;i++){
         double  [i] = Double.parseDouble(JOptionPane.showInputDialog(null,
         "Lado do triangulo" + i+1 + "do triangulo: ","",JOptionPane.PLAIN_MESSAGE));
        }

na linha 2 tah dando erro ‘]’ expected…

betoecomp

com certeza vai dar erro…
cade o nome da variavel???

double ???o que??? [i] = Double.parseD....
A
A

entao pensei nisso
a coloquei “double lados[i] = Double.parse Double…”

e aparece a mesma coisa…

A

?

Criado 19 de abril de 2008
Ultima resposta 23 de abr. de 2008
Respostas 7
Participantes 3