public class Test{       public static void main(String[] args) {
   int sum=0;int [] a=new int[3];
       for (int i=0;i<3 ;i++ )
       {
  int c=(int)(Math.random()*10);
   sum+=c;a[i]=c;
       }
if (sum==18)
{
for (int j=0;j<a.length ;j++ )
{System.out.println(a[j]);
} }
else System.out.println("没有和为18的组");

    }}

解决方案 »

  1.   

    随机产生三个数(0-9),相加之合等于自定义(倒如18).把所有的三个之和相加等于18的数,打印出来.就是嘛你的自定义要是<0或者>27怎么办呢!
    更何况,三个数和等于固定值,也不叫随机了,而叫从满足条件的三个数中任意找一组出来!
      

  2.   

    public class Test {
    private static int[] number={0,1,2,3,4,5,6,7,8,9};

    public static void main(String[] arg){
    int count =18;

    if(arg.length>0){
    count = Integer.parseInt(arg[0]);
    }
    for(int i=0;i<=9;i++){
    for(int j=i+1;j<=9;j++){
    for(int m=j+1;m<=9;m++){
    if((i+j+m)==count){
    System.out.println(count+"="+i+"+"+j+"+"+m);
    }
    }
    }
    }
    }

    }
      

  3.   

    public class Test { 
    private static int[] number={0,1,2,3,4,5,6,7,8,9}; public static void main(String[] arg){ 
    int count =18; if(arg.length >0){ 
    count = Integer.parseInt(arg[0]); 

    for(int i=0;i <=9;i++){ 
    for(int j=i+1;j <=9;j++){ 
    for(int m=j+1;m <=9;m++){ 
    if((i+j+m)==count){ 
    System.out.println(count+"="+i+"+"+j+"+"+m); 
    break;




    } }