Buenas; tengo un problemilla a la hora de imprimir datos dentro de un ejercicio de clase y ya no sé como hacerlo. El enunciado del ejercicio es el siguiente:
Introducir valores en prompt de JavaScript y devolver:
- nº de valores introducidos
- nº de valores numéricos introducidos
- media de los valores numéricos introducidos
- valor max y min de los numeros[/b]
Tengo los 3 primeros apartados hechos (hasta la media de los valores introducidos), pero no se me ocurre como sacar el valor máximo y mínimo de los valores que yo mismo he introducido. El código que tengo hasta el momento es el siguiente:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<html>
<head>
<link rel="stylesheet" type="text/css" href="css.css">
</head>
<body>
<h1>Mi trabajo</h1>
<br>
<script type="text/javascript">
var error="Todavía no sale :'(";
/* valor introducido */
var valnum;
/* total de valores introducidos */
var cont=0;
/* total de valores numéricos introducidos */
var contnum=0;
/* suma de los valores introducidos (mas adelante la media) */
var sumanum=0;
/* prompt para pedir valores */
valnum=prompt('Ingrese un valor','');
/* Inicio de bucle */
while (valnum!=null) {
document.write('<p class="resultado">Valor introducido: '+valnum+'</p>');
cont++;
if (valnum=parseFloat(valnum)) {
var sumanum=sumanum+valnum;
contnum++;
var media=sumanum/contnum;
}
valnum=prompt('Ingrese un valor','');
};
/* Fin de bucle */
document.write('<p class="enun">INFORMACIÓN GENERAL</p>');
/* Inicio de impresión de datos */
document.write('<center><table border="1" style="width:300px">');
document.write('<tr>');
document.write('<td>TOTAL VALORES<br> INTRODUCIDOS</td>');
document.write('<td>TOTAL VALORES<br> NUMÉRICOS INTRODUCIDOS</td>');
document.write('<td>MEDIA VALORES<br> NUMÉRICOS INTRODUCIDOS</td>');
document.write('<td>MAYOR VALOR<br> NUMÉRICO INTRODUCIDOS</td>');
document.write('<td>MENOR VALOR<br> NUMÉRICO INTRODUCIDOS</td>');
document.write('</tr>');
document.write('<tr>');
document.write('<td>'+cont+'</td>');
document.write('<td>'+contnum+'</td>');
document.write('<td>'+media+'</td>');
document.write('<td>'+error+'</td>');
document.write('<td>'+error+'</td>');
document.write('</tr>');
document.write('</table></center>');
document.write('<h1> Fin del documento<br>');
/* prompt devuelve valor con ACEPTAR o null si CANCELAR */
</script>
</body>
</html>
He estado dándole vueltas y no soy capaz de almacenar el máximo valor ni el mínimo. No sé como hacerlo y estoy bastante quemado con ésto. ¿Alguna ayuda? Gracias chic@s.
EDIT1: acabo de darme cuenta de que la estructura debería estar dentro del if >
if (valnum=parseFloat(valnum))