用程序求解:
请回答下面10个问题: 
  1、第一个答案是b的问题是哪一个? 
  (a)2;(b) 3;(c)4;(d)5;(e)6 
  2、唯一的连续两个具有相同答案的问题是: 
  (a)2,3;(b)3,4;(c)4,5;(d)5,6;(e)6,7; 
  3、本问题答案和哪一个问题的答案相同? 
  (a)1;(b)2;(c)4;(d)7;(e)6 
  4、答案是a的问题的个数是: 
  (a)0;(b)1;(c)2;(d)3;(e)4 
  5、本问题答案和哪一个问题的答案相同? 
  (a)10;(b)9;(c)8;(d)7;(e)6 
  6、答案是a的问题的个数和答案是什么的问题的个数相同? 
  (a)b;(b)c;(c)d;(d)e;(e)以上都不是 
  7、按照字母顺序,本问题的答案和下一个问题的答案相差几个字母? 
  (a)4;(b)3;(c)2;(d)1;(e)0。(注:a和b相差一个字母) 
  8、答案是元音字母的问题的个数是: 
  (a)2;(b)3;(c)4;(d)5;(e)6。(注:a和e是元音字母) 
  9、答案是辅音字母的问题的个数是: 
  (a)一个质数;(b)一个阶乘数;(c)一个平方数;(d)一个立方数,(e)5的倍数 
  10、本问题的答案是: 
  (a)a;(b)b;(c)c;(d)d;(e)e。 

