酷代码 AI
菜单

两片乌云群即将相遇,其中黑色云的数量为m,灰色云的数量为n。乌云群相遇之后会碰撞产生闪电。 1.m > n,那么两个云群将产生黄色闪电。 2.如果m≥2*n,产生黄色闪电的同时会伴随着能量极强的红色闪电。 3.n > m,那么两个云群将产生蓝色闪电。 4.如果n≥2*m,产生蓝色闪电的同时会伴随着能量极强的紫色闪电。 如果m = n,那么两个云群相遇将产生白色闪电。 请你编写程序,帮助小队预测闪电的类型。 输入: 输入两个整数,m和n,分别代表黑色云数量和灰色云数量。 输出: blue lightning输出云群相遇之后出现的闪电。 仅满足m > n时,输出 yellow lightning. 满足m > n且m≥2*n时,输出 yellow lightning and red lightning. 仅满足n > m时,输出 blue lightning. 满足n > m且n≥2*m时,输出 blue lightning and purple lightning. 满足m = n,输出 white lightning.#include <io

以下是完整的代码来解决这个问题,并且会在关键部分添加注释说明。 ```cpp #include <iostream> using namespace std; int main() { int m,n; // 从标准输入读取黑色云数量 m 和灰色云数量 n cin >> m >> n; if (m == n) { // 当 m 等于 n 时,输出白色闪电 cout << "white lightning"; } else if (m > n) { // 当 m 大于 n 时,输出黄色闪电 cout << "yellow lightning"; if (m >= 2 * n) { // 如果 m 大于等于 2 倍的 n,输出额外的红色闪电信息 cout << "\nand red lightning"; } } else { // 当 n 大于 m 时,输出蓝色闪电 cout << "blue lightning"; if (n >= 2 * m) { // 如果 n 大于等于 2 倍的 m,输出额外的紫色闪电信息 cout << "\nand purple lightning"; } } cout << endl; return 0; } ``` 代码解释 1. 输入读取:通过`cin`语句从标准输入读取`m`和`n`,分别代表黑色云与灰色云的数量。 2. 闪电类型判定: - 白色闪电:使用`if (m == n)`判断,如果`m`和`n`相等,输出`white lightning`。 - 黄色闪电:使用`else if (m > n)`判断,如果`m`大于`n`,先输出`yellow lightning`,再通过`if (m >= 2 * n)`判断是否满足`m`大于等于`2 * n`,若满足则输出`\nand red lightning`(换行并输出额外信息)。 - 蓝色闪电:在`m`不大于`n`且`m`不等于`n`的情况下(即`n > m`),先输出`blue lightning`,接着通过`if (n >= 2 * m)`判断是否满足`n`大于等于`2 * m`,若满足则输出`\nand purple lightning`(换行并输出额外信息)。 3. 输出换行:最后使用`cout << endl;`确保输出结束后换行。 [2025-12-27 21:31:15 | AI问答 | 560点数解答]

服务商
相关提问
发财导航,免费问AI
实用工具查看更多