登录
首页 >  Golang >  Go问答

寻找超出平均值的数字

来源:stackoverflow

时间:2024-03-09 14:09:22 311浏览 收藏

从现在开始,我们要努力学习啦!今天我给大家带来《寻找超出平均值的数字》,感兴趣的朋友请继续看下去吧!下文中的内容我们主要会涉及到等等知识点,如果在阅读本文过程中有遇到不清楚的地方,欢迎留言呀!我们一起讨论,一起学习!

问题内容

我可以使用一些帮助来查找结构数组中高于计算平均值的所有数字!

//meanmedianmode struct
type meanmedianmode struct {
    numbers []float64
}

func main() {

    // range of numbers
    datatype := meanmedianmode{
        numbers: []float64{
            84, 25, 88, 56, 10, 19, 11, 80,
            45, 83, 22, 40, 22, 52, 61, 13, 73, 23, //data to be used
            90, 89, 6,
        },
    }

我已经弄清楚如何轻松传递数据并找到平均值,如下所示...

//CalcMean float64
func (mm *MeanMedianMode) CalcMean() float64 {
    total := 0.0

    for _, v := range mm.numbers {
        total += v
    }

    return (total / float64(len(mm.numbers)))
    //return math.Round(total / float64(len(mm.numbers))) //Should it need to be rounded
}

我最大的问题是复制该过程并在另一个函数中使用存储在数组中的值并迭代它们以查找大于 (>) 找到的平均值的值! 我很欣赏这些见解!


解决方案


我不知道你想怎么做,但我猜是这样的:

package main

import (
    "fmt"
)

//MeanMedianMode struct
type MeanMedianMode struct {
    numbers []float64
}

func main() {
    m := &MeanMedianMode{
        numbers: []float64{
            84, 25, 88, 56, 10, 19, 11, 80,
            45, 83, 22, 40, 22, 52, 61, 13, 73, 23,
            90, 89, 6,
        },
    }

    mean := m.CalcMean()
    for _, n := range m.numbers {
        if n > mean {
            fmt.Printf("%.3f is greater than the mean\n", n)
        }
    }

}

//CalcMean float64
func (mm *MeanMedianMode) CalcMean() float64 {
    total := 0.0

    for _, v := range mm.numbers {
        total += v
    }

    return (total / float64(len(mm.numbers)))
}

本篇关于《寻找超出平均值的数字》的介绍就到此结束啦,但是学无止境,想要了解学习更多关于Golang的相关知识,请关注golang学习网公众号!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>