解决方案 »

  1.   

      9、答案是辅音字母的问题的个数是:  
      (a)一个质数;(b)一个阶乘数;(c)一个平方数;(d)一个立方数,(e)5的倍数  
      

  2.   

    public class Question{
       public static void main(String[] args){
          Question.t1();
       }
        private static void t1(){
          //1:先枚举各个题目的答案的组合可能性
          for(int a1=1;a1<=5;a1++){
             for(int a2=1;a2<=5;a2++){
                for(int a3=1;a3<=5;a3++){
                   for(int a4=1;a4<=5;a4++){
                      for(int a5=1;a5<=5;a5++){
                         for(int a6=1;a6<=5;a6++){
                            for(int a7=1;a7<=5;a7++){
                               for(int a8=1;a8<=5;a8++){
                                  for(int a9=1;a9<=5;a9++){
                                     for(int a10=1;a10<=5;a10++){
                                        //2:按照条件进行过滤
                                        if(
                                           timu1(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10) 
                                        && timu2(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)    
                                        && timu3(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)    
                                        && timu4(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)    
                                        && timu5(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)    
                                        && timu6(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)    
                                        && timu7(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)    
                                        && timu8(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)    
                                        && timu9(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)    
                                        ){
                                           System.out.println("a1="+a1+",a2="+a2+",a3="+a3+",a4="+a4+",a5="+a5+",a6="+a6+",a7="+a7+",a8="+a8+",a9="+a9+",a10="+a10);
                                        }                                    
                                        
                                     }
                                  }
                               }
                            }
                         }
                      }
                   }
                }
             }
          }
       }
       //  1、第一个答案是b的问题是哪一个? 
    //  (a)2;(b) 3;(c)4;(d)5;(e)6 
       private static boolean timu1(int a1,int a2,int a3,int a4,int a5,int a6,int a7,int a8,int a9,int a10){
          if((a1==1 && a2==2) || (a1==2 && a3==2 && a1!=2 && a2!=2)
          ||   (a1==3 && a4==2 && a1!=2 && a2!=2 && a3!=2) 
          || (a1==4 && a5==2 && a1!=2 && a2!=2 && a3!=2 && a4!=2)
          || (a1==5 && a6==2 && a1!=2 && a2!=2 && a3!=2 && a4!=2 && a5!=2)
          ){
             return true;
          }      
          return false;
       }
       //  2、唯一的连续两个具有相同答案的问题是: 
    // (a)2,3;(b)3,4;(c)4,5;(d)5,6;(e)6,7; 
       private static boolean timu2(int a1,int a2,int a3,int a4,int a5,int a6,int a7,int a8,int a9,int a10){
          if(
                (a2==1 && a2==a3 && a1!=a2 && a3!=a4 && a4!=a5 && a5!=a6 && a6!=a7 && a7!=a8 && a8!=a9 && a9!=a10)
          || (a2==2 && a3==a4 && a1!=a2 && a2!=a3 && a4!=a5 && a5!=a6 && a6!=a7 && a7!=a8 && a8!=a9 && a9!=a10)
          || (a2==3 && a4==a5 && a1!=a2 && a2!=a3 && a3!=a4 && a5!=a6 && a6!=a7 && a7!=a8 && a8!=a9 && a9!=a10)
          || (a2==4 && a5==a6 && a1!=a2 && a2!=a3 && a3!=a4 && a4!=a5 && a6!=a7 && a7!=a8 && a8!=a9 && a9!=a10)
          || (a2==5 && a6==a7 && a1!=a2 && a2!=a3 && a3!=a4 && a4!=a5 && a5!=a6 && a7!=a8 && a8!=a9 && a9!=a10)
          ){
             return true;
          }      
          return false;
       }
       //3、本问题答案和哪一个问题的答案相同? 
     //(a)1;(b)2;(c)4;(d)7;(e)6 
       private static boolean  timu3(int a1,int a2,int a3,int a4,int a5,int a6,int a7,int a8,int a9,int a10){
          if((a3==1 && a1==a3) || (a3==2 && a2==a3) || (a3==3 && a4==a3)
       || (a3==4 && a7==a3) || (a3==5 && a6==a3)
          ){
             return true;
          }
          return false;
       }
       //答案是a的问题的个数是: 
     // (a)0;(b)1;(c)2;(d)3;(e)4 
       private static boolean  timu4(int a1,int a2,int a3,int a4,int a5,int a6,int a7,int a8,int a9,int a10){
          if((a4==1 && sumGeShu(1,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)==0)
                   || (a4==2 && sumGeShu(1,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)==1)
                   || (a4==3 && sumGeShu(1,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)==2)
                   || (a4==4 && sumGeShu(1,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)==3)
                   || (a4==5 && sumGeShu(1,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)==4)
             ){
                return true;
             }
             return false;
       }
       //5、本问题答案和哪一个问题的答案相同? 
    //  (a)10;(b)9;(c)8;(d)7;(e)6 
       private static boolean  timu5(int a1,int a2,int a3,int a4,int a5,int a6,int a7,int a8,int a9,int a10){
          if((a5==1 && a10==a5) || (a5==2 && a9==a5) || (a5==3 && a8==a5)
       || (a5==4 && a7==a5) || (a5==5 && a6==a5)
          ){
             return true;
          }
          return false;
       }
       //6:答案是a的问题的个数和答案是什么的问题的个数相同? 
    //  (a)b;(b)c;(c)d;(d)e;(e)以上都不是 
       private static boolean  timu6(int a1,int a2,int a3,int a4,int a5,int a6,int a7,int a8,int a9,int a10){
          if((a6==1 && sumGeShu(1,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)==sumGeShu(2,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)) 
             || (a6==2 && sumGeShu(1,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)==sumGeShu(3,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10))
             || (a6==3 && sumGeShu(1,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)==sumGeShu(4,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10))
             || (a6==4 && sumGeShu(1,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)==sumGeShu(5,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10))
             || (a6==5 && sumGeShu(1,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)!=sumGeShu(2,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)
                && sumGeShu(1,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)!=sumGeShu(3,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)
                && sumGeShu(1,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)!=sumGeShu(4,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)
                && sumGeShu(1,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)!=sumGeShu(5,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)
             ) 
          ){
             return true;
          }
          return false;      
       }
       
       //7:按照字母顺序,本问题的答案和下一个问题的答案相差几个字母? 
      //(a)4;(b)3;(c)2;(d)1;(e)0。(注:a和b相差一个字母)
       private static boolean  timu7(int a1,int a2,int a3,int a4,int a5,int a6,int a7,int a8,int a9,int a10){
          if((a7==1 && Math.abs(a8-a7)==4) || (a7==2 && Math.abs(a8-a7)==3)
       || (a7==3 && Math.abs(a8-a7)==2) || (a7==4 && Math.abs(a8-a7)==1) || (a7==5 && Math.abs(a8-a7)==0)
          ){
             return true;
          }
          return false;
       }
       
       //答案是元音字母的问题的个数是: 
     //(a)2;(b)3;(c)4;(d)5;(e)6。(注:a和e是元音字母) 
       private static boolean  timu8(int a1,int a2,int a3,int a4,int a5,int a6,int a7,int a8,int a9,int a10){
          if((a8==1 && sumGeShu(1,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)+sumGeShu(5,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10) ==2 ) 
             || (a8==2 && sumGeShu(1,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)+sumGeShu(5,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10) ==3 )
             || (a8==3 && sumGeShu(1,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)+sumGeShu(5,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10) ==4 )
             || (a8==4 && sumGeShu(1,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)+sumGeShu(5,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10) ==5 )
             || (a8==5 && sumGeShu(1,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)+sumGeShu(5,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10) ==6 )
          ){
             return true;
          }
          return false;
       }
       //答案是辅音字母的问题的个数是: 
    //  (a)一个质数;(b)一个阶乘数;(c)一个平方数;(d)一个立方数,(e)5的倍数 
       private static boolean  timu9(int a1,int a2,int a3,int a4,int a5,int a6,int a7,int a8,int a9,int a10){
          if(
                (a9==1 && zhiShu(sumGeShu(2,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)+sumGeShu(3,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)+sumGeShu(4,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)) ) 
             || (a9==2 && jieCheng(sumGeShu(2,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)+sumGeShu(3,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)+sumGeShu(4,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)) )
             || (a9==3 && pingFang(sumGeShu(2,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)+sumGeShu(3,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)+sumGeShu(4,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)) )
             || (a9==4 && liFang(sumGeShu(2,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)+sumGeShu(3,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)+sumGeShu(4,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)) )
             || (a9==5 && (sumGeShu(2,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)+sumGeShu(3,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)+sumGeShu(4,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)) % 5==0 )
          ){
             return true;
          }
          return false;   
       }
       
       private static boolean liFang(int a){
          for(int i=1;i<a;i++){
             if(i*i*i==a){
                return true;
             }
          }
          return false;
       }
       private static boolean pingFang(int a){
          for(int i=1;i<a;i++){
             if(i*i==a){
                return true;
             }
          }
          return false;
       }
       private static boolean jieCheng(int a){
          int v = 1;
          for(int i=1;i<a;i++){
             v = v * i;
             if(v==a){
                return true;
             }
          }
          return false;
       }
       private static boolean zhiShu(int a){
          if(a==2){
             return true;
          }
          for(int i=2;i<a;i++){
             if(a % i == 0){
                return false;
             }
          }      
          return true;
       }
       
       
       
       
       private static int sumGeShu(int answer,int a1,int a2,int a3,int a4,int a5,int a6,int a7,int a8,int a9,int a10){
          int sum = 0;
          if(a1==answer){
             sum+=1;
          }
          if(a2==answer){
             sum+=1;
          }
          if(a3==answer){
             sum+=1;
          }
          if(a4==answer){
             sum+=1;
          }
          if(a5==answer){
             sum+=1;
          }
          if(a6==answer){
             sum+=1;
          }
          if(a7==answer){
             sum+=1;
          }
          if(a8==answer){
             sum+=1;
          }
          if(a9==answer){
             sum+=1;
          }
          if(a10==answer){
             sum+=1;
          }
          return sum;
       }}不是我做的,我也是抄来的