ac346fc3ee8039936c41b7a43641445472d9ce05 — coltonhurst 9 months ago
```Completed the package-variables-functions section of the 'Basics'
```
```2 files changed, 51 insertions(+), 0 deletions(-)

A basics/packages-variables-functions/1.1.15_constants.go
A basics/packages-variables-functions/1.1.16_numeric-constants.go
```
`A basics/packages-variables-functions/1.1.15_constants.go => basics/packages-variables-functions/1.1.15_constants.go +20 -0`
```@@ 0,0 1,20 @@
+ /*
+ 	Notes 1.1.15
+
+ 	- In Go, constants are declared like variables but with the 'const' keyword
+ */
+
+ package main
+
+ import "fmt"
+
+ const Pi = 3.14
+
+ func main() {
+ 	const World = "世界"
+ 	fmt.Println("Hello", World)
+ 	fmt.Println("Happy", Pi, "Day")
+
+ 	const Truth = true
+ 	fmt.Println("Go rules?", Truth)
+ }

```
`A basics/packages-variables-functions/1.1.16_numeric-constants.go => basics/packages-variables-functions/1.1.16_numeric-constants.go +31 -0`
```@@ 0,0 1,31 @@
+ /*
+ 	Notes 1.1.16
+
+ 	- You can declare constants in a group, like the factored import statement
+ 	- Numeric constants are precise values
+ 	- An untyped constant is implicitly typed
+ */
+
+ package main
+
+ import "fmt"
+
+ const (
+ 	// Create a huge number by shifting a 1 bit left 100 places.
+ 	// In other words, the binary number that is 1 followed by 100 zeroes.
+ 	Big = 1 << 100
+ 	// Shift it right again 99 places, so we end up with 1 << 1, or 2.
+ 	Small = Big >> 99
+ )
+
+ func needInt(x int) int { return x*10 + 1 }
+
+ func needFloat(x float64) float64 {
+ 	return x * 0.1
+ }
+
+ func main() {
+ 	fmt.Println(needInt(Small))
+ 	fmt.Println(needFloat(Small))
+ 	fmt.Println(needFloat(Big))
+ }

```