elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: (TUTORIAL) Aprende a emular Sentinel Dongle By Yapis


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Duda Ciclo-for
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Duda Ciclo-for  (Leído 4,136 veces)
miguel_12

Desconectado Desconectado

Mensajes: 4


Ver Perfil
Duda Ciclo-for
« en: 28 Mayo 2013, 20:04 pm »

Hola a todos soy nuevo en el foro.
Estaba realizando unos ejercicios propuestos de un curso de java que estoy tomando el problema a resolver es el siguiente
"Confeccionar un programa que lea n pares de datos, cada par de datos corresponde a la medida de la base
y la altura de un triángulo. El programa deberá informar:
a) De cada triángulo la medida de su base, su altura y su superficie.
b) La cantidad de triángulos cuya superficie es mayor a 12. "

Hasta ahora lo que he echo es calcular la superficie y mostrarla, tambien mostrar los triangulos con superficies mayores a 12, el problema llega cuando tengo que mostrar la base y la altura de cada triangulo.Como lo podria hacer????


Muchas gracias a todos por su precioso tiempo  ;D ;D.
Aclaro que apena estoy empezando en esto de la programacion.
El codigo que llevo hasta ahora es el siguiente:
Código
  1. import javax.swing.*;
  2. public class Problemas1 {
  3.  
  4. public static void main(String[] args) {
  5.  
  6. float base_n = 0;
  7. float altura_n = 1;
  8. float superficie_n = 0;
  9. int c= 0;
  10. int dato_n = 1;
  11. String dato = JOptionPane.showInputDialog("A cuantos triangulo le desea averiguar la superficie???");
  12. dato_n=Integer.parseInt(dato);
  13. int cantidad = 0;
  14. for (c=1;c<=dato_n;c ++){
  15.  
  16. String base = JOptionPane.showInputDialog("Digite la base del triangulo"+" Triangulo=>"+c);
  17. String altura = JOptionPane.showInputDialog("Digite la altura del triangulo"+"Triangulo=>"+c);
  18.  
  19. base_n = Float.parseFloat(base);
  20. altura_n =Float.parseFloat(altura);
  21.  
  22. superficie_n = altura_n*base_n/2;
  23.  
  24. JOptionPane.showMessageDialog(null,"la superficie es: "+superficie_n);
  25.  
  26. if (superficie_n>12){
  27.  
  28. cantidad = cantidad + 1;
  29. }
  30.  
  31. }
  32.  
  33. JOptionPane.showMessageDialog(null," Los triangulos con superficies mayores a 12 son: "+cantidad);
  34.  
  35. }
  36.  
  37. }
  38.  
  39.  


En línea

YairMon

Desconectado Desconectado

Mensajes: 15



Ver Perfil
Re: Duda Ciclo-for
« Respuesta #1 en: 28 Mayo 2013, 20:30 pm »

Por favor explicate mejor, no puedo entenderte

¿Quieres mostrar la base y altura de cada uno?

en que momento?
podrias agregar una linea de codigo joptionpane:



Código
  1.  
  2. String mensaje = "Triangulo de " + base_n + " de base";
  3. mensaje += "\nY de " + altura_n + " de altura";
  4. JOptionPane.showMessageDialog(null, mensaje + "\nSu superficie es: " +superficie_n);
  5. // '\n' es un salto de linea (Por si no lo sabes)
  6.  


En línea

miguel_12

Desconectado Desconectado

Mensajes: 4


Ver Perfil
Re: Duda Ciclo-for
« Respuesta #2 en: 28 Mayo 2013, 20:40 pm »

quiero mostrar la base y la altura de todos los triangulos ingresados anteriormente espero me entiendas
En línea

miguel_12

Desconectado Desconectado

Mensajes: 4


Ver Perfil
Re: Duda Ciclo-for
« Respuesta #3 en: 28 Mayo 2013, 21:05 pm »

Muchas graciass por tu ayuda :D :D :D
En línea

YairMon

Desconectado Desconectado

Mensajes: 15



Ver Perfil
Re: Duda Ciclo-for
« Respuesta #4 en: 28 Mayo 2013, 21:26 pm »

Hmm
« Última modificación: 29 Mayo 2013, 19:29 pm por YairMon » En línea

YairMon

Desconectado Desconectado

Mensajes: 15



Ver Perfil
Re: Duda Ciclo-for
« Respuesta #5 en: 28 Mayo 2013, 21:45 pm »

Todo depende de cuantos triangulos agregues:

Osea puedes hacer un Vector de 'floats' (o varios) que almacene todos los datos que ingresaron

