GUJ Discussões   :   últimos tópicos   |   categorias   |   GUJ Respostas

Exercício Triângulo algoritmo


#1

Estou tento uma certa dificuldade de passa um exercício que resolvi em portunhol por entender somente um pouco de java.
quem poder me ajudar ficaria muito agradecido, irei passa o algoritmo resolvido por mim.

inicio
inteiro A, B, C;
leia (A, B, C);
se ((A < B = C) E (B < A + C) E (C < A + B))
então
se ((A =B) E (B = C))
então
escreva ("Triangulo Equilátero);
senão
se ((A = B) OU (A = C) OU (B = C)
então
escreva ("Triângulo Isósceles");
senão
escreva ("Triângulo Escaleno");
fimse;
fimse;
senão
escreva ("Estes valores não formam um triângulo");
fimse;
fim.

eu uso NetBeans e estou tendo um certo dificuldade em executar o
if (( A < B + C) AND (B < A + C) AND (C < A +B))

talvez seja porque sou iniciante mesmo na linguagem, mas alguém poderia me mostra como ficaria em algoritmo em java?

Obrigado


#2

if ((A < B + C) && (B < A + C) && (C < A +B)) {
    // ...
}

#3

ta certo fiz tudo que você falou deu certo sim cara, mas como disse sou iniciante na linguagem dai eu coloquei logo assim e deu errado

 if ((A < B + C) && (B < A + C) && (C < A + B))
{
if ((A = B) &&  (B = C))
{
System.out.println("Triângulo Equilâtero");
}
}

deu erro no segundo IF, e mais uma duvida como ficaria OR aqui em java?

Obrigado


#4

A comparação em JAVA é com ==

if ((A == B) &&  (B == C))

O simbolo de OR é ||


#5

certo vamos la novamente, eu troquei o AND por && certo?
agora coloquei OR e deu erro no meu condigo!

com base no meu primeiro algoritmo em portugol, ele estaria ficando assim!

if ((A < B + C) && (B < A + C) && (C < A + B))
{
if ((A == B) && (B == C))
{
System.out.println("Triângulo Equilátero");
else
if ((A ==B) OR (A == C) OR (B == C)
{
System.out.println("Triângulo Isósceles");
}
}
}

ressaltando estou usando NetBeans.
onde eu coloquei o ELSE esta correto?
e o OR aqui não esta funcionando.

Obrigado.


#6

desculpe a ignorância agora que eu vi o OR é ||


#7

É agora o erro só esta sendo acho na organização do algoritmo.
quando executei meu programa coloquei o primeiro dado que era pra aparecer "Triângulo Equilátero" até ai tudo bem, ja quando fui executar o segundo "Triângulo Isósceles" ele não apareceu, seria por causa do ELSE estar em lugar errado?

alguém poderia me da uma ajuda nessa parte?

Obrigado


#8

Obrigado Pessoal, meu problema ja foi resolvido

E agradeço pela a ajuda de cada um.

Obrigado
Jadir


#9

mostre seu código aqui pra gente ver como tá

Edit: Tópico resolvido então rs :wink:


#10

public class Triangulo {
    private int A;
    private int B;
    private int C;
    public Triangulo(int A, int B, int C)
    {
        this.A = A;
        this.B = B;
        this.C = C;
    }
    public void qualTriangulo()
    {
        if ((A < B + C) && (B < A + B) && (B < A +B))
        {
            if ((A == B) && (A == C))
            {
                System.out.println("Triângulo Equilátero");
                System.out.println("\n");
            }
 else
     if((A == B) || (A == C) || (B == C))
            {
                System.out.println("Triângulo Isósceles");
                System.out.println("\n");
            }
 else
     {
            System.out.println("Triângulo Escaleno");
            System.out.println("\n");
            }
        }
    }
}

fiz em modo construtor porque ja aprendi a fazer desse jeito, e como faz coloca tópico resolvido, não entendi muito bem o que você falou!


#11

Só irá existir um triângulo se, somente se, os seus lados obedeceram à seguinte regra: um de seus lados deve ser maior que o valor absoluto (módulo) da diferença dos outros dois lados e menor que a soma dos outros dois lados.

if ((A > B + C) && (B > A + C) && (C > A + B))

#12