Initial commit

This commit is contained in:
Inanc Gumus
2018-10-13 23:30:21 +03:00
commit cde4e6632c
567 changed files with 17896 additions and 0 deletions

View File

@ -0,0 +1,26 @@
// For more tutorials: https://blog.learngoprogramming.com
//
// Copyright © 2018 Inanc Gumus
// Learn Go Programming Course
// License: https://creativecommons.org/licenses/by-nc-sa/4.0/
//
package main
import "fmt"
func main() {
speed := 100 // #1
// speed := 10 // #2
fast := speed >= 80
slow := speed < 20
fmt.Printf("fast's type is %T\n", fast)
fmt.Printf("going fast? %t\n", fast)
fmt.Printf("going slow? %t\n", slow)
fmt.Printf("is it 100 mph? %t\n", speed == 100)
fmt.Printf("is it not 100 mph? %t\n", speed != 100)
}

View File

@ -0,0 +1,21 @@
// For more tutorials: https://blog.learngoprogramming.com
//
// Copyright © 2018 Inanc Gumus
// Learn Go Programming Course
// License: https://creativecommons.org/licenses/by-nc-sa/4.0/
//
package main
func main() {
var speed int
// speed = "100" // NOT OK
var running bool
// running = 50 // NOT OK
var force float64
// speed = force // NOT OK
_, _, _ = speed, running, force
}

View File

@ -0,0 +1,21 @@
// For more tutorials: https://blog.learngoprogramming.com
//
// Copyright © 2018 Inanc Gumus
// Learn Go Programming Course
// License: https://creativecommons.org/licenses/by-nc-sa/4.0/
//
package main
func main() {
var speed int
speed = 50 // OK
var running bool
running = true // OK
var force float64
speed = int(force)
_, _, _ = speed, running, force
}

View File

@ -0,0 +1,48 @@
// For more tutorials: https://blog.learngoprogramming.com
//
// Copyright © 2018 Inanc Gumus
// Learn Go Programming Course
// License: https://creativecommons.org/licenses/by-nc-sa/4.0/
//
package main
import (
"fmt"
"strings"
)
func main() {
speed := 100 // #1
// speed := 10 // #2
fast := speed >= 80
slow := speed < 20
fmt.Printf("going fast? %t\n", fast)
fmt.Printf("going slow? %t\n", slow)
fmt.Printf("is it 100 mph? %t\n", speed == 100)
fmt.Printf("is it not 100 mph? %t\n", speed != 100)
fmt.Println(strings.Repeat("-", 25))
// -------------------------
// #3
speedB := 150.5
faster := speedB > 100 // ok: untyped
fmt.Println("is the other car going faster?", faster)
// ERROR: Type Mismatch
// faster = speedB > speed
faster = speedB > float64(speed)
fmt.Println("is the other car going faster?", faster)
// #4
// ERROR:
// only numeric values are comparable with
// ordering operators: <, <=, >, >=
// fmt.Println(true > faster)
}

View File

@ -0,0 +1,20 @@
// For more tutorials: https://blog.learngoprogramming.com
//
// Copyright © 2018 Inanc Gumus
// Learn Go Programming Course
// License: https://creativecommons.org/licenses/by-nc-sa/4.0/
//
package main
import "fmt"
func main() {
// remove the comments and run
// i've commented the lines it's because of the warnings
// fmt.Println("true && true =", true && true)
fmt.Println("true && false =", true && false)
fmt.Println("false && true =", false && true)
// fmt.Println("false && false =", false && false)
}

View File

@ -0,0 +1,34 @@
// For more tutorials: https://blog.learngoprogramming.com
//
// Copyright © 2018 Inanc Gumus
// Learn Go Programming Course
// License: https://creativecommons.org/licenses/by-nc-sa/4.0/
//
package main
import "fmt"
func main() {
speed := 100
fmt.Println("within limits?",
speed >= 40 && speed <= 55,
)
speed = 20
fmt.Println("within limits?",
speed >= 40 && speed <= 55,
// ^- short-circuits in the first expression here
// because, it becomes false
)
speed = 50
fmt.Println("within limits?",
speed >= 40 && speed <= 55,
)
// ERROR: invalid
// both operands should be booleans
// 1 && 2
fmt.Println(1 == 1 && 2 == 2)
}

View File

@ -0,0 +1,20 @@
// For more tutorials: https://blog.learngoprogramming.com
//
// Copyright © 2018 Inanc Gumus
// Learn Go Programming Course
// License: https://creativecommons.org/licenses/by-nc-sa/4.0/
//
package main
import "fmt"
func main() {
// remove the comments and run
// i've commented the lines it's because of the warnings
// fmt.Println("true || true =", true || true)
fmt.Println("true || false =", true || false)
fmt.Println("false || true =", false || true)
// fmt.Println("false || false =", false || false)
}

View File

@ -0,0 +1,31 @@
// For more tutorials: https://blog.learngoprogramming.com
//
// Copyright © 2018 Inanc Gumus
// Learn Go Programming Course
// License: https://creativecommons.org/licenses/by-nc-sa/4.0/
//
package main
import "fmt"
func main() {
color := "red"
fmt.Println("reddish colors?",
// true || false => true (short-circuits)
color == "red" || color == "dark red",
)
color = "dark red"
fmt.Println("reddish colors?",
// false || true => true
color == "red" || color == "dark red",
)
fmt.Println("greenish colors?",
// false || false => false
color == "green" || color == "light green",
)
}

View File

@ -0,0 +1,18 @@
// For more tutorials: https://blog.learngoprogramming.com
//
// Copyright © 2018 Inanc Gumus
// Learn Go Programming Course
// License: https://creativecommons.org/licenses/by-nc-sa/4.0/
//
package main
import "fmt"
func main() {
fmt.Println(
"hi" == "hi" && 3 > 2, // true && true => true
"hi" != "hi" || 3 > 2, // false || true => true
!("hi" != "hi" || 3 > 2), // !(false || true) => false
)
}

View File

@ -0,0 +1,22 @@
// For more tutorials: https://blog.learngoprogramming.com
//
// Copyright © 2018 Inanc Gumus
// Learn Go Programming Course
// License: https://creativecommons.org/licenses/by-nc-sa/4.0/
//
package main
import (
"fmt"
)
func main() {
var on bool
on = !on
fmt.Println(on)
on = !!on
fmt.Println(on)
}