package main
import (
"fmt"
"io/ioutil"
"strconv"
"strings"
)
func check(e error) {
if e != nil {
panic(e)
}
}
func main() {
var total float64
var min float64
var max float64
var numlines float64
total = 0
numlines = 0
max = 0
min = 1000000000
dat2 := make([]string, 200)
// read the file
dat, err := ioutil.ReadFile("random_numbers1.txt")
check(err)
dat2 = strings.Split(string(dat), "\r\n")
// iterate through the text file
for i := 0; i < len(dat2); i++ {
//fmt.Println("inside for loop", i)
if fig, err := strconv.ParseFloat(dat2[i], 64); err == nil {
//total + new value
total = total + fig
numlines = numlines + 1
if min > fig {
min = fig
}
if max < fig {
max = fig
}
//fmt.Println(fig)
} else {
// print error if not parsed
fmt.Println(err)
}
}
fmt.Println("Total is:", total)
fmt.Println("Total fgures:", numlines)
fmt.Println("Average is:", total/numlines)
fmt.Println("Max: ", max, "Min: ", min)
}
No comments:
Post a Comment