very first iteration

This commit is contained in:
da
2016-04-24 03:42:50 +02:00
parent 971bd1d6d4
commit 21eba2d77d
6 changed files with 600 additions and 0 deletions
+54
View File
@@ -0,0 +1,54 @@
// vi:ts=4:sts=4:sw=4:noet:tw=72
package util
import (
"bytes"
"math/rand"
"strconv"
"time"
)
func ToInt(v interface{}) int {
switch v.(type) {
case int:
return v.(int)
case float64:
return int(v.(float64))
case string:
ret, _ := strconv.Atoi(v.(string))
return ret
default:
return 0
}
}
func NumberToString(n int, sep rune) string {
start := 0
var buf bytes.Buffer
s := strconv.Itoa(n)
if n < 0 {
start = 1
buf.WriteByte('-')
}
l := len(s)
ci := 3 - ((l - start) % 3)
if ci == 3 {
ci = 0
}
for i := start; i < l; i++ {
if ci == 3 {
buf.WriteRune(sep)
ci = 0
}
ci++
buf.WriteByte(s[i])
}
return buf.String()
}
func Random(min, max int) int {
rand.Seed(time.Now().Unix())
return rand.Intn(max-min) + min
}