code utilisé: RegExp() , sort() , split() , length

Faire des statistiques

La machine : série statistique simple

Rentrez les caractères de la série statistique en séparant les nombres avec des ; mais en n'en mettant ni en première ni en dernière position.

par exemple 35;24.8;34.78;124;8.9 . Les nombres décimaux s'écrivent avec un point.



En cliquant sur Étude de la série, vous obtenez les indicateurs usuels .

nombre de termes
moyenne
variance
écart-type
minimum
premier décile
premier quartile
médiane
troisième quartile
neuvième décile
maximum

le code


<script type="text/javascript">
function stat()
{	var reg=new RegExp(";", "g");// expression régulière: on va chercher tous les ;
	var list=document.machineStat.entree.value;
	// on va découper la chaine de caractères (le séparateur est ;)
	//et on crée un tableau
	var talist=list.split(reg);
	//on mesure la longueur du tableau
	var q=talist.length
	document.machineStat.nombre.value=q;
	var somme=0;
	var sommecarre=0;
	for (var i=0;i<q;i++)
			{
			talist[i]=talist[i]*1;	//pour passer de string à number
			somme=somme+talist[i];
			sommecarre=sommecarre+(talist[i]*talist[i]);
			};
	talist.sort(function(x,y){return x-y});
	//document.machineStat.tri.value=talist.join(" :");
	document.machineStat.minimum.value=talist[0];
	document.machineStat.maximum.value=talist[q-1];
	document.machineStat.d1.value=talist[Math.ceil(q/10)-1];
	document.machineStat.d9.value=talist[Math.ceil(9*q/10)-1];
	document.machineStat.q1.value=talist[Math.ceil(q/4)-1];
	document.machineStat.q3.value=talist[Math.ceil(3*q/4)-1];
	//pour le calcul de la médiane, on cherche si le nombre de termes est pair ou pas.
	var parite=0;
	parite=q%2;
	document.machineStat.med.value=
		parite==0?0.5*(talist[q/2]+talist[(q/2)-1]):talist[Math.floor(q/2)];
	var mean=0;
	mean=somme/q;
	document.machineStat.moyenne.value=mean;
	var variance=0;
	variance=sommecarre/q-mean*mean;
	document.machineStat.variance.value=variance;
	document.machineStat.ecartType.value=Math.sqrt(variance);
}

function effacer()
{	document.machineStat.reset();//reset() est une méthode de form
}
function exemple()
{	var ex="35;24.8;34.78;124;8.9";
	document.machineStat.entree.value=ex;
}
</script>