-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathuv.go
71 lines (46 loc) · 859 Bytes
/
uv.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
package weathermodule_v2
//
type UVRisk int
//
const (
Low = iota
Moderate
High
Very_High
Extreme
)
//
func (risk UVRisk) String() string {
return [...]string{"Low", "Moderate", "High", "Very high", "Extreme"}[risk]
}
//
type UV struct {
//
index int64
risk UVRisk
}
//
func (currentUV *UV) InitializeUV(value int64) {
var determiedUVRisk UVRisk
if value <= 2 {
determiedUVRisk = Low
} else if 3 <= value && value <= 5 {
determiedUVRisk = Moderate
} else if 6 <= value && value <= 7 {
determiedUVRisk = High
} else if 8 <= value && value <= 10 {
determiedUVRisk = Very_High
} else {
determiedUVRisk = Extreme
}
currentUV.index = value
currentUV.risk = determiedUVRisk
}
//
func (currentUV *UV) GetIndex() int64 {
return currentUV.index
}
//
func (currentUV *UV) GetRisk() UVRisk {
return currentUV.risk
}