entonces:


Código
  1. import javax.swing.*;
  2.  
  3. public class Problemas1 {
  4.  
  5. public static void main(String[] args) {
  6.  
  7. float base_n = 0;
  8. float altura_n = 1;
  9. float superficie_n = 0;
  10. int c = 0;
  11. int dato_n = 1;
  12. .showInputDialog("A cuantos triangulo le desea averiguar la superficie???");
  13. dato_n = Integer.parseInt(dato);
  14. // Creo dos vectores de 'float' de tamaño del numero de triangulos
  15. // Que almacenen todas las bases y las alturas
  16. float[] bases = new float[dato_n];
  17. float[] alturas = new float[dato_n];
  18.  
  19. int cantidad = 0;
  20. for (c = 1; c <= dato_n; c++) {
  21.  
  22. String base = JOptionPane.showInputDialog("Digite la base del triangulo Triangulo=>" + c);
  23. String altura = JOptionPane.showInputDialog("Digite la altura del triangulo Triangulo=>" + c);
  24.  
  25. base_n = Float.parseFloat(base);
  26. altura_n = Float.parseFloat(altura);
  27.  
  28. // Por cada iteracion del for se van agregando las alturas
  29. // y las bases ( pos c-1 ya que el arreglo empieza en 0 )
  30. bases[c-1] = base_n;
  31. alturas[c-1] = altura_n;
  32.  
  33. superficie_n = altura_n * base_n / 2;
  34.  
  35. JOptionPane.showMessageDialog(null, "\nSu superficie es: " +superficie_n);
  36.  
  37. if (superficie_n > 12) {
  38.  
  39. cantidad = cantidad + 1;
  40. }
  41.  
  42. }// <- cierre del for
  43.  
  44. // Creo un string donde se va a guardar un largo mensaje
  45. // Con todas las alturas y bases de todos los triangulos ingresados
  46. String mensaje = "";
  47. // Abro otro 'for' para mostrar todas las alturas
  48. // Desde 'i' igual a 0 hasta el tamanio de las bases (tambien puede ser de las alturas)
  49. for(int i = 0; i < bases.length; i++){
  50. // A mensaje le sumo el numero del triangulo (i+1) porque empieza en 0
  51. mensaje += "Triangulo " + (i+1);
  52. // Le sumo la base y la altura
  53. mensaje += " - base: " + bases[i] + " - altura: " + alturas[i];
  54.  
  55.  
  56. // Y un salto de linea
  57. mensaje += "\n";
  58. }
  59.  
  60. // Muestro al final un mesaje con el string 'mensaje'
  61. JOptionPane.showMessageDialog(null, mensaje);
  62.  
  63.  
  64.  
  65. JOptionPane.showMessageDialog(null, " Los triangulos con superficies mayores a 12 son: "
  66. + cantidad);
  67.  
  68. }
  69.  
  70. }
  71.  


PD: Tambien puedes agregar otro arreglo de floats con los datos de la superficie, y lo llenas de igual manera que las bases y alturas , y simplemente en el otro 'for' añades una linea.

Algo como: mensaje += "- Superficie: " + superficies ;

Si entiendes el codigo será facil añadirlo

(Presioné 'Quote' en vez de 'Modify' y postee dos veces, lo siento  :(  )
« Última modificación: 28 Mayo 2013, 21:47 pm por YairMon » En línea

miguel_12

Desconectado Desconectado

Mensajes: 4


Ver Perfil
Re: Duda Ciclo-for
« Respuesta #6 en: 29 Mayo 2013, 18:21 pm »

Genial muchas gracias te lo agradezco mucho  :D ;D ;-) ;-)

resolviste mi problema pero yo aun no manejo ventores apenas estoy empezando en esto

muchas gracias
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Ayuda con un ciclo
Java
xAgramonx 3 3,218 Último mensaje 25 Noviembre 2010, 19:30 pm
por xAgramonx
Proyecto de fin de ciclo
Foro Libre
Khronos14 5 4,054 Último mensaje 31 Marzo 2011, 23:49 pm
por Jake Logan
Ciclo exacto
Programación C/C++
neeeko 1 2,585 Último mensaje 22 Febrero 2013, 04:59 am
por 85
problema con un ciclo do while
Programación C/C++
diegoalberto_garcia95 7 4,038 Último mensaje 10 Marzo 2013, 23:00 pm
por diegoalberto_garcia95
ciclo for()
Programación C/C++
noah222 2 6,218 Último mensaje 18 Abril 2013, 15:23 pm
por rir3760
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines