美文网首页
Mean、 median and mode

Mean、 median and mode

作者: luomoxyz | 来源:发表于2016-12-07 11:39 被阅读12次
    package main
    import "fmt"
    import "sort"
    type IntSlice []int  
      
    func (c IntSlice) Len() int {  
        return len(c)  
    }  
    func (c IntSlice) Swap(i, j int) {  
        c[i], c[j] = c[j], c[i]  
    }  
    func (c IntSlice) Less(i, j int) bool {  
        return c[i] < c[j]  
    }  
    func main() {
     //Enter your code here. Read input from STDIN. Print output to STDOUT
        var num int
        fmt.Scanln(&num)
        var arr = make(IntSlice, 0, num)
        for i := 0; i < num; i++{
            var t int
            fmt.Scanf("%d", &t)
            arr = append(arr, t)
        }
        sort.Sort(arr)
        var sum int
        for _, val := range arr{
            sum += val
        }
        var l = len(arr)
        var media float32
        if l&0x01 != 0{
            media = float32(arr[l/2])
        }else{
            media = (float32(arr[l/2-1]) + float32(arr[l/2]))/2
        }
        var maxValue = arr[0]
        var freq = 1
        var maxFreq = 1
        for i := 1; i < l; i++{
            if arr[i - 1] == arr[i]{
                freq += 1
                if maxFreq < freq{
                    maxFreq = freq
                    maxValue = arr[i]
                }
            }else{
                freq = 1
            }
        }
         fmt.Printf("%0.1f\n", float32(sum)/float32(l))
        fmt.Printf("%0.1f\n", media)
        fmt.Printf("%d\n", maxValue)  
        
    }
    

    相关文章

      网友评论

          本文标题:Mean、 median and mode

          本文链接:https://www.haomeiwen.com/subject/dqpdmttx.html