He empezado el cursillo de javascript en Codeacademy, y me surge un problema con el siguiente ejercicio:
Instructions
Eres una persona de hábitos. Cada semana compras 5 naranjas. ¡Pero el precio de las naranjas sigue cambiando!
1. Quieres declarar una función que calcule cuánto cuesta comprar 5 naranjas.
2. Luego quieres calcular el costo de comprar las 5 todas juntas.
3. Escribe una función que haga esto, y que se llame costoNaranjas().
4. Debe tomar un parámetro que es el costo de una naranja y multiplicarlo por 5
5. Llama a la función en la que las naranjas cuestan 5 dólares cada una.
Mi código:
var costoNaranjas = function(precio) {
console.log(precio * 5);
};
costoNaranjas(5);
Resultado: 25.
Sin embargo, una y otra vez me sale error, con el siguiente aviso:
Oops, try again! Tu función debería haber sido igual a 25, porque es el resultado de comprar 5 naranjas a 5 dólares cada una. Pero el resultado no es 25
Y como digo el resultado que aparece arriba ES ni más ni menos que 25. ¿Dónde está el fallo?
Al parecer en Codeacademy no se dan las soluciones, o te las apañas para acertar o no puedes seguir a la siguiente lección, ¿no?
Gracias, un saludo.
Hola
No sé javascript pero según lo que puedo deducir en tu code, no estás modificando/devolviendo el valor de "precio", solo estás mostrando, ¿me equivoco?.
¿Has probado así?:
function precio(naranjas)
{
return naranjas * 5;
}
console.log(precio(5));
Saludos
Pues yo sé menos todavía, pero si pongo entre paréntesis 5 al final, aquí:
costoNaranjas(5);
...estoy dando un valor al parámetro precio, ¿no es así? :huh: Y de hecho el resultado es 25, lo que se espera.
Probaré como tú dices, gracias.
Añado: con tu propuesta sale este aviso: "Oops, try again! No definiste costoNaranjas"
No avanzo con este lenguaje :(
Añado: Aaah ya veo, qué alivio, resulta que el ejercicio tiene errores. Y en efecto hay que utilizar return, aunque no lo han explicado todavía. ¡Gracias! :)