![]() |
|
|||||||
|
|
|
Share | LinkBack | Herramientas | Desplegado |
|
|
#1 |
|
Junior Member
Fecha de Ingreso: junio-2009
Mensajes: 22
|
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;
}
|
|
|
|
|
|
#2 |
|
Member
Fecha de Ingreso: septiembre-2009
Mensajes: 30
|
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;
}
sale espero me entiendas.......sino habisa....para explicarte un poco mas leve..........
__________________
![]() |
|
|
|
|
|
#3 | |
|
Moderador
Fecha de Ingreso: junio-2007
Mensajes: 1.755
|
Cita:
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;
}
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();
}
__________________
![]() |
|
|
|
|
|
|
#4 |
|
Junior Member
Fecha de Ingreso: junio-2009
Mensajes: 22
|
gracias amigos! ya tengo la idea mas clara! este error no me dejaba ejecutar mi programa
mil gracias!
|
|
|
|
![]() |
| Herramientas | |
| Desplegado | |
|
|