// en(x) Esponential Notation
// trunc(x,n)
// sn(x) Scientifi Notatio
// intrnd(a,b)
// realrnd(a,b)
// trunc(x,n)
//
//
//
//
//
//
dot='.'
function trunc(x,n){
eval("y=10E"+(n-1))
return parseInt(x*y)/y
}
function round(x,n){
eval("y=10E"+(n-1))
return Math.round(x*y)/y
}
function en(x){ // Esponential Notation
k=-22
while(Math.pow(10,k+=3)<=Math.abs(x)){}
s=" "+ trunc(x/Math.pow(10,k-2),3)+" "+dot+"10"+""+(k-2)+""
return s
}
function sn(x){ // Scientific Notation
var s=""
k=-25
while(Math.pow(10,k++)<=Math.abs(x)){}
s=" "+ round(x/Math.pow(10,k-2),3)+" "+dot+"10"+""+(k-2)+""
return s
}
function hide(x,n){ // construct a vector with many wrong results and the n-th result correct
var vv=new Array(11); // each wrong result is the double of the preceding
var y=x/Math.pow(2,n);
for(var i=1;i<=10;i++){
vv[i]=sn(y*Math.pow(2,i));
}
return vv;
}
function hide2(x,n){ // idem like hide but with alternate sign to confuse ideas
vv=new Array(11);
var y=x/Math.pow(2,n)*Math.pow(-1,n);
for(var i=1;i<=10;i++){
vv[i]=sn(y*Math.pow(2,i)*Math.pow(-1,i));
}
return vv;
}
function rnd(){return Math.random()} // returns a real number between 0-1
function intrnd(a,b){x=parseInt(Math.random()*(b-a)+a); return x;}
function realrnd(a,b){ // return a real number between a and b
return rnd()*(b-a)+a
}
function intRnd(a,b){return intrnd(a,b)}
function realRnd(a,b){return realrnd(a,b)}
function scegli(a){return ' '+a[intero(0,a.length)]+' '}
function choise(a){return ' '+a[intero(0,a.length)]+' '}
//function E(x){ return ' 10'+x+' '}
function mischia(v){ // scambia (lunghezza Vettore*4) volte coppie del vettore
var l=v.length;
for(var i=1;i<=v.length*4;i++){
var a=parseInt(Math.random()*l);
var b=parseInt(Math.random()*l);
var x=v[a];var y=v[b];
v[b]=x;v[a]=y;
}
return v;
}
function intero(a,b){x=parseInt(Math.random()*(b-a)+a); return x;}
function scegli(a){return ' '+a[intero(0,a.length)]+' '}
//function E(x){ return ' 10'+x+' '}
function mischia(v){ // scambia (lunghezza Vettore*4) volte coppie del vettore
l=v.length;
for(var i=1;i<=v.length*4;i++){
a=parseInt(Math.random()*l);
b=parseInt(Math.random()*l);
x=v[a];y=v[b];
v[b]=x;v[a]=y;
}
return v;
}