21xrx.com
2024-12-22 13:01:40 Sunday
登录
文章检索 我的文章 写文章
C++ 实现直方图统计
2023-07-04 22:20:59 深夜i     --     --
C++ 直方图 统计

直方图是一种常用的数据可视化方法,可以快速了解数据的分布情况。在C++编程中,也可以通过简单的代码来实现直方图统计。

首先,需要确定要统计的数据范围和间隔。本例中,我们统计的是0~100之间数字出现的次数,间隔为10。因此,我们需要定义一个长度为10的数组来记录每个区间内出现的数字次数。

接下来,读入需要统计的数据,将其按照区间划分并更新对应的计数器。可以使用if-else语句来判断数字所属的区间。

最后,可以通过一些简单的输出语句来展示直方图,例如使用“*”符号按比例打印每个区间内出现的次数。

下面是一个简单的C++代码示例:


#include <iostream>

using namespace std;

int main() {

  int data, count[10] = {0};

  cout << "请输入0~100之间的数字(以-1为结束符):" << endl;

  do {

    cin >> data;

    if (data >= 0 && data <= 100) {

      count[data/10]++;

    }

  } while (data != -1);

  cout << "直方图统计结果如下:" << endl;

  for (int i = 0; i < 10; i++) {

    cout << i*10 << "~" << i*10+9 << ": ";

    for (int j = 0; j < count[i]; j++) {

      cout << "*";

    }

    cout << endl;

  }

  return 0;

}

该代码会提示用户输入需要统计的数字,直到输入-1为止。然后,根据数据范围和间隔更新计数器数组。最后,使用嵌套的for循环打印出直方图。统计结果如下:


请输入0~100之间的数字(以-1为结束符):

10 20 30 40 50 60 70 80 90 100 -1

直方图统计结果如下:

0~9:

10~19: *

20~29: *

30~39: *

40~49: *

50~59: *

60~69: *

70~79: *

80~89: *

90~99: *

100~109: *

  
  
下一篇: Node.js原型设计

评论区

{{item['qq_nickname']}}
()
回复
回复