用函数循环调用的方式编程求1+(1+2)+...+(1+2+n),用while语句实现
时间: 2023-08-02 08:12:09 浏览: 58
可以使用一个变量sum来记录累加的结果,初始值为0,然后通过循环将每个括号内的数相加后加到sum中,最后返回sum即可。以下是具体实现:
```python
def sum_with_brackets(n):
sum = 0
i = 1
while i <= n:
sum += (i + 1)
i += 1
return sum
```
使用时,调用sum_with_brackets函数并传入正整数n即可:
```python
result = sum_with_brackets(5) # 求1+(1+2)+(1+2+3)+(1+2+3+4)+(1+2+3+4+5)
print(result) # 输出35
```
相关问题
用函数循环调用的方式编程求1+(1+2)+...+(1+2+n),其中n值由键盘输入,分别用for和while语句实现
使用for循环实现:
```python
def sum_for(n):
sum = 0
for i in range(1, n+1):
for j in range(1, i+2):
sum += j
return sum
```
使用while循环实现:
```python
def sum_while(n):
sum = 0
i = 1
while i <= n:
j = 1
while j <= i+1:
sum += j
j += 1
i += 1
return sum
```
其中,sum变量用于记录求和的结果,i和j用于循环计数,range函数用来生成指定区间的整数序列。
编程计算 sum=1!+2!+...+n!。
要编程计算sum=1!+2!+...+n!,可以使用while循环或递归函数来实现。以下是两种方法的示例代码:
方法一:使用while循环来计算
```
n = int(input())
jie = 1
sum = 0
i = 1
while n >= i:
jie = jie * i
sum = sum + jie
i = i + 1
print(sum)
```
方法二:使用递归函数调用阶乘方法求和(其中n的值在1~40之间)
```
def factorial(n):
if n == 1:
return 1
else:
return n * factorial(n-1)
n = int(input())
sum = 0
for i in range(1, n+1):
sum += factorial(i)
print(sum)
```