for循環運用,三角形

用for循環打出三角形、倒三角形、金字塔、99乘法表數組

 

三角形:spa

打出如圖三角形,分析行數與*個數的關係,用for循環 3d

for(var i=0;i<5;++i){//i表示行數
    var str="";//定義str 輸出爲空
    for(var j=0;j<i*2+1;++j){//j表示輸出*數,行數與*個數的關係2*i+1
        str=str+"*"    ;//拼接字符串
    }
    console.log(str);
}

當i=0時,輸出空,==>  j=0,j<1  ==>輸出str,code

i=1時,輸出空,==>  j=0,j<3  ==>輸出str ; j=1,j<3  ==>輸出str ; j=2,j<3  ==>輸出str,blog

 

倒三角形字符串

分析行數與*個數的關係:9-i*2it

for(var i=0;i<5;++i){//i表示行數
    var str="";//定義str 輸出爲空
    for(var j=0;j<9-i*2;++j){//j表示輸出*數
        str=str+"*"    ;//拼接字符串
    }
    console.log(str);
}

 

金字塔:  console

 

可看作兩個for循環,前面用空格表示for循環

for(var i=0;i<5;++i){//i表示行數
    var str="";//定義str 輸出爲空
    for(var k=0;k<4-i;++k){
        str=str+" ";//輸出空格
    }
    for(var j=0;j<i*2+1;++j){//j表示輸出*數,行數與*個數的關係2*i+1
        str=str+"*"    ;//拼接字符串
    }
    console.log(str);
}

 

例:輸出 9*9 口訣。class

var str = "";
for (var i = 0; i < 10; ++i) {
    str = "";
    for (var j = 1; j <= i; ++j) {//每行輸出數
        str += j + '*' + i +'='+i*j+ ' ';
    }
    console.log(str);
}

 

 

數組練習:

數組遍歷,取最大值、最小值

//題目:輸入數組,最大的與第一個元素交換,最小的與最後一個元素交換,輸出數組。
var arr1 = prompt("輸入數組,以,分隔");
var arr1 = arr1.split(','); //以逗號區分,創建數組
console.log(arr1);
var arr = arr1.map(Number); //將數組變爲數字數組
var max = arr[0];//定義第一個數爲最大數
var min = arr[0];//定義第一個數爲最小值
for (var i = 0; i <= arr.length; ++i) {
    if (max < arr[i]) {
        max = arr[i];//循環比較找最大值
        var a = i;
    }
}
for (var i = 0; i <= arr.length; ++i) {
    if (min > arr[i]) {
        min = arr[i];//循環比較找最小值
        var b = i;
    }
}

arr[a] = arr[0];//將第一個數賦值給最大值位置
arr[0] = max;//將最大值賦值給第一個數位置

arr[b] = arr[arr.length - 1];//將最後一個數賦值給最小值位置
arr[arr.length - 1] = min;//將最小值賦值在最後一個數位置
console.log(arr);
相關文章
相關標籤/搜索