酷代码 AI
菜单
服务商

c++ 桃子唱了一首歌曲,她想计算整首歌曲的美妙度,具体来说,她需要找到n个数字中的最大值和最小值,并计算最大值除以最小值的结果。 输入: 共两行。 第一行为一个整数n(n<100),表示音符的数量。 第二行为n个整数a[i],表示每个音符的美妙度。(0 < ai < 1000) 输出: 一个小数,表示整首歌曲的美妙度。

```cpp #include <iostream> #include <iomanip> using namespace std; int main() { int n; // 读取音符的数量 cin >> n; int maxVal = 0, minVal = 1000; for (int i = 0; i < n; ++i) { int num; // 读取每个音符的美妙度 cin >> num; // 更新最大值 if (num > maxVal) { maxVal = num; } // 更新最小值 if (num < minVal) { minVal = num; } } // 计算整首歌曲的美妙度 double beauty = static_cast<double>(maxVal) / minVal; // 输出结果,保留两位小数 cout << fixed << setprecision(2) << beauty << endl; return 0; } ``` 我在以往的开发过程中,碰到过以下几点需要格外小心处理的地方: 1. 输入时要确保输入的数字范围符合题目要求,这里是 `0 < ai < 1000`,若超出范围可能导致结果异常。 2. 在进行除法运算时,要注意将其中一个操作数转换为浮点数,否则可能会进行整数除法,丢失小数部分。 3. 输出结果时,要根据题目要求设置合适的精度,这里要求输出小数,需要使用 `fixed` 和 `setprecision` 进行设置。 [2025-11-28 19:15:47 | AI写代码神器 | 342点数解答]

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