func main() {
var test []Pow
var x1 Pow
x1.distance = 110
x1.grade = 0.31
var x2 Pow
x2.distance = 80
x2.grade = 0.25
var x3 Pow
x3.distance = 120
x3.grade = 0.18
var x4 Pow
x4.distance = 70
x4.grade = 0.21
test = append(test, x1)
test = append(test, x2)
test = append(test, x3)
test = append(test, x4)
var distance_sum float64
var powList []Pow
grade:= float64(0)
for _,v := range test{
var temp Pow
distance_sum+=1/math.Pow(v.distance,2)
temp.distance = 1/math.Pow(v.distance,2)
temp.grade = v.grade
powList = append(powList, temp)
}
for _,v1:=range powList{
grade+=v1.grade*(v1.distance/distance_sum)
}
beego.Debug(grade)
}