JS 部分アルゴリズム

JS 部分アルゴリズム

素数リング

function t1(){
    
    
    this.as=Array(20);//存放环
    this.as[0]=1;
     this.run=function (n) {
    
    
        this.run1(this.as,n);
    }
      this.run1=function(as,n){
    
    
              if(n==8){
    
    
                 console.log(this.as);
                  return;
              }
          for(var j=2;j<=8;j++){
    
    
              //判段这个数用过没有
              if(this.isUse(this.as,j)&&this.judge(this.as,j,n)){
    
    //如果没用过返回true
               //如果当前的j和j-1之和是素数  如果不是素数则进入下一个循环
                     this.as[n]=j;
                     this.run1(this.as,n+1);
                     as[n]=0;//到最后一位时输出结果并清空在回到上一层 n-1
              } 
          }
      }
      this.isUse=function (as,i) {
    
    
         // console.log(as);
          for(let p=0;p< as.length;p++){
    
    
              if(i==as[p]){
    
    
                  return false;
              }
          }
              return true;
      }
      this.isZs=function(i){
    
    //是素数返回true  不是返回false
          for(var k=2;k<=Math.sqrt(i);k++){
    
    
              if(i%k==0){
    
    
                  return false;
              }
          }
          return true;
      }
      this.judge=function(as,i,n){
    
    
          if(i==0){
    
    
              return true;
          }
          else if(this.isZs(as[n-1]+i)){
    
    
      //      console.log(this.getNumber(i)+this.getNumber(i+1));
              return true;
          }
          else{
    
    
              return false;
          }
      }
   }

小さなこぶ

function cssAttrCameAttr(cssAttr){
    
    
    var cameAttr='';
    var count=0;
    cssAttr= cssAttr.split('-');
    for(var item of cssAttr){
    
    
        if(count>0){
    
    
            cameAttr+=item.charAt(0).toLocaleUpperCase().concat(item.substring(1));
        }else{
    
    
            cameAttr+=item;
        }
        count++;
    }
    return cameAttr;

こぶ

function cssAttrCameAttr1(cssAttr){
    
    
    return cssAttr.replace(/-([a-z])/g,function(match,i){
    
    
        return  i.toLocaleUpperCase();
    });
}

ピタゴラスの定理

function gouGu(n){
    
    //a:1 b:1 2 3 4 5 6 7 8 9 ... n/2      
    var tt=-1;        
    var arr1={
    
    };
    for(var i=1;i<=n;i++){
    
    
        for(var j=i;j<=n;j++){
    
    
            for(var k=j;k<=n;k++){
    
    
                var a1=Number(Math.pow(i,2));
                var a2=Number(Math.pow(j,2));
                var res=(a1+a2);
                // var flag=true;
                // flag=Math.pow(i,2)+Math.pow(j,2)==Math.pow(k,2)
                console.log("i: "+Number(Math.pow(i,2))+"  j:"+Number(Math.pow(j,2)));
                console.log(''+Math.pow(i,2)+Math.pow(j,2)) ;
                if(res==Math.pow(k,2)&&((i+j)>=k)){
    
    
                   ++tt;
                   arr1[tt]=new Array(i,j,k);
                }
            }
        }
    }
   return arr1;
}

おすすめ

転載: blog.csdn.net/qq_51649346/article/details/124391945