PHP - PORQUE NO FUNCIONA

   
Vista:

PORQUE NO FUNCIONA

Publicado por SILVIA (80 intervenciones) el 15/05/2015 20:13:41
Necesito que me ayudeis a arreglar esta función, que no sé porque pero no funciona. Es urgente.

1
2
3
4
5
6
7
8
9
10
11
12
13
function suma_vector($vector){
    $n=count($vector);
    $suma_vector=0;
    for($i=0; $i<$n; $i++){
        $suma_vector=$suma_vector+$vector[$i];
    }
    return $suma_vector;
}
 
$vector=array(1,2,3,4,5,6,7);
$vector=suma_vector($vector);
print_r($vector);
echo "La suma de los elementos del vector es: ". suma_vector($vector);

¿Cómo haría la misma función pero con números aleatorios?

Gracias de antemano.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve

PORQUE NO FUNCIONA

Publicado por xve (5513 intervenciones) el 15/05/2015 20:19:58
La función, devuelve un valor, no un array de valores, por lo que en la segunda llamada a al función, no le estas pasando un array, sino que un valor... modifica esta linea:
1
echo "La suma de los elementos del vector es: ". suma_vector($vector);

por esta:
1
echo "La suma de los elementos del vector es: ".$vector;
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

PORQUE NO FUNCIONA

Publicado por SILVIA (80 intervenciones) el 15/05/2015 21:13:59
Gracias. ¿Cómo hago para imprimir el vector?

He hecho esta otra función, que tampoco funciona, creia que el error era el mismo pero no lo es, porque lo he corregido pero sigue sin funcionar.

1
2
3
4
5
6
7
8
9
10
11
12
function producto_vector($vector){
    $n=count($vector);
    $producto_vector=0;
    for($i=1; $i<$n; $i++){
        $producto_vector=$producto_vector*$vector[$i];
    }
    return $producto_vector;
}
// Inicio del código
$vector=array(1,2,3,4,5,6,7);
$vector=producto_vector($vector);
echo "El resultado de la multiplicación de los elementos del vector es: ".$vector;
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

PORQUE NO FUNCIONA

Publicado por SILVIA (80 intervenciones) el 15/05/2015 22:17:31
Estoy intentando hacer una función que multiplique los valores de un array, pero no multiplica correctamente. ¿Podeis ayudarme a encontrar el error? Gracias de antemano. Es urgente.

1
2
3
4
5
6
7
8
9
10
11
12
function producto_vector($vector){
    $n=count($vector);
    $producto_vector=0;
    for($i=1; $i<$n; $i++){
        $producto_vector=$vector[$i]*$vector[$i];
    }
    return $producto_vector;
}
// Inicio del código
$vector=array(1,2,3,4);
$vector=producto_vector($vector);
echo "El resultado de la multiplicación de los elementos del vector es: ".$vector;
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
-1
Comentar
Imágen de perfil de xve

PORQUE NO FUNCIONA

Publicado por xve (5513 intervenciones) el 16/05/2015 18:45:41
Hola Silvia, cualquier numero multiplicado por 0, siempre sera 0.

Tienes que ponerle el valor 1 a la variable $producto_vector!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

PORQUE NO FUNCIONA

Publicado por SILVIA (80 intervenciones) el 16/05/2015 19:26:04
Tienes razón que falló más tonto. Creía que cambiando la inicialización del bucle for de 0 a 1 ya estaba multiplicando bien, no me había dado cuenta de eso.

Gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar