Autor Tema: Suma de valores en un mismo Array Javascript para calcular la suma y la media  (Leído 51851 veces)

FGP

  • Sin experiencia
  • *
  • Mensajes: 10
    • Ver Perfil
    • Undergroove Beats Records
Buenas amigos,

Estoy haciendo lo siguiente:

Intento solicitar a través de un Prompt numeros que terminen en cero, luego de esto sumar todos estos numero para sacar por ultimo el promedio,

Solo he podido llegar hasta donde almaceno los números, no doy con la suma y mucho menos con el promedio.

Código: [Seleccionar]
var numero = Array(4);
var suma;
 
for (i = 0; i < numero.length; i++){
    numero[i] = prompt("Ingrese un numero que termine en cero");
 
    suma=numero; //Aquí debería estar la suma de los números ingresados por el usuario
}
 
document.write(suma);
« Última modificación: 28 de Septiembre 2016, 21:47 por Alex Rodríguez »

pedro,,

  • Moderador Global
  • Experto
  • *******
  • APR2.COM
  • Mensajes: 1292
    • Ver Perfil
Re:Suma de valores en un mismo Array Javascript
« Respuesta #1 en: 18 de Septiembre 2016, 12:34 »
Hola Robinson Gomez.

Lo primero es que si estas aprendiendo JavaScript, recomendarte este curso gratuito.
https://www.aprenderaprogramar.es/index.php?option=com_content&view=category&id=78&Itemid=206
Hay aprenderás mucho sobre JavaScript y enseguida solucionarías problemas como los que planteas.

También hay mas cursos gratuitos en este enlace.

https://www.aprenderaprogramar.es/index.php?option=com_content&view=article&id=57&Itemid=86

Sobre el problema que planteas hay algunas cosas a cambiar, te dejo una posible solución:

Código: [Seleccionar]
<!DOCTYPE html>
<html lang="es">
<head>
<title>aprenderaprogramar.com</title> 
<meta charset="utf-8" />
<script>

var numero =[];
var suma = 0;

for (var i = 0; i < 4; i++){
numero[i] = Number(prompt("Ingrese un numero que termine en cero"));
suma = suma + numero[i];
}

document.write('suma = ' +suma + '; promedio = ' + suma/4);
</script>
</head>
<body>
</body>
</html>

Saludos. ;D

FGP

  • Sin experiencia
  • *
  • Mensajes: 10
    • Ver Perfil
    • Undergroove Beats Records
Re:Suma de valores en un mismo Array Javascript
« Respuesta #2 en: 20 de Septiembre 2016, 21:33 »
Muchas gracias amigo por tus consejos, en efecto estoy aprendiendo

El caso planteado es este:
Leer una secuencia de números terminada en cero por medio de una ventana emergente, almacenar los números en un arreglo, hallar el promedio he imprimirlo en el documento html.
Nota: el promedio de los números se calculará sin incluir al que termina la secuencia (el cero).


Se me ocurrió hacer esto, a ver que te parece:

Código: [Seleccionar]
var numero = Array(4);
var numero2 = Array(1);
var suma=0;
var promedio=0;

    for (i = 0; i < numero.length; i++){
        numero[i] = parseInt(prompt("Ingrese un número"));
    }

numero2=parseInt(prompt("Ingrese el número cero"));
    if(numero2==0){
        alert("Gracias");
    }else{
        alert("El número que ha introducido no es el cero");
    }

numero[0];
numero[1];
numero[2];
numero[3];
numero[4]=numero2;
   
suma=numero[0]+numero[1]+numero[2]+numero[3];
promedio=suma/4;

document.write("El promedio de los números ingresados es: "+promedio);

document.write("<br></br>");

document.write("El ultimo número que usted ingreso fue el: "+numero[4]+" el cual no fué incluido en el calculo del promedio");

pedro,,

  • Moderador Global
  • Experto
  • *******
  • APR2.COM
  • Mensajes: 1292
    • Ver Perfil
Re:Suma de valores en un mismo Array Javascript
« Respuesta #3 en: 21 de Septiembre 2016, 01:08 »
Buenas.

Lo que yo entiendo que hay que hacer es que se deben introducir números mediante ventana  emergente hasta que se introduzca el 0.

Para empezar no necesites declarar el array de la forma que lo haces, no hay necesidad de tener un array lleno de elementos que contengan 'undefined' como valor. En este enlace puedes leer acerca de ello:

https://www.aprenderaprogramar.es/index.php?option=com_content&view=article&id=799:arrays-javascript-arreglos-declaracion-inicializacion-array-vacio-length-undefined-ejemplos-cu01121e&catid=78:tutorial-basico-programador-web-javascript-desde-&Itemid=206

Para poder saber si introducimos el 0, necesitaras usar un bucle 'while' o 'do while', porque el if que usas dejará seguir ejecutandose el código hallas introducido el 0 o no.

