任意输入一个正整数N,统计1~N之间奇数的个数和偶数的个数,并输出。一行,一个正整数N。(1≤N≤100,000)输出描述:一行,1~N之间奇数的个数和偶数的个数,用空格分开。
时间: 2024-10-11 11:04:28 浏览: 78
给定N个正整数,请统计奇数和偶数各有多少个-C语言代码
为了统计1到N之间的奇数和偶数个数,我们可以利用数学规律。在正整数范围内,每连续两个数中有一个偶数和一个奇数。因此,如果你想要找到小于等于N的所有奇数,你可以从1开始,每次加2,直到超过N为止。同样地,偶数则可以从2开始,每次加2。
以下是Python的一种解决方案:
```python
def count_numbers(n):
# 如果n是0,直接返回0,0
if n == 0:
return "0 0"
# 偶数从2开始,计数器初始化为0
even_count = 0
# 奇数从1开始,计数器初始化为1
odd_count = 1
# 循环判断每个数是否在1到n之间
while odd_count <= n:
# 奇数计数加一
odd_count += 1
# 偶数也加一,注意是从上一个奇数+2开始
if odd_count + 1 <= n:
even_count += 1
return str(odd_count) + " " + str(even_count)
# 测试函数
n = int(input("请输入一个正整数:"))
result = count_numbers(n)
print(result)
```
当你运行程序并输入一个1到100,000之间的正整数时,它会输出对应区间内奇数和偶数的个数。
阅读全文