学习-Java循环之嵌套循环之淡水湖排名

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

题目:

任务:

我国有 4 大淡水湖,分别是洞庭湖,洪泽湖,鄱阳湖和太湖。 A 说:洞庭湖最大,洪泽湖最小,鄱阳湖第三; B 说:洪泽湖最大,洞庭湖最小,鄱阳湖第二,太湖第三; C 说:洪泽湖最小,洞庭湖第三; D 说:鄱阳湖最大,太湖最小,洪泽湖第二,洞庭湖第三。 请根据每人说的话求出 4 大湖的正确排名。

编程要求

仔细阅读右侧编辑区内给出的代码框架及注释,按照提示编写程序代码。

代码:

/*
任务:我国有 4 大淡水湖,分别是洞庭湖,洪泽湖,鄱阳湖和太湖。
A 说:洞庭湖最大,洪泽湖最小,鄱阳湖第三;
B 说:洪泽湖最大,洞庭湖最小,鄱阳湖第二,太湖第三;
C 说:洪泽湖最小,洞庭湖第三;
D 说:鄱阳湖最大,太湖最小,洪泽湖第二,洞庭湖第三。
请输出4大湖的正确排名,输出样式:洞庭湖排名:n 

A说的话可用如下表达式体现:
int a1 = (dongting == 1) ? 1 : 0;//洞庭湖最大(1),是的话赋值为1,否则赋值为0
int a2 = (hongze == 4) ? 1 : 0;//洪泽湖最小(4),是的话赋值为1,否则赋值为0
int a3 = (poyang == 3) ? 1 : 0;
a=a1+a2+a3;//A说的话

*/

public class LakeTest {
    public static void main(String[] args) {
        int a, b, c, d;   // 定义4个人说的话
        int dongting, hongze, poyang, tai;  // 定义4个湖
        
        // 请在Begin-End间编写代码
        /********** Begin **********/
        // 使用嵌套循环依次遍历各个湖的4种排名情况,用逻辑表达式表达每人说的话,输出具体排名
        for (dongting = 1;dongting <= 4;dongting ++){
            for (hongze = 1;hongze <= 4;hongze ++){
                if (dongting == hongze){
                    continue;
                }
                for (poyang = 1;poyang <= 4;poyang ++){
                    if (dongting == poyang || hongze == poyang){
                        continue;
                    }
                    for (tai = 1;tai <= 4;tai ++){
                        if (dongting == tai || hongze == tai || poyang ==tai){
                            continue;
                        }
                        a = ((dongting == 1) ? 1 : 0) + ((hongze == 4) ? 1 : 0) + ((poyang == 3) ? 1 : 0);
                        b = ((hongze == 1) ? 1 : 0) + ((dongting == 4) ? 1 : 0) + ((poyang == 2) ? 1 : 0) + ((tai == 3) ? 1 : 0);
                        c = ((hongze == 4) ? 1 : 0) + ((dongting == 3) ? 1 : 0);
                        d = ((poyang == 1) ? 1 : 0) + ((tai == 4) ? 1 : 0) + ((hongze == 2) ? 1 : 0) + ((dongting == 3) ? 1 : 0);
                        if (a == 1 && b ==1 && c ==1 && d == 1){
                            System.out.println("洞庭湖排名:" + dongting);
                            System.out.println("洪泽湖排名:" + hongze);
                            System.out.println("鄱阳湖排名:" + poyang);
                            System.out.println("太湖排名:" + tai);
                        }
                    }
                }
            }
        } 
        /********** End **********/
 
    }
}


总结

提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了Java循环之嵌套循环之淡水湖排名。

  • 1
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

酷酷滴Q

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值