题目1

博客的开篇就以全国软件设计大赛所做的第一个题目开篇吧,Java组,处于Java的开始阶段。

题目为:(编程题)下列乘法算式中:每个汉字代表1个数字(1~9)。相同的汉字代表相同的数字,不同的汉字代表不同的数字。     赛软件 * 比赛  =  软件比拼 试编程确定使得整个算式成立的数字组合,如有多种情况,请给出所有可能的答案。 【参考结果】465 * 14 = 6510

解题代码:

public class test {
public static void main(String[] args) {
  int A;
  int B;
  int C;
  int b = 1, c = 1, d = 1, e = 1, f = 1;
  int x;
 
  for(int i = 0; i <= 9; i++) {
   b = i;
   for(int j = 0; j<= 9; j++) {
    c = j;
    for(int p = 0; p <= 9; p++) {
     d = p;
     for(int q = 0; q <= 9; q++) {
      e = q;
      for(int y = 0; y <= 9; y++){
       f = y;
       A = (100 * b) + (c * 10) + d;
       B = (e * 10) + b;
       C = (c * 1000) + (d * 100) + (e * 10) + f;
       x = A * B;
       if(C == x && A != B)
        System.out.println("赛软件*比赛 = 软件比拼" + b +c +d + "*" + e+b + "=" + c+d+e+f);
      }
     }
    }
   }
  
  }
  }

}

posted @ 2012-03-09 22:16  Java EE  阅读(133)  评论(0编辑  收藏  举报