Tema destacado: Deseas probar algunas mejoras a la interfaz del foro? Prueba cake! acerca de
Autor
|
Tema: ayuda a desarrollar programa (Leído 2,409 veces)
|
jugran28
Desconectado
Mensajes: 14
|
/ programa que calcula el area perimetro de un rectnagulo triangulo y circulo usando metodos y debe ser intercativo para salir del programa debe escirbir la letra N de preferencia aca solo me falta que cuando presiono la letra N me tiene que salir saludos package proareaperec; import java.io.*; public class Main { static double TrianguloP(double base, double hal){ double P,Hipo; Hipo = Math.sqrt(Math.pow(base,2)+Math.pow(hal,2)); P=base+hal+Hipo; return P; } static double RectanguloP(double base, double hal){ double P; P=base*2+hal*2; return P; } static double CirculoP(double r, double PI=3.1416){ double A, double PI=3.1416, double r; P=(PI*r*r); return P; } static double TrianguloA(double base, double hal){ double A; A=(base*hal)/2; return A; } static double RectanguloA(double base, double hal){ double A; A=base*hal; return A; } static double CirculoAre(double r, double PI=3.1416){ double A, double PI=3.1416, double r; A=(PI*r*r); return A; } public static void main(String[] args)throws IOException { System.out.println("Ingrese un numero "); System.out.println("1. Calcular el Perimetro del Triangulo "); System.out.println("2. Calcular el Perimetro del Rectangulo"); System.out.println("3. Calcular el Area del Rectangulo"); System.out.println("4. Calcular el Area del Rectangulo"); System.out.println("5. Calcular el Perimetro del Circulo"); System.out.println("6. Calcular el Perimetro del Circulo"); System.out.println("N. Salir del programa"); // aca me falta programar al presionar la letra N debe de salir del programa System.out.println("Ingrese un numero = "); BufferedReader dato1 = new BufferedReader(new InputStreamReader(System.in)); int Z = Integer.valueOf(dato1.readLine().trim()).intValue(); switch(Z) { case 1: { System.out.println("Ingrese la Base = "); BufferedReader dato2 = new BufferedReader(new InputStreamReader(System.in)); double X = Double.valueOf(dato2.readLine().trim()).doubleValue(); System.out.println("Ingrese la Altura = "); BufferedReader dato3 = new BufferedReader(new InputStreamReader(System.in)); double Y = Double.valueOf(dato3.readLine().trim()).doubleValue(); System.out.println("Perimetro del Triangulo ="); System.out.println(TrianguloP(X,Y)); System.out.println("Area del Triangulo ="); System.out.println(TrianguloA(X,Y)); break; } case 2: { System.out.println("Ingrese la Base = "); BufferedReader dato2 = new BufferedReader(new InputStreamReader(System.in)); double X = Double.valueOf(dato2.readLine().trim()).doubleValue(); System.out.println("Ingrese la Altura = "); BufferedReader dato3 = new BufferedReader(new InputStreamReader(System.in)); double Y = Double.valueOf(dato3.readLine().trim()).doubleValue(); System.out.println("Perimetro del Reactangulo ="); System.out.println(RectanguloP(X,Y)); System.out.println("Area del Reactangulo ="); System.out.println(RectanguloA(X,Y)); break; } case 3:{ System.out.println("Ingrese la Base = "); BufferedReader dato2 = new BufferedReader(new InputStreamReader(System.in)); double X = Double.valueOf(dato2.readLine().trim()).doubleValue(); System.out.println("Ingrese la Altura = "); BufferedReader dato3 = new BufferedReader(new InputStreamReader(System.in)); double Y = Double.valueOf(dato3.readLine().trim()).doubleValue(); System.out.println("Perimetro del Circulo ="); System.out.println(CirculoP(X,Y)); System.out.println("Area del Reactangulo ="); System.out.println(CirculoAre(X,Y)); break; } default:{ System.out.println("Valor no Valido"); break; } } } }
|
|
|
|
|
En línea
|
|
|
|
»~^~«CkNU!»~^~«
Desconectado
Mensajes: 79
|
No sé bien QUE problema tenés con la N, si podés explicate un poco más. Hay un par de cosas que tenés que arreglar: 1 - Poner un Try para evitar que cuando presiones la N o cualquier letra la función intValue no te mate el programa con una excepción. (ver estructura Try-Catch) 2 - Disponer el menú en un while infinito que salga al presionar la tecla N. Tratá de resolver estas 2 cosas y estás pronto. No es dificil, pero está bueno que trates de resolverlo solo.  Saludos.
|
|
|
|
|
En línea
|
»~^~«ChiCkENURiNE»~^~«
|
|
|
bug_over
Desconectado
Mensajes: 173
mv Linux GNU/linux
|
Uno parecido import java.io.*;
class CurMat{ public static void main(String args[]){ InputStreamReader isr; isr = new InputStreamReader(System.in); BufferedReader br; br = new BufferedReader(isr); String sNum; Double d; int iOpcn, iNum, iRes, iCont, iNum2, iDD, iMM, iAAAA; double dNum1, dNum2, dNum3; iOpcn = -1; char cImPar; do{ try{ System.out.println("-----------------------------------"); System.out.println(" 1. Calcular el area de un triangulo"); System.out.println(" 2. Calcular el area de un trapecio"); System.out.println(" 3. Decir si un numero es par o impar"); System.out.println(" 4. Obtener el valor absoluto de un numero"); System.out.println(" 5. Convertir de grados centigrados a grados kelvin"); System.out.println(" 6. Convertir de grados centigrados a grados farenheit"); System.out.println(" 7. Calcular la sumatoria de 'n' numeros"); System.out.println(" 8. Calcular la media aritmetica de 'n' numeros"); System.out.println(" 9. Desplegar la tabla del 7"); System.out.println("10. Calcular el volumen de una esfera"); System.out.println("11. Desplegar tabla de multiplicar ( 1 al 10 )"); System.out.println("12. Mostrar la edad a partir del año de nacimiento"); System.out.println("13. Mostrar si es mayor de edad o no partir del año de nacimiento"); System.out.println("14. Sumatoria a partir de dos numeros dados"); System.out.println("15. Leer numeros pares"); System.out.println("16. Leer tres numeros y decir cual es el menor"); System.out.println("17. Desplegar numeros del 1 al 100 y del 100 al 1 simultaneamente"); System.out.println("18. Suma, Resta, Multiplicacion y Division"); System.out.println("19. Recibir DD/MM/AA y mostrar fecha en formato largo"); System.out.println(" 0. Terminar"); System.out.println("-----------------------------------"); System.out.print("Teclea el numero de la opcion que desees: "); iOpcn = Integer.parseInt( br.readLine() ); System.out.println("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n"); System.out.println("\n*----------------------------------------------*");
switch ( iOpcn ){ case 1: // Calcular el area de un triangulo System.out.println("* CALCULO DEL AREA DE UN TRIANGULO *"); System.out.println("*----------------------------------------------*"); System.out.print("Valor de la base: "); d = new Double( br.readLine() ); dNum1 = d.doubleValue(); System.out.print("Valor de la altura: "); d = new Double( br.readLine() ); dNum2 = d.doubleValue(); System.out.println("El area del triangulo es: " + ( ( dNum1 * dNum2 ) / 2 ) ); break; case 2: // Calcular el area de un trapecio System.out.println("* CALCULO DEL AREA DE UN TRAPECIO *"); System.out.println("*----------------------------------------------*"); System.out.print("Valor de la base mayor: "); d = new Double( br.readLine() ); dNum1 = d.doubleValue(); System.out.print("Valor de la base menor: "); d = new Double( br.readLine() ); dNum2 = d.doubleValue(); System.out.print("Valor de la altura: "); d = new Double( br.readLine() ); dNum3 = d.doubleValue(); System.out.println("El area del trapecio es: " + ( ( ( dNum1 + dNum2 ) * dNum3 ) / 2 ) ); break; case 3: // Decir si un numero es par o impar System.out.println("* DECIR SI UN NUMERO ES PAR O IMPAR *"); System.out.println("*----------------------------------------------*"); System.out.print("Teclea un numero: "); d = new Double( br.readLine() ); dNum1 = d.doubleValue(); if ( ( ( dNum1 < 0 ) ? dNum1 * -1 : dNum1 ) % 2 == 1 ) System.out.println("El numero " + dNum1 + " es impar" ); else System.out.println("El numero " + dNum1 + " es par" ); break; case 4: // Obtener el valor absoluto de un numero System.out.println("* VALOR ABSOLUTO DE UN NUMERO *"); System.out.println("*----------------------------------------------*"); System.out.print("Teclea un numero: "); d = new Double( br.readLine() ); dNum1 = d.doubleValue(); dNum2 = ( dNum1 < 1 ) ? dNum1 * -1 : dNum1; System.out.println("El valor absoluto de " + dNum1 + " es " + dNum2 ); break; case 5: // Convertir de grados centigrados a grados kelvin System.out.println("* CONVERSION DE GRADOS CENTRIGRADOS A KELVIN *"); System.out.println("*----------------------------------------------*"); System.out.print("Teclea el valor en grados centigrados: "); d = new Double( br.readLine() ); dNum1 = d.doubleValue(); System.out.println( dNum1 + " grados Centigrados equivalen a " + ( dNum1 + 273 ) + " grados Kelvin" ); break; case 6: // Convertir de grados centigrados a grados farenheit System.out.println("*CONVERSION DE GRADOS CENTRIGRADOS A FARENHEIT *"); System.out.println("*----------------------------------------------*"); System.out.print("Teclea el valor en grados centigrados: "); d = new Double( br.readLine() ); dNum1 = d.doubleValue(); System.out.println( dNum1 + " grados Centigrados equivalen a " + ( ( dNum1 * 1.8 ) + 32 ) + " grados Farenheit" ); break; case 7: // Calcular la sumatoria de 'n' numeros System.out.println("* CALCULO DE LA SUMATORIA DE n NUMEROS *"); System.out.println("*----------------------------------------------*"); System.out.print("Teclea un numero entero: "); iNum = Integer.parseInt( br.readLine() ); if ( iNum < 1 ){ System.out.println( "Valor invalido!" ); break; } System.out.print( "La sumatoria de 1 a " + iNum + " es: " ); for ( iRes = 0 ; iNum > 0 ; iRes += iNum-- ); System.out.println( iRes ); break; case 8: // Calcular la media aritmetica de 'n' numeros System.out.println("* CALCULO DE LA MEDIA ARITMETICA DE n NUMEROS *"); System.out.println("*----------------------------------------------*"); System.out.print("Teclea un numero entero positivo: "); iNum = Integer.parseInt( br.readLine() ); if ( iNum < 1 ){ System.out.println( "Valor invalido!" ); break; } iCont = iNum; System.out.print( "La media artimetica de la suma de 1 a " + iNum + " es: " ); for ( iRes = 0 ; iCont > 0 ; iRes += iCont-- ); d = new Double( iRes ); dNum1 = d.doubleValue(); d = new Double( iNum ); dNum2 = d.doubleValue(); System.out.println( dNum1 / dNum2 ); break; case 9: // Calcular la media aritmetica de 'n' numeros System.out.println("* DESPLEGAR LA TABLA DEL 7 *"); System.out.println("*----------------------------------------------*"); for ( iCont = 1 ; iCont <= 10 ; iCont++ ) System.out.println( "7 * " + iCont + " = " + ( 7 * iCont ) ); break; case 10: // Calcular el area de una esfera ( 3 * PI * r^3 / 4 ) System.out.println("* CALCULAR EL VOLUMEN DE UNA ESFERA *"); System.out.println("*----------------------------------------------*"); System.out.print("Teclea el valor del radio: "); d = new Double( br.readLine() ); dNum1 = d.doubleValue(); if ( dNum1 <= 0 ){ System.out.println( "El radio no puede ser igual o menor a cero!" ); break; } System.out.println("El area de la esfera es: " + ( 3 * 3.14159 * Math.pow( dNum1 , 3 ) / 4 ) ); break; case 11: // Desplegar la tabla de multiplicar de un numero entre 1 y 10 System.out.println("* DESPLEGAR LA TABLA DE UN NUMERO ENTRE 1 y 10 *"); System.out.println("*----------------------------------------------*"); System.out.print("Teclea un numero entre 1 y 10: "); iNum = Integer.parseInt( br.readLine() ); if ( iNum < 1 || iNum > 10 ){ System.out.println( "Valor invalido!" ); break; } for ( iCont = 1 ; iCont <= 10 ; iCont++ ) System.out.println( iNum + " * " + iCont + " = " + ( iNum * iCont ) ); break; case 12: // Desplegar la edad a partir del a¤o de nacimiento System.out.println("* DESPLEGAR EDAD A PARTIR DEL AÑO DE NACIMIENTO*"); System.out.println("*----------------------------------------------*"); System.out.print("Teclea el a¤o de nacimiento: "); iNum = Integer.parseInt( br.readLine() ); if ( iNum < 1900 ) System.out.println( "Eres un milagro de la naturaleza!!! tienes " + ( 2003 - iNum ) + " a¤os!" ); else System.out.println( "Tienes " + ( 2003 - iNum ) + " a¤os" ); break; case 13: // Desplegar si es mayor edad a partir del año de nacimiento System.out.println("* DESPLEGAR SI ES MAYOR DE EDAD A PARTIR DEL *"); System.out.println("* AÑO DE NACIMIENTO *"); System.out.println("*----------------------------------------------*"); System.out.print("Teclea el a¤o de nacimiento: "); iNum = Integer.parseInt( br.readLine() ); if ( iNum < 1900 ) System.out.println( "Eres un milagro de la naturaleza!!! tienes " + ( 2003 - iNum ) + " a¤os y por lo tanto eres mayor de edad!" ); else System.out.println( "Tienes " + ( 2003 - iNum ) + " a¤os y " + ( ( ( 2003 - iNum ) < 18 ) ? "no " : "" ) + "son suficientes para la mayoria de edad." ); break; case 14: // Desplegar la edad a partir del a¤o de nacimiento System.out.println("* DESPLEGAR SUMATORIA A PARTIR DE DOS NUMEROS *"); System.out.println("*----------------------------------------------*"); System.out.print("Teclea un numero entero: "); iNum = Integer.parseInt( br.readLine() ); System.out.print("Teclea otro numero entero mayor a " + iNum + ": "); iNum2 = Integer.parseInt( br.readLine() ); if ( iNum2 <= iNum ){ System.out.println( "Segundo numero invalido!" ); break; } iRes = 0; for ( iCont = iNum ; iCont <= iNum2 ; iRes += iCont++ ); System.out.println( "La sumatoria de " + iNum + " a " + iNum2 + " es " + iRes ); break; case 15: // Recibir numeros pares hasta que se presione un impar System.out.println("*LECTURA DE NUMEROS PARES, FIN AL RECIBIR IMPAR*"); System.out.println("*----------------------------------------------*"); do{ System.out.print("Teclea un numero entero par: "); iNum = Integer.parseInt( br.readLine() ); }while( iNum % 2 != 1 ); break; case 16: System.out.println("* LECTURA DE TRES NUMEROS Y DECIR CUAL ES MAYOR*"); System.out.println("*----------------------------------------------*"); System.out.print("Escribe el primer numero: "); d = new Double( br.readLine() ); dNum1 = d.doubleValue(); System.out.print("Escribe el segundo numero: "); d = new Double( br.readLine() ); dNum2 = d.doubleValue(); System.out.print("Escribe el tercer numero: "); d = new Double( br.readLine() ); dNum3 = d.doubleValue(); if ( dNum1 == dNum2 && dNum2 == dNum3 ){ System.out.println("Todos los numeros son iguales"); break; } if ( dNum1 > dNum2 && dNum1 > dNum3 ) System.out.print ( "El primer numero" ); if ( dNum2 > dNum1 && dNum2 > dNum3 ) System.out.print ( "El segundo numero" ); if ( dNum3 > dNum1 && dNum3 > dNum2 ) System.out.print ( "El tercer numero" ); System.out.println( " es el mayor" ); break; case 17: System.out.println("* DESPLEGAR DEL 1 AL 100 Y DEL 100 AL 1 SIMULT.*"); System.out.println("*----------------------------------------------*"); for ( iNum = 1 ; iNum <= 100 ; iNum++ ){ System.out.println( iNum + " " + ( 100 - ( iNum - 1 ) ) ); if( iNum == 20 || iNum == 40 || iNum == 60 || iNum == 80 ){ System.out.println("Presiona Enter para continuar..."); br.readLine(); } } break; case 18: Operaciones(); break; case 19: System.out.println("* DESPLEGAR FECHA EN FORMATO LARGO DE DD/MM/AA *"); System.out.println("*----------------------------------------------*"); System.out.print("Escribe los dias (01-31): "); iDD = Integer.parseInt( br.readLine() ); System.out.print("Escribe el mes (01-12): "); iMM = Integer.parseInt( br.readLine() ); System.out.print("Escribe el a¤o (0000-9999): "); iAAAA = Integer.parseInt( br.readLine() ); System.out.print( iDD + " de" ); switch( iMM ){ case 1: System.out.print( " enero " ); break; case 2: System.out.print( " febrero " ); break; case 3: System.out.print( " marzo " ); break; case 4: System.out.print( " abril " ); break; case 5: System.out.print( " mayo " ); break; case 6: System.out.print( " junio " ); break; case 7: System.out.print( " julio " ); break; case 8: System.out.print( " agosto " ); break; case 9: System.out.print( " septiembre " ); break; case 10: System.out.print( " octubre " ); break; case 11: System.out.print( " noviembre " ); break; case 12: System.out.print( " diciembre " ); break; } System.out.println( "de " + iAAAA ); break; case 0: System.out.println("*----------------------------------------*"); System.out.println("* Gracias por utilizar este programa! :) *"); System.out.println("*----------------------------------------*"); System.out.println("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n"); return; default: System.out.println("Opcion no valida..."); break; } // fin del switch System.out.println("*----------------------------------------------*\n\n\n\n"); System.out.println("Presiona Enter para continuar..."); br.readLine(); System.out.println("*----------------------------------------------*\n\n\n\n"); } // fin del try catch( Exception ex ){ System.out.println("\n\n\n"); System.out.println( "--o--o--o--o--o--o--o--o--o--"); System.out.println( "- Error! Numero incorrecto -"); System.out.println( "--o--o-A-o--o--o--o--o--o--o--"); System.out.println("\n\n\n"); } // fin del catch }while( iOpcn != 0 ); } // fin de main
public static void Operaciones(){ InputStreamReader isr; isr = new InputStreamReader(System.in); BufferedReader br; br = new BufferedReader(isr); String sNum; Double d; int iOpcn; double iNum1, iNum2; iOpcn = -1; do{ try{ System.out.println("1. Suma"); System.out.println("2. Resta"); System.out.println("3. Multiplicacion"); System.out.println("4. Division"); System.out.println("0. Terminar\n"); System.out.print("Teclea el numero de la opcion que desees: "); iOpcn = Integer.parseInt( br.readLine() );
if ( iOpcn > 0 && iOpcn < 5 ){ System.out.print("Escribe el primer numero: "); d = new Double( br.readLine() ); iNum1 = d.doubleValue(); System.out.print("Escribe el segundo numero: "); d = new Double( br.readLine() ); iNum2 = d.doubleValue(); System.out.println("\n"); if ( iOpcn == 1 ){ // Suma... System.out.println("La suma de "+iNum1+" + "+iNum2+" es: "+(iNum1+iNum2)+"\n"); } if ( iOpcn == 2 ){ // Resta... System.out.println("La resta de "+iNum1+" - "+iNum2+" es: "+(iNum1-iNum2)+"\n"); } if ( iOpcn == 3 ){ // Multiplicacion... System.out.println("La multiplicacion de "+iNum1+" * "+iNum2+" es: "+(iNum1*iNum2)+"\n"); } if ( iOpcn == 4 ){ // Division... if ( iNum2 == 0 ) System.out.println("La division no se puede realizar, segundo numero igual a cero\n"); else System.out.println("La division de "+iNum1+" / "+iNum2+" es: "+(iNum1/iNum2)+"\n"); } } } // fin del try catch( Exception ex ){ System.out.println( "--o--o--o--o--o--o--o--o--o--"); System.out.println( "- Error! Numero incorrecto -"); System.out.println( "--o--o--o--o--o--o--o--o--o--"); } // fin del catch }while( iOpcn != 0 ); } // fin de main
} // fin de la clase CurMat
|
|
|
|
|
En línea
|
|
|
|
|
|