JS各种算法小例子

时间:2021-08-23 13:00:14

<!DOCTYPE html>
<html>
<head>
    <title>js</title>
    <meta charset="utf-8">
    <script type="text/javascript">
// 1至100 连加
               sum=0;     
          for(var i =1; i<=100;i++){
                  sum=sum+i;        
              }
              console.log(parseInt(sum));
// 1至13 连乘
              sum=1;        
          for(var i =1; i<=13;i++){
                 sum=sum*i;        
              }
              console.log(parseInt(sum));
// 圆的周长与面积
              var sum=3;        
            function area(r){
              alert("圆的面积:"+3.14*Math.pow(r,2));
              alert("圆的周长:"+3.14*2*r);
              }
             var a = parseInt(prompt("输入半径:"+"r"));
            area(3);
// 两个数比较大小
            var num1 =prompt("请输入一个整数1");        
              var num2 =prompt("请输入一个整数2");
            alert((compare(num1,num2)));
              function compare(w1,w2){
              if(w1>w2){
                  return w1;
              }
              else if(w1<w2){
                  return w2;
              }
          }
// 1至1000能被5或6整除的数
         for(var i = 1;i<=1000;i++)    
         {if(i%5==0||i%6==0){
             console.log(i);
         }
         }
// 1至60不能被7整除和不带有7的数字
         for(i=1;i<=60;i++){                
             if(i%7!=0&&i%10!=7){
                 console.log(i);
             }
         }
// 找水仙花数
         for(i=100;i<=999;i++){            
             var sum1=parseInt(i/100);
             var sum2=parseInt(i%100/10);
            var sum3=i%10;
             if(Math.pow(sum1,3)+Math.pow(sum2,3)+Math.pow(sum3,3)==i){console.log(i);
             }
         }
// 用函数法找水仙花数
         for(i=100;i<=999;i++){        
             if(shuixianhua(i)==true){
                 console.log(i);
             }
         }
         function shuixianhua(num){
            if(num==Math.pow(parseInt(num/100),3)
                 +Math.pow(parseInt(num%100/10),3)+Math.pow(num%10,3)){
                return true;
             }else{
                 return false;
             }
         }
// 用户输入一个数,输出因数的个数
         var a =prompt("用户输入一个数");        
         var amount=0;
         for(i=1;i<=a;i++){
             if(a%i==0){
                 amount++;
             }
         }
// 判断质数
         var a =prompt("用户输入一个数");        
         var amount=0;
         for(i=1;i<=a;i++){
             if(a%i==0){
                 amount++;
            }
         }
                 if(amount==2){
                     alert("是质数");
                 }else{
                    alert("不是质数");
                 }
// 输出1至10000的所有质数
         for(var i = 2 ; i <= 10000;i++){
            var sum = 0;
            for(var j = 1 ; j <= i ; j++){
                if(i % j == 0){
                    sum ++;
                }
            }
            if(sum == 2){
                console.log(i);
            }
        }    
// 函数法判断三个数的大小
         var num = zhaodashu(prompt("请输入第一个整数"),zhaodashu(prompt("请输入第二个整数"),prompt("请输入第三个整数")));
         alert("最大数:"+num);
         function zhaodashu(a,b){
             if(a >= b){
             return a;
            }else{
             return b;
             }
         }
 // 3/2+4/3+5/4.........+102/100
          var sum=0
          for(a=3;a<=101;a++){
             
              sum=sum+a/(a-1);
          }
          console.log(sum);

</script>
</head>
<body>

</body>
</html>