Comunidad Underground Hispana  
Visita: Descargas - Foro de juegos - Articulos - Juegos Gratis - Download Free

Retroceder   Comunidad Underground Hispana > Programacion > Programación > Java

Respuesta Crear Nuevo Tema
 
Share LinkBack Herramientas Desplegado
Antiguo 23-nov-2009, 23:00   #1
Junior Member
 
Fecha de Ingreso: junio-2009
Mensajes: 22
Predeterminado return de arreglos en java

hola amigos, tengo una duda, como puedo hacer para retornar un valor en un arreglo, por ejemplo, hago un calculo y todo se almacena en un arreglo, pero necesito retornar ese arreglo con esos valores para utilizarlos en otro proceso, aqui les adjunto el codigo para ver si alguien me puede ayudar!! gracias de antemano!! P.D: en este caso quisiera regresar el arreglo promedioFinal, para utilizarlo en otro metodo. saludos!

al compilarlo me manda este error: incompatible types
found : float[]
required: float
return promedioFinal;

Código:
 float promedioEstudiante()
  {
  int promedio_parciales = 0;
  int promedio_proyectos = 0;
  float porcentajes[][] = new float[10][4];
  float promedioFinal[][] = new float[10][1];
  int notas;
  int promedio =0;
  int semestral = 0;
  int ww,yy,rr,ee,xx,pp,nn,mm;
  
  
  for (ww = 0; ww <10; ww++)
  {
  	for (yy = 0; yy<=2; yy++)
  	{
  		calificacionesEstudiante[ww][yy] = promedio_parciales;
  		promedio = promedio + promedio_parciales;
  	  float porcentajeparcial = (promedio /3) * 0.35f;
  	  porcentajes[ww][1] = porcentajeparcial;
  		
  	}
  
  }
  
  for (xx = 0; xx <10; xx++)
  {
  	for (pp = 3; pp<=4; pp++)
  	{
  		calificacionesEstudiante[xx][pp] = promedio_proyectos;
  		promedio = promedio + promedio_proyectos;
  	  float porcentajeproyecto = (promedio /2) * 0.25f;
  	  porcentajes[xx][2] = porcentajeproyecto;
  		
  	}
  
  }
  for (ee = 0; ee <10; ee++)
  {
  	for (rr = 3; rr<=4; rr++)
  	{
  		calificacionesEstudiante[ee][rr] = semestral;
  	  float porcentajesemestral = semestral * 0.35f;
  	  porcentajes[ee][3] = porcentajesemestral;
  		
  	}
  
  }
  for (mm = 0; mm<=10; mm++)
  {
   if (porcentajes[mm][1] < 15)
   {
   	porcentajes[mm][4] = 2.5f;
   }
   if (porcentajes[mm][1] >= 15 && porcentajes[mm][1] <=25)
   {
   	porcentajes[mm][4] = 4f;
   }
   if (porcentajes[mm][1] > 25)
   {
   	porcentajes[mm][4] = 4f;
   }  		
  	
  }
  for (nn = 0; nn<=10; nn++)
  {
  	promedioFinal[nn][1] = porcentajes[nn][1] + porcentajes[nn][2] + porcentajes[nn][3] + porcentajes[nn][4];
  	
  }
  return promedioFinal;
  
  
  
  	
  }
bunkerfire está desconectado   Responder Citando
Antiguo 24-nov-2009, 09:00   #2
Member
 
Fecha de Ingreso: septiembre-2009
Mensajes: 30
Predeterminado Re: return de arreglos en java

sale.......pues como le entendi es haci....sale..........tu llenas el arreglo.........ejem.......1234......sale cada numero tiene una posicion diferente..................ok.........si recuerdas........la sentencia return puede regresar un valor y como un arreglo en general es un solo valor......pues solo se pone.........al ultima.....del metodo..........

return nom_vec;

sale......esto lo hace..........recuerda q8ue return termina la operacion del metodo por eso se coloca al fina.......


ejemplito..........

Código:
puvlic int Vector()
{

int vec[]={1,2,3,4};
return vec;
}
y con esto te regrasa.........el vector con los valores solo necesitas otro vector que lo resiva................a y donde dice int en la cabezera del metodo eso indica que retorna un vlor entero........

sale espero me entiendas.......sino habisa....para explicarte un poco mas leve..........
__________________
Lizard19 está desconectado   Responder Citando
Antiguo 24-nov-2009, 11:55   #3
Moderador
 
Avatar de Fashion
 
Fecha de Ingreso: junio-2007
Mensajes: 1.755
Predeterminado Re: return de arreglos en java

Cita:
Iniciado por bunkerfire
hola amigos, tengo una duda, como puedo hacer para retornar un valor en un arreglo, por ejemplo, hago un calculo y todo se almacena en un arreglo, pero necesito retornar ese arreglo con esos valores para utilizarlos en otro proceso, aqui les adjunto el codigo para ver si alguien me puede ayudar!! gracias de antemano!! P.D: en este caso quisiera regresar el arreglo promedioFinal, para utilizarlo en otro metodo. saludos!

al compilarlo me manda este error: incompatible types
found : float[]
required: float
return promedioFinal;
Cuando dice "required: float" es porque las definiciones de las variables ó el ingreso de datos no esta coincidiendo, por algun lado puedes estar ingresando un dato Int ó Double y al hacer eso, te manda dicho error.

Observa este ejemplo, muestra como enviar una matriz[][] mediante una función:
Código:
static float[][] obtener_matriz(float[][] x){
    float[][] y = new float[x.length][x[0].length];
    for(int i = 0; i < x.length ; i++)
      for(int j = 0; j < x[0].length; j++)
        y[i][j] = x[i][j];
    return y;
}
Función principal:
Código:
public static void main(String[] args) {
    // TODO code application logic here    
    
    //Pasando un arreglo por una funcion
    float[][] m1 = {{12, 13, 15}, {16, 14, 18}};
    float[][] m2 = obtener_matriz(m1); // Obtenemos la matriz    //imprimimos la matriz m2
    for(int i = 0; i < m2.length ; i++)
      for(int j = 0; j < m2[0].length ; j++)
        System.out.print(m2[i][j] + " ");
    System.out.println();
}
PD: Si quieres usar datos mas extensos con mas decimales, te recomiendo usar Double en vez de Float.
__________________
Fashion está desconectado   Responder Citando
Antiguo 24-nov-2009, 13:53   #4
Junior Member
 
Fecha de Ingreso: junio-2009
Mensajes: 22
Predeterminado Re: return de arreglos en java

gracias amigos! ya tengo la idea mas clara! este error no me dejaba ejecutar mi programa mil gracias!
bunkerfire está desconectado   Responder Citando
Respuesta

Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder mensajes
No puedes subir archivos adjuntos
No puedes editar tus mensajes

Los Códigos BB están Activado
Las Caritas están Activado
[IMG] está Activado
El Código HTML está Desactivado
Trackbacks están Activado
Pingbacks están Activado
Refbacks están Activado



La franja horaria es GMT -5. Ahora son las 00:53.



Juegos gratis Underground Mexico Veo Descargas Songs Traducidas Videos De Musica Conservacion Tabs Metal
Noticias
 Juegos De Coche juegos gratis online juegos Utilidades Trucos
Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.3.2
Traducción por vBHispano.com