También tienes esta serie de líneas, que no entiendo con que finalidad las introdujiste...
Código: [Seleccionar]
numero[0];
numero[1];
numero[2];
numero[3];
numero[4]=numero2;


te dejo una posible solución para que compares con tu código y si hace falta explicar algo, preguntalo ;), sin ningún reparo.

Código: [Seleccionar]
<!DOCTYPE html>
<html lang="es">
<head>
<title>Promedio de secuencia de números</title>
<meta charset="utf-8"/>
<script type="text/javascript">
var numero = [];
var suma=0;
var promedio=0;
var i = -1;
do{
i++
numero[i] = parseInt(prompt("Ingrese un número, 0 = fin secuencia"));
suma = suma + numero[i];
}while(numero[i]!=0);
promedio=suma/(numero.length-1);
document.write('Suma: ' + suma + '<br></br>');
document.write('El promedio de los números ingresados es: ' + suma + '/' + (numero.length-1) + '= ' + promedio);
document.write('<br></br>');
document.write('El ultimo número que usted ingreso fue el: ' + numero[numero.length-1] + ' el cual no fué incluido en el calculo del promedio');
</script>
</head>
<body>
</body>
</html>

Saludos. ;D

FGP

  • Sin experiencia
  • *
  • Mensajes: 10
    • Ver Perfil
    • Undergroove Beats Records
Re:Suma de valores en un mismo Array Javascript
« Respuesta #4 en: 21 de Septiembre 2016, 05:28 »
Muchas gracias amigo Pedro,
Me parece que debo repasar en buena medida lo relacionado a (for - While y Do While)

Ahora mismo estoy con otro inconveniente ya que no logro dar con la solución al siguiente caso:

/*Cree un programa que genere un número aleatorio del 1 al 10 y le pida al usuario un número comprendido entre ese rango. Verifique si el número que ingreso el usuario es el mismo que el de la variable aleatoria, de ser así mandar un mensaje de felicitaciones y de no ser así repetir el proceso hasta que coincida el número insertado por el cliente con el número aleatorio generado. */

Código: [Seleccionar]
function sorteo () {

        var numero = parseInt(prompt("Ingrese un número entre el 1 y el 10, para participar en el sorteo de hoy"));
        var aleatorio = (Math.round(Math.random()*9)+1);
       
         /*----------------------------------------------------------------   */
   
                if ( (numero >= 1)&&(numero <= 10) ){
                    alert("Gracias, usted esta participando con el número: "+numero);
                }else{
                    alert("Debe ingresar un número entre el 1 y el 10, por favor intente nuevamente");
                };
       
                if(numero===aleatorio){
                    alert("Felicidades...!!! \nUsted ha resultado ganardor de $10.000");
                   
                }else{
                    alert("Lo sentimos, en esta oportunidad usted no ha resultado ganador \nIntentelo nuevamente");
                }
               
          /*----------------------------------------------------------------   */
}

sorteo();

Pude llegar hasta aquí, lo que no logro plasmar es la iteración para cuando coloque un número distinto entre 1 y 10, así como la iteración en caso de que no sea ganador (el numero random, no sea igual al numero introducido)

pedro,,

  • Moderador Global
  • Experto
  • *******
  • APR2.COM
  • Mensajes: 1292
    • Ver Perfil
Re:Suma de valores en un mismo Array Javascript
« Respuesta #5 en: 21 de Septiembre 2016, 12:50 »
Hola Robinson.

Lo primero pedirte que para cuando tengas nuevas dudas sobre problemas distintos, abras un nuevo tema en el foro, así cada hilo hablara de un solo tema y no ensuciamos los hilos.

Como bien dices, te hace falta repasar sobre los bucles, porque en este ejercicio vuelves a tener el mismo problema, se ejecuta una vez el código, y aciertes o no se da por terminada la ejecución.

Te dejo unos enlaces para que le des un repaso a los bucles:
https://www.aprenderaprogramar.es/index.php?option=com_content&view=article&id=809:for-javascript-bucles-saber-tamano-de-array-con-length-break-detener-bucle-ejemplos-ejercicio-cu01131e&catid=78:tutorial-basico-programador-web-javascript-desde-&Itemid=206

https://www.aprenderaprogramar.es/index.php?option=com_content&view=article&id=810:while-javascript-do-while-continue-saltar-bucle-bucles-con-label-etiqueta-o-nombre-ejemplos-cu01132e&catid=78:tutorial-basico-programador-web-javascript-desde-&Itemid=206

Sobre la solución a tu ejercicio, con este otro enlace que te dejo,en el ejercicio 1 que apararece podrás solucionarlo...
https://www.aprenderaprogramar.com/foros/index.php?topic=3549.msg15418#msg15418

Cualquier duda que te quede, ya sabes, no te quedes con ella y pregunta.  ;)

Saludos. ;D

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".