qq_28293593 2017-01-04 03:13 采纳率: 0%
浏览 3104

我现在在做javascript的题,有几道题不会,请大家帮帮我。

1.输出四位自然数中各位数字之和为6并且各位数字互不相同的数,并统计个数。

2.由数字1、2、3、4、5、6六个数字共可组成多少个没有重复数字的四位数,输出这些数据并统计个数。

3.某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字都加上5,然后用和除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换。

4.一个六位自然数,将其末位数字7移到首位,其余数字依次向右移动一位,得到一个新的六位数,新的六位数是原六位数的4倍,求原数。

5.有一个两位数,如果在它的前面添一个3,可得到一个三位数,把3添在它的后面,也可以得到一个三位数,这两个三位数相差468,求原来的两位数。

  • 写回答

1条回答 默认 最新

  • 淘人居士 2017-01-04 06:20
    关注
     //1.输出四位自然数中各位数字之和为6并且各位数字互不相同的数,并统计个数。
    var test1=function(){
        var count=0;
        for(var i=1000;i<=9999;i++){
            var nums=i.toString();
            var sum=0;
            for(var j=0;j<nums.length;j++){
                sum+=parseInt(nums[j]);
            }
            if(sum===6){
                console.log(i);
                count++;
            }
        }
        console.log(count);
    }
    //2.由数字1、2、3、4、5、6六个数字共可组成多少个没有重复数字的四位数,输出这些数据并统计个数。
    var test2=function(){
        var result=[];
        var eles="123456";
        for(var i=0;i<eles.length;i++){
            for(var j=0;j<eles.length;j++){
                for(var k=0;k<eles.length;k++){
                    for(var l=0;l<eles.length;l++){
                        if(eles[i]!==eles[j]&&eles[j]!==eles[k]&&eles[k]!==eles[l]&&eles[i]!==eles[k]&&eles[i]!==eles[l]&&eles[j]!==eles[l]){
                            var num=parseInt(eles[i]+eles[j]+eles[k]+eles[l]);
                            if(result.indexOf(num)===-1){
                                console.log(num);
                                result.push(num);
                            }
                        }
                    }
                }
            }
        }
        console.log(result.length);
    }
    /*
    3.某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字都加上5,然后用和除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换。 
    */
    var test3=function(n){
        var nums=n.toString().split('');
        if(nums.length===4){
            for(var i=0;i<nums.length;i++){
                nums[i]=(parseInt(nums[i])+5)%10;
            }
            var trans=nums[0];
            nums[0]=nums[3];
            nums[3]=trans;
            trans=nums[1];
            nums[1]=nums[2];
            nums[2]=trans;
            return nums.join('');
        }
        return n;
    }
    /*
    4.一个六位自然数,将其末位数字7移到首位,其余数字依次向右移动一位,得到一个新的六位数,新的六位数是原六位数的4倍,求原数。
    */
    var test4=function(){
        /*
        题目理解为算式
        (700000+x)/(10x+7)=4;
        39x=699972;
        */
        var x=699972/39;
        var result=x*10+7;
        console.log(result);
    }
    /*
    5.有一个两位数,如果在它的前面添一个3,可得到一个三位数,把3添在它的后面,也可以得到一个三位数,这两个三位数相差468,求原来的两位数。
    */
    var test5=function(){
        /*
        题目理解为算式
        468=|(300+x)-(10x+3)|
        468=|297-9x|
        468=297-9x或-468=297-9x;
        */
        var x1=(468-297)/-9;
        var x2=(-468-297)/-9;
        console.log("x1:"+x1+",x2:"+x2);
    }
    
    
    评论

报告相同问题?

悬赏问题

  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿
  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥15 stable diffusion
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条