21xrx.com
2024-12-23 00:22:32 Monday
登录
文章检索 我的文章 写文章
C++编程:去除最大值和最小值求平均数
2023-07-05 11:22:12 深夜i     --     --
C++ 编程 去除最大值 去除最小值 平均数

C++是一门非常强大的编程语言,用于开发各种类型的软件。在编程中,我们经常要进行数据处理和分析。这时,计算数值类型的平均数是一项基本的处理任务。但是,在某些情况下,最大值和最小值会极大地影响平均数的结果。这时,需要对数据进行处理,去除最大值和最小值,然后再计算平均数。下面通过一段简单的代码来演示如何进行这项操作。

首先,我们需要定义一个数组来存储原始数据。在这个例子中,我们定义一个大小为10的数组,并随机生成10个数:


#include <iostream>

#include <cstdlib>

#include <ctime>

using namespace std;

int main()

{

  srand(time(NULL)); // 初始化随机数生成器

  const int size = 10; // 定义数组大小

  int data[size]; // 定义数组

  for (int i = 0; i < size; i++)

  {

    data[i] = rand() % 100; // 随机生成0-99之间的整数

    cout << data[i] << " "; // 输出原始数据

  }

  cout << endl;

  return 0;

}

接下来,我们需要找到数组中的最大值和最小值。为了实现这一步,我们定义两个变量分别表示最大值和最小值,并遍历数组来进行比较。代码如下:


int min_val = data[0]; // 初始化最小值

int max_val = data[0]; // 初始化最大值

for (int i = 1; i < size; i++)

{

  if (data[i] < min_val) min_val = data[i]; // 找到最小值

  if (data[i] > max_val) max_val = data[i]; // 找到最大值

}

最后,我们需要去除最大值和最小值,并计算去除后的平均数。这可以通过遍历数组并对元素进行求和并除以数组长度 – 2来实现(因为我们去除了2个元素)。代码如下:


int sum = 0; // 初始化数组总和

int count = 0; // 初始化数组元素个数

for (int i = 0; i < size; i++)

{

  if (data[i] != min_val && data[i] != max_val) // 如果不是最小值或最大值

  {

    sum += data[i];

    count++;

  }

}

double avg = static_cast<double>(sum) / count; // 计算平均数

cout << "平均数:" << avg << endl;

通过上述代码,我们可以去除最大值和最小值,计算平均数。目前为止,我们已经学习了一些基本的C++编程技巧,这些技巧可以应用于各种类型的问题。感谢您的阅读。

  
  

评论区

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