函式
1.編寫任意個數字的求和、差、積、商的函式
思路分析:首先求任意個數,因此需要一個能夠獲取函式傳遞引數個數及值的形參:arguments,方法不一,思路僅供參考
function f1(){
var sum=arguments[0], //將第一個數符初值分別給這幾個變數
cha=arguments[0],
ji=arguments[0],
shang=arguments[0];
for(var i=1;i<arguments.length;i++){ //用arguments獲取使用者傳入的引數
sum=sum+arguments[i];
cha=cha-arguments[i];
ji=ji*arguments[i];
shang=shang/arguments[i];
}
console.log("he"+sum+"cha"+cha+"ji"+ji+"shang"+shang);}f1(1,2,3,4);
2.編寫一個函式,計算任意兩個數字之間所能組成的奇數個數,數字必須是個位數比如: 計算0-3之間能組成的奇數個是01、21、03、13、23、31
思路分析:兩個數字任意組合,先判斷是否是奇數,然後再排除個位和十位相同的數即可方法:
function f3(x,y){
var count=0;
for(var i=x;i<=y;i++){ //x和y之間的數任意組合
for(var j=x;j<=y;j++){
var str=Number(i+""+j); //將x和y拼接組成2位的數再轉化為2位的數字
if(str%2!=0&&i!=j){
console.log(i+""+j);
count++;
}
}
}
console.log(count);
}
f3(0,3);
求斐波那契數列
1、1、2、3、5、8、13、21、34、55……F(0)=0,F(1)=1, F(n)=F(n-1)+F(n-2)(n>=2,n∈N*)
方法:
function f6(n){ //求斐波那契數列
var a1=1;
var a2=1;
for(var i=3;i<=n;i++){
var an=a1+a2; //每一項等於前兩項的和
a1=a2; //每次迴圈改變a1和a2使其指向下一次的前兩項
a2=an;
}
return an;}
console.log(f6(5));
2、//遞迴求斐波那契數列
function getFib(x){
if(x==1||x=2){
return 1;
}
return getFib(x-1)+getFib(x-2);}
console.log(getFib(12));