如何创建一个函数来计算和返回平均值、最大值和最小值?

丹尼尔AA9

这是我想要做的,我想创建一个函数来计算和返回(使用传递引用)平均值、最大值和最小值。对 C++ 有点新,所以我真的很感激你的帮助。

这正是我想要做的:

  • 程序描述了它应该做什么
  • 提示用户输入 1 到 10 之间的数字,然后用正浮点数填充数组
  • 使用函数输出浮点数组的内容
  • 使用函数计算浮点数组的平均值、最大值和最小值。值通过引用变量传回
  • 输出计算值
  • 如果在任何时候用户输入了无效的输入,请再次提示他们
  • 安全终止

这是代码:

//include go here
#include <cstdio>
#include <iostream>
#include <cfloat>

using namespace std;


//Constants go here
const int MAX = 10;
const int MIN = 1


//outputs overview of program to user 

void displayOverview();



//prompts user to enter a number between min and max and return it
//validated using a loop

int getIntInRange(int min, int max);



//prompts user to enter a floating point number that is > 0
//validated using a loop

float getPositiveFloat();



//prompts user for size of array (< size)
//fills nums with that many floating point values

int fillArray(float nums[], int size);


//outputs the array

void printArray (float arr[], int Size);



  //Computes and returns the mean, maximum, and minimum

void computesValues(float arrr[], int size, float &mean, float &max, float &min);



int main(){

  displayOverview();


  float myArr[MAX];
  int size = fillArray(myArr, MAX);

  return 0;
}


//Prompt user to enter a number between Min and max
//If user entered a number within the range, is valid is true
//If user entered a number not within min and max, output sorry not in range

int getIntInRange(int min, int max){

  int userInput = -1;
  bool isValid = false;
  while(!isValid){

    printf("Please enter an integer between %d and %d\n", min, max);

    scanf("%d", &userInput);
    if(min <= userInput && userInput <= max){
      isValid = true;
}else{
  printf("Sorry, that is not in range\n Please try again\n");
}
  }

  return userInput;
}


//int numVals
int fillArray(float nums[], int size){

  int numVals = getIntInRange(MIN, MAX);

  for(int i=0; i< numVals&& i<size ; i++){

    nums[i] = getPositiveFloat();

  }


  return numVals;
}

//Prompt user to enter a positive number
//if User enters a number that is not positive, output "Not a Positive"
float getPositiveFloat(){

  float input;
  do{
    cout << "Please enter a positive number\n";
    cin >> input;
    if(!(input>0)){
      cout << "Not a positive!\n";

    }

  }while(!(input>0));

  return input;


}


//Introduction to the program
void displayOverview(){

  cout << "Welcome to my program. You will see how magically I can compute things " << 
"from numbers!!" << endl;

}


//Print an array
void printArray(float arr[], int size){

  for (int i = 0; i<size; i++){
    cout << arr[i] << " ";
  }
}


//Compute Min, max and mean.
void computesValues (float arr[], int size, float &mean, float &max, float &min){



}
私服
void computesValues (float arr[], int size, float &mean, float &max, float &min)
{
    float sum = 0.0;
    for (int i = 0; i<size; i++){
        sum = sum+ arr[i]; 
    }
    mean = sum/size;
    max = arr[0];
    for (int i = 1; i<size; i++){
        if(arr[i] > max)
            max = arr[i];
    }
    min = arr[0];
    for (int i = 1; i<size; i++){
        if(arr[i] < min)
            min = arr[i];
    }
    printf("mean = %f max = %f min = %f\n", mean, max, min);
}
  • 均值是数组元素总和的平均值:您必须将数组元素相加并除以元素数
  • 要计算最大值,请将第一个元素设置为最大值,将其与其他元素进行比较,如果任何其他元素超过它,则更新它。
  • 要计算最小值,请将第一个元素设置为 min,将其与其他元素进行比较,如果任何其他元素小于它,则更新它。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

一次迭代中的最小值,最大值和平均值

来自分类Dev

Elasticsearch-如何获取嵌套文档集的最小值/最大值/平均值

来自分类Dev

解析时出现意外的EOF;尝试计算每行读数的平均值/最大值/最小值

来自分类Dev

Django:M2M字段的平均值,最大值和最小值

来自分类Dev

根据另一列的值返回列的最小值和最大值的函数

来自分类Dev

如何在PouchDB上模拟聚合函数的平均值,总和,最大值,最小值和计数?

来自分类Dev

是否有一个函数返回最小值和最大值之间的整数?

来自分类Dev

Matlab:如何在直方图中绘制最大值,最小值和平均值?

来自分类Dev

如何获取Julia中数据帧所有列的算术平均值,最小值和最大值?

来自分类Dev

数组的总和,而忽略一个最小值和一个最大值

来自分类Dev

使用dplyr分组时如何计算均值,最小值和最大值?

来自分类Dev

如何显示Tableau中的最大值,最小值,中位数和平均值

来自分类Dev

当以秒为单位的大量数字达到平均值,最大值和最小值时,如何转换为日期时间格式?

来自分类Dev

如何基于另一个数据框的最小值和最大值创建列

来自分类Dev

获取输入的五个数字的最小值,最大值和平均值

来自分类Dev

读取带有浮点数的文件,计算C中的大小,最大值,最小值,平均值,中位数和标准偏差

来自分类Dev

如何从向量中删除一个最大值和一个最小值?

来自分类Dev

在MATLAB中使用特定的浮点平均值在最小值和最大值之间生成3个随机浮点数

来自分类Dev

获得最大,平均值和最小值

来自分类Dev

计算R中的最小值,最大值和平均值

来自分类Dev

如何计算每个唯一条目的最大值和最小值

来自分类Dev

Elasticsearch-通过重新计算平均值,最小值和最大值来连接文档

来自分类Dev

如何在postgresql中计算最大值,最小值和平均值

来自分类Dev

c 中的程序接受一个数组并打印出来,然后找到它的平均值最大值和最小值。工作不正常

来自分类Dev

在python中找到文本文件数据的平均值、最小值和最大值

来自分类Dev

根据输入值计算最大值、最小值和平均值

来自分类Dev

Scala:根据条件计算最小值、最大值、平均值

来自分类Dev

从用户获取浮点输入,直到输入负数,然后计算总和、平均值、最大值和最小值,不包括负数

来自分类Dev

如何以更少的数据库往返获得平均值、最小值和最大值?

Related 相关文章

  1. 1

    一次迭代中的最小值,最大值和平均值

  2. 2

    Elasticsearch-如何获取嵌套文档集的最小值/最大值/平均值

  3. 3

    解析时出现意外的EOF;尝试计算每行读数的平均值/最大值/最小值

  4. 4

    Django:M2M字段的平均值,最大值和最小值

  5. 5

    根据另一列的值返回列的最小值和最大值的函数

  6. 6

    如何在PouchDB上模拟聚合函数的平均值,总和,最大值,最小值和计数?

  7. 7

    是否有一个函数返回最小值和最大值之间的整数?

  8. 8

    Matlab:如何在直方图中绘制最大值,最小值和平均值?

  9. 9

    如何获取Julia中数据帧所有列的算术平均值,最小值和最大值?

  10. 10

    数组的总和,而忽略一个最小值和一个最大值

  11. 11

    使用dplyr分组时如何计算均值,最小值和最大值?

  12. 12

    如何显示Tableau中的最大值,最小值,中位数和平均值

  13. 13

    当以秒为单位的大量数字达到平均值,最大值和最小值时,如何转换为日期时间格式?

  14. 14

    如何基于另一个数据框的最小值和最大值创建列

  15. 15

    获取输入的五个数字的最小值,最大值和平均值

  16. 16

    读取带有浮点数的文件,计算C中的大小,最大值,最小值,平均值,中位数和标准偏差

  17. 17

    如何从向量中删除一个最大值和一个最小值?

  18. 18

    在MATLAB中使用特定的浮点平均值在最小值和最大值之间生成3个随机浮点数

  19. 19

    获得最大,平均值和最小值

  20. 20

    计算R中的最小值,最大值和平均值

  21. 21

    如何计算每个唯一条目的最大值和最小值

  22. 22

    Elasticsearch-通过重新计算平均值,最小值和最大值来连接文档

  23. 23

    如何在postgresql中计算最大值,最小值和平均值

  24. 24

    c 中的程序接受一个数组并打印出来,然后找到它的平均值最大值和最小值。工作不正常

  25. 25

    在python中找到文本文件数据的平均值、最小值和最大值

  26. 26

    根据输入值计算最大值、最小值和平均值

  27. 27

    Scala:根据条件计算最小值、最大值、平均值

  28. 28

    从用户获取浮点输入,直到输入负数,然后计算总和、平均值、最大值和最小值,不包括负数

  29. 29

    如何以更少的数据库往返获得平均值、最小值和最大值?

热门标签

归档