标题:吸血鬼问题,求助,调试通过,运行的时候什么也没有
只看楼主
jouniwei
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2012-4-3
 问题点数:0 回复次数:2 
吸血鬼问题,求助,调试通过,运行的时候什么也没有
吸血鬼问题,求助,调试通过,运行的时候什么也没有 ~!
 求帮忙啊 !!~
class Vampire2
{
    public boolean number(int sum)
    {
        int[] vam = new int[4];
        
        vam[0] = sum / 1000;
        
        vam[1] = ((sum - sum * 1000) / 100);
        
        vam[2] = ((sum - sum * 1000 - vam[1] * 100) / 10);
        
        vam[3] = (sum - sum * 1000 - vam[1] * 100 - vam[2] * 10);
        
        if(vam[2] == 0 && vam[3] == 0)
        {
            return false;
        }
                     
        for (int i = 0; i < 4; i++)
        {  
             for (int j = 0; j < 4; j++)
            {      
                for (int k = 0; k < 4; k++)
                {  
                    for (int l = 0; l < 4; l++)
                    {               
                           if (i != j && i != k && i != l && j != k && j != l && j != l && k != l)
                           {  
                               int n1 = vam[i] * 10 + vam[j];
                           
                               int n2 = vam[k] * 10 + vam[l];
                           
                            if(n1 * n2 == sum)
                            {
                                System.out.println(sum + " = " + n1 + " * " + n2);
                                return true;
                            }
                            }  
                     }  
                   }  
                }         
          }   
      return false;
     }   
  
  public static void main(String[] args)
  {
      Vampire2 vampire = new Vampire2();
      
      for(int num = 1000; num < 10000; num++)
      {
          vampire.number(num);
      }
  }   

}
搜索更多相关主题的帖子: 吸血鬼 public return number 
2012-05-13 15:50
扣七胃
Rank: 2
等 级:论坛游民
帖 子:7
专家分:11
注 册:2011-10-23
得分:0 
程序代码:
class Vampire2 {
    public void number(int sum) {

        for (int i = 0; i < 4; i++) {
            for (int j = 0; j < 4; j++) {
                for (int k = 0; k < 4; k++) {
                    for (int l = 0; l < 4; l++) {
                        // 4层循环,每个都是循环0~4,并取出的是vam中四个数字都不相等的时候。

                        int[] vam = new int[4]; // 新建一个数组,数组长度为4

                        vam[0] = sum / 1000; // vam数组的第一个元素得到sum的千位数

                        vam[1] = ((sum - vam[0] * 1000) / 100); // vam数组的第二个元素得到sum的百位数

                        vam[2] = ((sum - vam[0] * 1000 - vam[1] * 100) / 10); // //vam数组的第三个元素得到sum的十位数

                        vam[3] = (sum - vam[0] * 1000 - vam[1] * 100 - vam[2] * 10); // //vam数组的第四个元素得到sum的个位数

                        if (vam[2] != 0 && vam[3] != 0) { // 确保vam数组中的中间的两个数不能是0
                            if (i != j && i != k && i != l && j != k && j != l
                                    && k != l) {
                                int n1 = vam[i] * 10 + vam[j]; // n1 =
                                // 千位数*10+百位数

                                int n2 = vam[k] * 10 + vam[l]; // n2 =
                                // 十位数*10+个位数

                                if (n1 * n2 == sum) { // 确保n1和n2的积等于原来的数
                                    System.out.println(sum + " = " + n1 + " * "
                                            + n2); // 找出来了,这个不能打印啊。

                                }
                            }
                        }
                    }
                }
            }
        }

    }

}

public class Vampire {

    public static void main(String[] args) {
        // TODO 自动生成方法存根
        Vampire2 vampire = new Vampire2();

        for (int num = 1000; num < 10000; num++) {
            vampire.number(num);
        }
        System.out.println("输出完毕!");
    }

}
2012-05-19 15:10
扣七胃
Rank: 2
等 级:论坛游民
帖 子:7
专家分:11
注 册:2011-10-23
得分:0 
朋友,错误的地方不少啊,你看看我帮你改的,可以了吧?
2012-05-19 15:10



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-367443-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.152648 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved