Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
3
respuestas

Duda sobre la media de familias con la variable edad

En el ejercicio noto que "edad" se pone dentro del while y me gustaría saber el porqué ¿ acaso no es una variable que podría ir afuera del while? Recuerdo que el maestro dijo que las variables quedan fueras. Entonces mi pregunta también es: ¿edad podría convertirse en variable? Les comparto el código. De antemano gracias :)

  function imprimir(frase) {

    document.write(frase);
    saltarLinea();
}

var numeroMiembros = parseInt(prompt("Ingrese la cantidad de miembros de su familia"));
var contador = 1;
var totalEdades = 0;



while(contador <= numeroMiembros){

    edad = parseInt(prompt("Ingrese la edad del familiar"));
    totalEdades = totalEdades + edad;
    contador++;  
}

mediaEdades = totalEdades/numeroMiembros;


imprimir("La media de las edades de la familia es " + mediaEdades);

imprimir ("fin");

3 respuestas

Hola, es que edad no tiene caso que la ponga afuera, cada que pasa el ciclo se va a sobreescribir, y de todas formas en ningun momento se le llama fuera del ciclo. Las otras variables se inicializan fuera porque seran llamadas al final del programa. Si declaras var edad = 0, fuera del ciclo, cuando pida un valor nuevo por cada miembro, el valor anterior sera borrado y reemplado, por cada miembro.

Buenos días, el motivo por el cual la variable edad está dentro del ciclo es porque cambia su valor cada vez que se itera(repite) dentro del mismo

while(contador <= numeroMiembros){

    edad = parseInt(prompt("Ingrese la edad del familiar"));
    totalEdades = totalEdades + edad;
    contador++;  
}

Si son 4 miembros de la familia, la repetición del ciclo while nos garantiza preguntar 4 veces la edad del familiar. La edad de cada familiar cambia en cada repetición porque es como si le preguntaran a uno diferente cada vez que se repite. Supón que tu familia es Papá, Mamá , un hermano y tú. Si la variable edad estuviera por fuera del ciclo, solo tomaría una edad, es como si todos los miembros tuvieran la misma edad. Ahora que la variable está dentro del ciclo, entonces cada vez que se repite, pregunta la edad de un miembro diferente y toma ese valor con el fin de poder realizar el calculo en la variable totalEdades.

Es recomendable cada vez que se escriben códigos, tratar de hacer una especie de pruebas unitarias que puedes realizar incluso en una hoja de papel con el objetivo de comprobar cómo está funcionando el flujo del código.

Wow! Mill gracias compañeros me iluminaron <3