四、编程从键盘输入正整数,并对输入的正整数中的偶数求和,当输入“-1〞 时终止该操作。
时间: 2024-03-08 20:48:17 浏览: 71
好的,以下是 Python 代码实现:
```python
sum = 0
while True:
n = int(input("请输入一个正整数:"))
if n == -1:
break
if n % 2 == 0:
sum += n
print("所有输入正整数中的偶数和为:", sum)
```
这里使用了 `while` 循环,当输入的正整数是 `-1` 时,跳出循环;否则,如果该正整数是偶数,则加入到 `sum` 变量中。最后输出所有输入正整数中的偶数和。
相关问题
键盘输入正整数n,当n是偶数时,输出1/2+1/4+…+1/n之和;当n是奇数时,输出1+1/3+1/5+…+1/n之和。要求编制子函数实现求和运算。
题意:
给定一个正整数n,当n为偶数时,输出1/2+1/4+…+1/n的和;当n为奇数时,输出1+1/3+1/5+…+1/n的和。要求编写子函数实现求和运算。
解答:
首先,我们需要编写一个子函数用来计算一个分数序列的和。这个子函数的参数为分母n,返回值为该分数序列的和。可以使用一个for循环遍历分数序列,累加每一个分数的值。具体实现代码如下:
def sum_of_sequence(n):
s = 0
for i in range(1, n+1):
s += 1/i
return s
接着,根据题意,我们需要判断n的奇偶性并分别计算对应的分数序列的和。可以使用if语句来实现。
def sum_of_fractions(n):
if n % 2 == 0:
s = sum_of_sequence(n)
else:
s = sum_of_sequence(n) - 1/(n+1)
return s
最后,我们可以使用上面的函数来实现题目要求的输出。
n = int(input("请输入正整数n:"))
if n % 2 == 0:
s = sum_of_fractions(n)
print(s)
else:
s = sum_of_fractions(n)
print(s+1)
计算不大于正整数n值的所有正偶数的和 编写一个sum函数求和:输入一个正整数n,统计不大于n值的所有正偶数的和,在主函数中完成输入输出。要求用 do-while语句实现。
这是一个简单的编程任务,可以使用do-while循环结合条件判断来解决。以下是使用Python编写的一个示例,它满足题目要求:
```python
def sum_even_numbers(n):
total = 0
number = 2 # 正偶数从2开始
do:
if number <= n: # 检查当前数字是否小于等于n
total += number # 如果是,加到总和上
else:
break # 否则跳出循环
number += 2 # 由于我们只关心正偶数,每次增加2
return total
# 主函数中完成输入输出
def main():
n = int(input("请输入一个正整数n: "))
result = sum_even_numbers(n)
print(f"不大于{n}的正偶数之和为: {result}")
if __name__ == "__main__":
main()
```
在这个程序中,`sum_even_numbers`函数接收输入的正整数n,并计算所有不超过这个数的正偶数之和。`do-while`语句在这里并不常用,因为Python标准库里没有直接支持,所以我使用了`while True`配合`break`语句来达到类似的效果。
阅读全文