package com.jlm.ccb.ejercicios.capitulo4; import java.util.Scanner; /** * Clase encargada de saber si tres lados podrían * formar un triángulo rectángulo. * Ejercicio 4.36 * @author LorettoTG * @version 1.0 */ public class TrianguloRectangulo { /** * Método encargado de saber si es un triángulo * rectángulo. */ public void esTrianguloRectangulo() { //Se crea un objeto Scanner para obtener la entrada //de datos del usuario. Scanner entrada = new Scanner(System.in); System.out.println("Deme el primer lado: "); double primerLado = entrada.nextDouble(); System.out.println("Deme el segundo lado: "); double segundoLado = entrada.nextDouble(); System.out.println("Deme el tercer lado: "); double tercerLado = entrada.nextDouble(); if ( primerLado < 0 || segundoLado < 0 || tercerLado < 0) { System.out.println("Los tres lados deben ser mayores a cero"); } else { boolean primerIntento = cumplePitagoras(primerLado, segundoLado, tercerLado); boolean segundoIntento = cumplePitagoras(segundoLado, tercerLado, primerLado); boolean tercerIntento = cumplePitagoras(tercerLado, primerLado, segundoLado); //Si cumple el teorema de pitágoras en cualquier combinación //entonces podría ser un triángulo rectángulo. if(primerIntento || segundoIntento || tercerIntento) { System.out.println("Podría ser un triangulo rectangulo."); } else { System.out.println("No podría ser un triangulo rectangulo."); } } } /** * Método encargado de ver si cumple con el teorema * de pitágoras. * @param catetoOpuesto double con el cateto opuesto. * @param catetoAdyacente double con el cateto adyacente. * @param hipotenusa double con la hipotenusa. * @return resultado true si cumple con el teorema de * lo contrario false. */ public boolean cumplePitagoras(double catetoOpuesto, double catetoAdyacente, double hipotenusa) { double c1 = catetoOpuesto * catetoOpuesto; double c2 = catetoAdyacente * catetoAdyacente; double h = hipotenusa * hipotenusa; if (h == (c1+c2)) { return true; } else { return false; } } /** * Punto de entrada a la clase y a la aplicación. * @param args matriz de argumentos de cadena. */ public static void main(String[] args) { //El operador new es el encargado de crear instancias de //una clase, es decir los objetos que tienen las características //de la clase. El operador new de Java es capaz de reservar la //memoria para un objeto de este tipo sabiendo los atributos que //tiene según la definición de la clase. TrianguloRectangulo trianguloRectangulo = new TrianguloRectangulo(); trianguloRectangulo.esTrianguloRectangulo(); } }
Un blog dedicado a los bytes, al lenguaje java y diferentes frameworks que se emplearan poco a poco.
martes, 23 de agosto de 2011
Como Programar en Java: Ejercicio 4.36
Aquí esta el ejercicio 4.36 de Como Programar en Java séptima edición.
Suscribirse a:
Enviar comentarios (Atom)
No hay comentarios:
Publicar un comentario