大小判定のアルゴリズム
基本は、IF文を使います。
でも、便利なmin関数を使えば、ソースは短くなります。
2つの数値だからいいですが、3つ以上になったらどうしましょう。
でも、それでも1行でできてしまいます。
min関数を入れ子にしてしまいます。4つの数値の場合です。
Javaでフィッシャーの正確確率検定(前編)というサイトで知りました。こんなこともありなのですね (@o@)
もっと数値が増えたり、数値の数がそのたびに変わるとかしたら・・・。
そんなときは、繰り返しを使います。
データ数が変化しても、大きな修正は必要ありません。
大小を判定するだけでもいろいろな考えがあるものです。
それぞれの特徴を知って、効率よくプログラミングしたいものです。
function myMin_1(){
var data1;
var data2;
var str;
data1 = prompt("input data1=?","");
data2 = prompt("input data2=?","");
if(data1>=data2){
str ="min="+data2;
}else{
str ="min="+data1;
}
alert(str);
}
でも、便利なmin関数を使えば、ソースは短くなります。
function myMin_2(){
var data1;
var data2;
var str;
data1 = prompt("input data1=?","");
data2 = prompt("input data2=?","");
str = "min="+Math.min(data1,data2);
alert(str);
}
2つの数値だからいいですが、3つ以上になったらどうしましょう。
でも、それでも1行でできてしまいます。
min関数を入れ子にしてしまいます。4つの数値の場合です。
Javaでフィッシャーの正確確率検定(前編)というサイトで知りました。こんなこともありなのですね (@o@)
function myMin_3(){
var data = new Array();;
var str = "";
for(i=0;i<4;i++){
data[i] = prompt("input data["+i+"]=?","");
}
min = Math.min(data[0],Math.min(data[1],Math.min(data[2],data[3])));
for(i in data){
ANS += data[i]+"\n";
}
str = str + "min="+min;
alert(str);
}
もっと数値が増えたり、数値の数がそのたびに変わるとかしたら・・・。
そんなときは、繰り返しを使います。
データ数が変化しても、大きな修正は必要ありません。
function myMin_4(){
var data = new Array();;
var str = "";
var min;
for(i=0;i<5;i++){
data[i] = prompt("input data["+i+"]=?","");
}
min = data[0];
for(i=1;i<5;i++){
min = Math.min(min,data[i]);
}
for(i in data){
str += data[i]+"\n";
}
str = str + "min="+min;
alert(str);
}
大小を判定するだけでもいろいろな考えがあるものです。
それぞれの特徴を知って、効率よくプログラミングしたいものです。
ソフトウエア | - | trackbacks (0)




