3位老师对某次数学竞赛进行了预测。他们的预测如下:
甲说:学生A得第一名,学生B得第三名。
乙说:学生C得第一名,学生D得第四名。
丙说:学生D得第二名,学生A得第三名。
竞赛结果表明,他们都说对了一半,说错了一半,并且无并列名次,试编程输出A、B、C、D各自的名次。
问题分析:用数1,2,3,4分别代表学生a,b,c,d获得的名次。问题就可以利用三重循环把所有的情况枚举出来。
算法设计:
1)用a,b,c,d 代表四个同学,其存储的值代表他们的名次。
设置第一层计数循环a的范围从1到4;
设置第二层计数循环b的范围从1到4;
设置内计数循环c的范围从1到来4;
由于无并列名次,名次的和为1+2+3+4=10,由此可计算出d的名次值为10-a-b-c。
2)问题的已知内容,可以表示成以下