java编程,要能运行出结果,程序越简单越好,关键步骤给点注释。。。。

用java 实现 : 有2队乒乓球运动员 甲队 a,b,c ,乙队 x,y,z,已知 a不和x比赛 b不和x 、z比赛 用程序算出比赛分组
输出
甲b vs 乙y
这种形式

public static void main(String[] args) {
        
        // 定义两个队
        String[] jia = {"a","b","c"};
        String[] yi = {"x","y","z"};
        
        // 增强for循环进行比较
        for(String j : jia){
            for(String y : yi){
                // 已知 a不和x比赛 b不和x 、z比赛 用程序算出比赛分组
                if( "a".equals(j) && "x".equals(y) || "b".equals(j) && "x".equals(y) || "b".equals(j) && "z".equals(y) ){
                    continue;
                }
                System.out.println("甲 " + j +" V 乙 "+ y);
            }
        }
    }


追问

运行结果不对:
甲 a V 乙 y
甲 a V 乙 z
甲 b V 乙 y
甲 c V 乙 x
甲 c V 乙 y
甲 c V 乙 z

应该输出:
A--Z
B-X
C-Y
只有这一种情况

温馨提示:内容为网友见解,仅供参考
第1个回答  2013-09-19
正常情况下有9比赛分组 现在去掉了3种还剩6种:

public class Test {
public static void main(String[] args) {
String team1[]={"a","b","c"};
String team2[]={"x","y","z"};

for(String i:team1){
for(String j:team2){
if(!(j.equals("x")&&(i.equals("a")||i.equals("b"))
||i.equals("b")&&j.equals("z"))){
System.out.println("甲"+i+" VS "+"乙"+j);
}

}

}

}
}追问

运行结果也不对:
甲a VS 乙y

甲a VS 乙z
甲b VS 乙y
甲c VS 乙x
甲c VS 乙y
甲c VS 乙z

应该输出:
A--Z
B-X
C-Y
只有这一种情况

第2个回答  2013-09-19
 public static void main(String[] args) {
    String[] jia = {"a", "b", "c"};
    String[] yi = {"x", "y", "z"};
    for(String j : jia) {
        for(String y : yi) {
            if(!(("a".equals(j) && "x".equals(y))
                || ("b".equals(j) && ("x".equals(y)) || "z".equals(y))))
            ) {
                System.out.println("甲" + j + " vs " + "乙" + y);
            }
        }
    }
}

追问

运行结果:不对啊,而且c不能vs x啊
甲a vs 乙y
甲b vs 乙y
甲c vs 乙x
甲c vs 乙y

追答//你的条件中没有说明 c不能vs x吧

public static void main(String[] args) {
//甲队成员

  String[] jia = { "a", "b", "c" };
//乙队成员

  String[] yi = { "x", "y", "z" };
//比赛条件限制,规范:a不能和x比赛,就写ax到这个字符串里,各个条件用","分隔,中间不能有空格

  String condition = "ax,bx,bz";

  for (String j : jia) {

   for (String y : yi) {

    if((","+condition+",").indexOf("," +j+y + ",") < 0) {

     System.out.println("甲" + j + " vs " + "乙" + y);

    }

   }

  }

 }

本回答被提问者采纳
相似回答
大家正在搜