for循環示例:
// 1-10000以內的完數 // 完數:因子之和相加等於這個數 // 例如:6的因子為1,2,3:1+2+3=6 let i ,j; let sum ; for(i=1;i<=10000;i++){ sum = 0; for(j=1;j<i;j++){ if(i%j == 0){ sum +=j; } } if(i == sum){ console.log(i) } }
// 讓用戶輸入行數,使用for循環嵌套打出正着的星星出來,行數等於用戶輸入的數字 let readline = require("readline-sync"); console.log("請輸入行數"); let line = readline.question(""); let strSpace = ""; let strStar = ""; let str = ""; for(let i = 1;i<=line;i++){ for(let j =1;j<=line-i;j++){ strSpace = strSpace + " "; } for(let k = 1;k<=2*i-1;k++){ strStar = strStar + "*"; } str = strSpace + strStar; console.log(str); str = ""; strSpace = ""; strStar = ""; }
讓用戶輸入行數,使用for循環嵌套打出倒着的星星出來,行數等於用戶輸入的數字
// 讓用戶輸入行數,使用for循環嵌套打出倒着的星星出來,行數等於用戶輸入的數字 let readline = require("readline-sync"); console.log("請輸入行數"); let line = readline.question(""); let strSpace = ""; let strStar = ""; let str = ""; for(let n =1;n<=line;n++){ for(let i=1;i<=n-1;i++){ strSpace=strSpace+" "; } for(let j=1;j<=line*2+1-2*n;j++){ strStar=strStar+"*"; } str=strSpace+strStar; console.log(str); str = ""; strSpace = ""; strStar = ""; }
有1,2,3,4這么4個數,能組成多少個互不相同且不含有重復數字的三位數?都是多少?
// 有1,2,3,4這么4個數,能組成多少個互不相同且不含有重復數字的三位數?都是多少? let sum =0; for(let a =1;a<=4;a++){ for(let b = 1;b<=4;b++){ if(a === b){ continue; } for(let c =1;c<=4;c++){ if(a === c || b === c){ continue; } console.log(a,b,c); sum++; } } }console.log(sum);
初始的二維數組是一個,3行4列的數組。將其轉換為4行3列的二維數組
let arr = [[2,3,6,8],[5,7,0,9],[1,3,5,7] ]; let str = []; for(let i = 0;i<arr[0].length;i++){ str[i] = []; } console.log(str) for(let j =0;j<arr.length;j++){ for(let k =0;k<arr[j].length;k++){ str[k][j]=arr[j][k]; } } console.log(str);
數組冒泡排序
let arr =[15,56,21,34,5,1,30,78,7,-9,0,10,778] let i,j,temp; for(i=1;i<arr.length;i++){ //第一個for控制比較輪數:根據簡單判斷,例如4個數一共冒泡3次,所以總的冒泡次數時n-1次 for(j=0;j<arr.length-i;j++){ //第二個for控制比較次數: if(arr[j] > arr[j+1]){ temp = arr[j]; arr[j] = arr[j+1]; arr[j+1] = temp; } } }console.log(arr);
數組選擇排序
let arr =[15,56,21,34,5,1,30,78,7,-9,0,10,778] let i,j,temp; // 簡單判斷,例如4個數,外層循環一共是3次, for(i = 0;i<arr.length-1;i++){ // 內循環時從上面的數的相鄰的數開始 for(j = i +1;j<arr.length;j++){ if(arr[i] > arr[j]){ temp = arr[i]; arr[i] = arr[j]; arr[j] = temp; } } } console.log(arr);