Me ayudan con este codigo???

mandracke

Bovino maduro
#1
me han pedido esto en clases: [FONT=&quot]1)[FONT=&quot] [/FONT][/FONT]Dado un array de 10 elementos (con valores ingresados por el usuario), encontrar:
a) La suma de los elementos del array
b) El elemento mayor
La primera parte la resolvi sin problemas haciendo un parseInt de la suma total de los elementos. Para la segunda parte defini una funcion grande que recibe el dato en cada pocicion del array y lo compara con una variable si el valor de esta es menor que el dato, se carga con el mismo y se compara con el dato en la posicion siguiente, el problema que tengo es que al llevarlo a codigo no me sale la parte b. les dejo el codigo que hice para que lo vean y puedan decirme que estoy haciendo mal.
Código:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script>
function grande(datos)
{
    if (mayor<=datos)
    {
        mayor=datos
    }
    return mayor;
}
</script>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento sin título</title>
</head>

<body>
<script>
total=0
var datos = new Array(10)
for (pos=0;pos<=9;pos++){
datos[pos]=parseInt(prompt("Valor",0))
total=total+datos[pos]
}
document.write(total)
<br>
alert(grande(datos));
</script>
</body>
</html>
 
#2
Hola jeje traigo algo de prisa pero te pongo un código que te da el número mayor, sólo agregale que te los vaya sumando y ya te queda, si no puedes mañana lo pongo completo

Código:
<SCRIPT LANGUAGE="JavaScript">
arreglo=new Array(10);
for(i=0;i<arreglo.length;i++){
v=prompt("Ingrese numeros:");
v=v*1;
arreglo[i]=v
}
var mayor=arreglo[0];
for (var j=0;j<arreglo.length;j++){
mayor=Math.max(mayor,arreglo[j]);
}
document.write("El numero mayor es :" + mayor + "<br>");
</script>
 

pval

Bovino adolescente
#3
en la funcion grande necesitas hacer un ciclo que recorra todo el arreglo (datos), ya que la condicion no esta bien escrita al momento de que comparas un entero con todo el arreglo, necesitarias ir comparando posicion por posicion.
 

mandracke

Bovino maduro
#4
array de array

Gracias amigos les cuento que he resuelto el problema, y ademas los dos puntos siguientes (calcular el menor y el promedio) mi problema ahora esta en que devo calcular los numeros mayores a promedio, para lo que devo hacer un array de los valores mayores a una variable. mi idea es crear un nuevo array con la condicion de que "dato2" se incremente cuando es mayor que promedio pero no se como hacerlo, aqui dejo el codigo que si me ha funcinado por si a alguno le es util:

Código:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento sin título</title>
</head>

<body>
<script>
total=0
var datos = new Array(10)
var mayor=0
var menor=0
var mprom=0
for (pos=0;pos<=9;pos++){
datos[pos]=parseInt(prompt("Valor",0))
    if (mayor<=datos[pos])
    {
        mayor=datos[pos]
        total=total+datos[pos]
        promedio=total/10
    }
        if (menor>=datos[pos])
    {
        menor=datos[pos]
    }
}
document.write("La suma total es "+(total)+", el menor es " + (menor)+", el mayor es "+(mayor)+" y el promedio es " + (promedio))
</script>
</body>
</html>
 
Arriba