Tema destacado: Únete al Grupo Steam elhacker.NET
Autor
|
Tema: problema con ejercicio array+function (Leído 463 veces)
|
xemnas
Desconectado
Mensajes: 75
|
hola a tod@s, no consigo que me funcione la funcion para que me sume los numeros pares del array y el numero pares qe hay, alguien me puede ayudar? gracias $vector=array(1,4,9,5,2,6,98,23,-40,3,76,9,-8,3,1,4,7,0); $suma=0; $sumapares=0; $numpares=0; function execute($vector[$i]){ suma_elementos_pares($vector[$i]); } function suma_elementos_pares($elemento){ if(($elemento%2)==0) { $sumapares=$sumapares+$elemento; $numpares++;
return $numpares; } } while($i<count($vector)){ execute($vector[$i]); $i++; }
|
|
|
|
|
En línea
|
|
|
|
|
DonVidela
|
Te sale algun error en especifico?
|
|
|
|
|
En línea
|
Aprendiendo: Java , C# , pl/sql, mysql , sql server, PHP , Access, JSF, Facelets, JSP, CakePHP, JQuery http://pablovidela.wordpress.com
|
|
|
xemnas
Desconectado
Mensajes: 75
|
no, en la consola de errores no sale ninguno error
|
|
|
|
|
En línea
|
|
|
|
|
DonVidela
|
|
|
|
|
|
En línea
|
Aprendiendo: Java , C# , pl/sql, mysql , sql server, PHP , Access, JSF, Facelets, JSP, CakePHP, JQuery http://pablovidela.wordpress.com
|
|
|
fran800m
Desconectado
Mensajes: 139
|
Tabula y usa la etiqueta de código para que se pueda leer.
|
|
|
|
|
En línea
|
|
|
|
|
DonVidela
|
Para que se pueda leer bien... $vector=array(1,4,9,5,2,6,98,23,-40,3,76,9,-8,3,1,4,7,0); $suma=0; $sumapares=0; $numpares=0; function execute($vector[$i]){ suma_elementos_pares($vector[$i]); } function suma_elementos_pares($elemento){ if(($elemento%2)==0) { $sumapares=$sumapares+$elemento; $numpares++; return $numpares; } } while($i<count($vector)){ execute($vector[$i]); $i++; }
|
|
|
|
|
En línea
|
Aprendiendo: Java , C# , pl/sql, mysql , sql server, PHP , Access, JSF, Facelets, JSP, CakePHP, JQuery http://pablovidela.wordpress.com
|
|
|
|
DonVidela
|
Porque no haces el ciclo en el metodo y sumas todo de una , en vez de recibir por parametro un elemento cada vez que se ejecuta el metodo, creo que es un problema de logica.
|
|
|
|
|
En línea
|
Aprendiendo: Java , C# , pl/sql, mysql , sql server, PHP , Access, JSF, Facelets, JSP, CakePHP, JQuery http://pablovidela.wordpress.com
|
|
|
WHK
吴阿卡
Ex-Staff
Desconectado
Mensajes: 4.113
The Hacktivism is not a crime
|
Hola, tu código es php y esto deberia ir en el subforo de php porque acá no todos te van a descifrar que lenguaje estás usando porque no todos conocen de sintaxis php. <?php echo 'Total: '.(int)suma(array(1,4,9,5,2,6,98,23,-40,3,76,9,-8,3,1,4,7,0)); function suma($vec){ if((!isset($vec)) or (!is_array($vec))) return 0; $ex = array(); foreach($vec as $sum){ if(((int)$sum%2) == 0) $ex[] = (int)$sum; } if(count($ex) > 0){ $ret = 0; foreach($ex as $do){ $ret += (int)$do; } return (int)$ret; }else return 0; } ?> Recuerda que un buén código no es el que hace el trabajo sino el que mejor controla cáda situación porque que tal si a la función tuya le paso un valor que no es un array? de seguro que me va a dar una exepción nativa de php y tendrás una falla de seguridad llamada path disclosure, y si no retorna un valor numérico?, etc.
|
|
|
|
« Última modificación: 9 Noviembre 2011, 01:29 por WHK »
|
En línea
|
|
|
|
|
|