7-8 加到几? 分数 7 全屏浏览题目 作者 C课程组 单位 湖南工程学院 s=1+2+3+.......+n,当s首次大于m时,n的值为? 请编程计算n的值。(这里n和s的值都是int范围内) 输入样例: 在这里给出一组输入。例如: 5040 输出样例: 在这里给出相应的输出。例如: 100
时间: 2023-11-21 08:30:18 浏览: 145
这是一道数学题,可以使用等差数列求和公式来解决。具体步骤如下:
1. 根据等差数列求和公式,s = n*(n+1)/2;
2. 根据题意,求出满足 s > m 的最小的正整数 n;
3. 将 n 代入等差数列求和公式,计算出 s 的值;
4. 输出 n 的值。
下面是 Python 代码实现:
```python
m = int(input())
n = int(((2*m)**0.5 - 0.5) // 1) + 1
while n*(n+1)//2 <= m:
n += 1
print(n)
```
解释一下代码:第 1 行输入 m,第 2 行根据等差数列求和公式计算出 n 的初值,第 3-5 行循环直到找到满足 s > m 的最小的正整数 n,第 6 行输出 n 的值。
阅读全文