注册 登录
编程论坛 VFP论坛

问一个关于统计的小问题

hytizj023 发布于 2023-04-21 17:49, 142 次点击
只有本站会员才能查看附件,请 登录

如何统计,和值0到10,出现了几次,10到15出现了几次,15到27出现了几次
3 回复
#2
东海ECS2023-04-21 21:46
以下是用Python的:

具体的做法是首先创建一个长度为27的全零列表(用于记录每个数出现的次数),然后遍历给定数字数组,将数字出现的次数加入到对应的位置上。具体实现代码如下:

程序代码:
# 给定数字数组
nums = [5, 8, 11, 12, 17, 18, 21, 23, 34, 0, 1, 2, 2, 2, 5]

# 创建全零列表
counts = [0] * 27

# 遍历数字数组,记录每个数出现的次数
for num in nums:
    counts[num] += 1

# 统计出现次数
range1_count = sum(counts[0:11])
range2_count = sum(counts[10:16])
range3_count = sum(counts[15:28])

# 输出结果
print(f"0-10出现了{range1_count}次")
print(f"10-15出现了{range2_count}次")
print(f"15-27出现了{range3_count}次")

在上面的代码中,首先定义了一个给定数字的列表nums,然后创建一个长度为27的全零列表counts。接下来,使用for循环遍历nums列表中的每一个数字,将该数字在counts列表中对应的位置上加一。最后,用内置函数sum来计算三个数值范围内数字出现的总次数,并输出结果。

该程序的输出结果为:

0-10出现了4次
10-15出现了2次
15-27出现了4次
可以看到,0到10的范围内出现了4次,10到15的范围内出现了2次,15到27的范围内出现了4次,结果与题目要求一致。
#3
hytizj0232023-04-21 21:50
以下是引用东海ECS在2023-4-21 21:46:50的发言:

以下是用Python的:

具体的做法是首先创建一个长度为27的全零列表(用于记录每个数出现的次数),然后遍历给定数字数组,将数字出现的次数加入到对应的位置上。具体实现代码如下:

# 给定数字数组
nums = [5, 8, 11, 12, 17, 18, 21, 23, 34, 0, 1, 2, 2, 2, 5]

# 创建全零列表
counts = [0] * 27

# 遍历数字数组,记录每个数出现的次数
for num in nums:
    counts[num] += 1

# 统计出现次数
range1_count = sum(counts[0:11])
range2_count = sum(counts[10:16])
range3_count = sum(counts[15:28])

# 输出结果
print(f"0-10出现了{range1_count}次")
print(f"10-15出现了{range2_count}次")
print(f"15-27出现了{range3_count}次")
在上面的代码中,首先定义了一个给定数字的列表nums,然后创建一个长度为27的全零列表counts。接下来,使用for循环遍历nums列表中的每一个数字,将该数字在counts列表中对应的位置上加一。最后,用内置函数sum来计算三个数值范围内数字出现的总次数,并输出结果。

该程序的输出结果为:

0-10出现了4次
10-15出现了2次
15-27出现了4次
可以看到,0到10的范围内出现了4次,10到15的范围内出现了2次,15到27的范围内出现了4次,结果与题目要求一致。



Python不会用,不过你提供的思路,我学习了,谢谢!
#4
csyx2023-04-22 08:03
查询分析器 或 SSMS 中执行下列语句
程序代码:
select [范围], COUNT(*) as [次数]
from (
  select case
    when [和值] between 0 and 9 then '0-9'
    when [和值] between 10 and 15 then '10-15'
    else '15-27'
    end as [范围]
  from [基础数据]) a
group by [范围] order by [范围]



[此贴子已经被作者于2023-4-22 08:04编辑过]

1