Foros del Web » Programación para mayores de 30 ;) » Java »

[SOLUCIONADO] Polimorfismo en java

Estas en el tema de Polimorfismo en java en el foro de Java en Foros del Web. Tengo este codigo... @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código Javascript : Ver original package herencia1 ;   import java. util . *;   public class Herencia1 {   ...
  #1 (permalink)  
Antiguo 07/04/2013, 14:13
 
Fecha de Ingreso: marzo-2012
Mensajes: 30
Antigüedad: 7 años, 7 meses
Puntos: 0
Polimorfismo en java

Tengo este codigo...

Código Javascript:
Ver original
  1. package herencia1;
  2.  
  3. import java.util.*;
  4.  
  5. public class Herencia1{
  6.     public void Trabajo(){
  7.         Scanner ent = new Scanner(System.in);
  8.         System.out.println("introducir Notas parciales A,B");
  9.                 double a = ent.nextDouble();
  10.                 double b = ent.nextDouble();
  11.         System.out.println("introducir Nota practicas");
  12.                 double c= ent.nextDouble();
  13.         System.out.println("introducir Nota Examen final");
  14.                 double d= ent.nextDouble();
  15.         double x,y,z,j;
  16.         double parc=40;
  17.         double prac=20;
  18.         double fin=40;  
  19.         x= mul(suma(a,b)/2,parc/100);
  20.         y= mul(c,prac/100);
  21.         z= mul(d,fin/100);
  22.         j= suma(suma(x,y),z);
  23.         imprimir(j);
  24.     }
  25.  
  26.     public double suma(double x, double y){
  27.         return x+y;
  28.     }
  29.    
  30.     public int suma(int x,int y){
  31.         return x*y;
  32.     }
  33.    
  34.     public double mul(double x,double y){
  35.         return x*y;
  36.     }
  37.    
  38.     public void imprimir(int j){
  39.         System.out.println("La nota final del Alumno x es = "+j);
  40.     }
  41.    
  42.     public static void main(String[] args) {
  43.         Herencia1 herencia=new Herencia1();
  44.         herencia.Trabajo();
  45.     }
  46. }

Lo que necesito es que el numero a imprimir (J) sea un numero entero .... pero debo recibir los nunmeros a,b,c,d como double.... Ayuda¿??? no termino de entender esto del polimorfismo por favor.!!!
  #2 (permalink)  
Antiguo 07/04/2013, 14:24
Avatar de chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.773
Antigüedad: 15 años, 1 mes
Puntos: 454
Respuesta: Polimorfismo en java

Hola:

No entiendo. Aquí no hay nada de polimorfismo. ¿Quieres hacer una clase similar a esta para tener dos clases, una con enteros y otra con doubles y luego por medio de polimorfismo usar indistintamente una u otra? ¿O solo quieres que System.out te saque la nota sin decimales?

En este último caso, pon

System.out.println("La nota final del Alumno x es = "+(int)j);

o si quieres redondear adecuadamente (que por ejemplo 4.6 salga 5 en vez de 4), usa

System.out.println("La nota final del Alumno x es = "+(int)(j+0.5));

y si quieres hacer el redondeo con la clase Math en vez de con esa cuenta

System.out.println("La nota final del Alumno x es = "+Math.round(j));

Se bueno.
__________________
Apuntes Java
Wiki de Programación
  #3 (permalink)  
Antiguo 07/04/2013, 14:30
 
Fecha de Ingreso: marzo-2012
Mensajes: 30
Antigüedad: 7 años, 7 meses
Puntos: 0
Respuesta: Polimorfismo en java

Muchas gracias... Soy nuevo en java... y se me esta complicando demasiado...
Y pues no me explicaron si tenia que hacer 2 clases o simplemente hacer que imprima en enteros... de todos modos tu respuesta me sirvió y ahora imprime en enteros sin mucha complicación!! Gracias. =)
  #4 (permalink)  
Antiguo 07/04/2013, 14:41
 
Fecha de Ingreso: marzo-2012
Mensajes: 30
Antigüedad: 7 años, 7 meses
Puntos: 0
Respuesta: Polimorfismo en java

ehhh .... muchas gracias...

Última edición por drd222; 07/04/2013 a las 14:56

Etiquetas: ejemplo, facil
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:30.