编写python一个函数fun(n),其功能是求 1+2+…+n,利用这个函数求1+(1+2)+(1+2+3)+…+ (1+2+-+20)。
时间: 2023-09-21 16:06:34 浏览: 87
python 求1+2!+3!+...+20!的和 (示例)
5星 · 资源好评率100%
### 回答1:
可以使用循环来实现 `fun(n)` 函数,代码如下:
```python
def fun(n):
sum = 0
for i in range(1, n+1):
sum += i
return sum
```
然后可以使用 `fun()` 函数来计算 `1+(1+2)+(1+2+3)+...+(1+2+...+20)`,代码如下:
```python
total_sum = 0
for i in range(1, 21):
total_sum += fun(i)
print(total_sum)
```
输出结果为:1540,即 `1+(1+2)+(1+2+3)+...+(1+2+...+20)` 的和为 1540。
### 回答2:
编写一个函数`fun(n)`,可以通过循环求解1到n的累加和。代码如下:
```python
def fun(n):
result = 0
for i in range(1, n+1):
result += i
return result
```
然后,可以用`fun(n)`函数来求解1 (1 2) (1 2 3)… (1 2 - 20) 的累加和。可通过嵌套循环来实现:
```python
def fun_2(n):
result = 0
for i in range(1, n+1):
inner_sum = fun(i) # 调用fun函数求解1到i的累加和
if i % 2 == 0:
result -= inner_sum
else:
result += inner_sum
return result
```
调用`fun_2(20)`,即可获得1 (1 2) (1 2 3)… (1 2 - 20) 的累加和。测试代码如下:
```python
print(fun_2(20))
```
输出结果为:660
### 回答3:
编写一个函数 `fun(n)`,其功能是求 1 到 n 的和。可以使用循环结构和累加变量来实现。具体实现如下:
```python
def fun(n):
sum = 0
for i in range(1, n+1):
sum += i
return sum
```
利用这个函数可以求解 `1 (1 2) (1 2 3)… (1 2 - 20)` 的结果。根据给出的问题描述,我们需要求 1 的结果,然后将 1 和 1+2 的结果相加,再将前面两个结果与 1+2+3 相加,依此类推,直到和前面已求和的结果相加到第 20 个数,结果为 `1 (1 2) (1 2 3)… (1 2 - 20)` 的结果。代码如下:
```python
result = 1
for i in range(1, 21):
result += fun(i)
print(result)
```
以上代码将打印出 `1 (1 2) (1 2 3)… (1 2 - 20)` 的结果。
阅读全文