1. 程式人生 > >js初學-3

js初學-3

一個 ext 輸入 asc sort 查找 長度 mat ++

一.兩種排序方法

1.

<script type="text/javascript">
function bubllesort(){
var n=prompt("請輸入預期數組長度");
var arr=[];
while(arr.length<n){
arr.push(Math.floor(Math.random()*100));
}
document.write(arr);
document.write("<br>");
var t=0;
for(var i=0;i<n-1;i++){
for(var j=0;j<n-i-1;j++){
if(arr[j]>arr[j+1]){
t=arr[j];
arr[j]=arr[j+1];
arr[j+1]=t;
}
}
}
document.write(arr);
}
</script>
<button onclick="bubllesort()">冒泡排序</button>

2.

<script type="text/javascript">
function sort(){
var n=prompt("請輸入預期數組長度");
var arr=[];
while(arr.length<n){
arr.push(Math.floor(Math.random()*100));
}
document.write(arr);
document.write("<br>");
for(var i=0;i<n;i++){
for(var j=i+1;j<n;j++){
if(arr[i]>arr[j]){
t=arr[i];
arr[i]=arr[j];
arr[j]=t;
}
}
}
document.write(arr);
}
</script>
<button onclick="sort()">排序</button>

二.雙色球

方法1:用indexOf()查找敏感詞方法

function tcball(){
var arr=[];
var num;
while(arr.length<6){
num=Math.floor(Math.random()*31+1);
if(arr.indexOf(num)==-1){
arr.push(num);
}
}
document.write(arr);
document.write("<br>");
num=Math.floor(Math.random()*16+1);
document.write(num);
}
</script>
<button onclick="tcball()">生成雙色球</button>

方法2:用for循環

function tcball(){
var arr=[];
var stu=[];
var j=0;var k=0;var num=0;
for(i=0;i<31;i++){-----------------------//因為紅球在1-31裏隨機選擇,就先從1到31生成31個連續自然數給arr數組;
arr[i]=i+1;
}
while(stu.length<6){------------------//設定循環條件
num=Math.floor(Math.random()*31+1);//生成隨機數num;
for(j=0;j<arr.length;j++){--------------//此循環實現讓生成的隨機數num與arr數組中的全體元素對比;
if(num==arr[j]){--------------------------//判斷,只要隨機數等於arr中的某個元素,就讓這個元素進入stu數組,否則,就一直生成隨機數與arr數組對比.
stu.push(num);-------------------------//把隨機數送進stu數組;
arr[j]=arr[arr.length-1];---------------//讓arr數組最後一個元素等於當前與num相等的元素,然後愛人如數組長度減去1,間接的相當於把當前這個元素從1-31中剔除掉了
arr.length-=1;
}
}
}
document.write(stu);
document.write("<br>");
num=Math.floor(Math.random()*16+1);//增加一個元素,即第七個藍球
document.write(num);
}
</script>
<button onclick="tcball()">生成雙色球</button>

js初學-3