add: for statement loop exercises
This commit is contained in:
30
13-loops/exercises/04-only-evens/main.go
Normal file
30
13-loops/exercises/04-only-evens/main.go
Normal file
@ -0,0 +1,30 @@
|
||||
// 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
|
||||
|
||||
// ---------------------------------------------------------
|
||||
// EXERCISE: Only evens
|
||||
//
|
||||
// 1. Extend the "Sum up to N" exercise
|
||||
// 2. Sum only the even numbers
|
||||
//
|
||||
// RESTRICTIONS
|
||||
// Skip odd numbers using the `continue` statement
|
||||
//
|
||||
// EXPECTED OUTPUT
|
||||
// Let's suppose that the user runs it like this:
|
||||
//
|
||||
// go run main.go 1 10
|
||||
//
|
||||
// Then it should print:
|
||||
//
|
||||
// 2 + 4 + 6 + 8 + 10 = 30
|
||||
// ---------------------------------------------------------
|
||||
|
||||
func main() {
|
||||
}
|
42
13-loops/exercises/04-only-evens/solution/main.go
Normal file
42
13-loops/exercises/04-only-evens/solution/main.go
Normal file
@ -0,0 +1,42 @@
|
||||
// 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"
|
||||
"os"
|
||||
"strconv"
|
||||
)
|
||||
|
||||
func main() {
|
||||
if len(os.Args) < 3 {
|
||||
fmt.Println("gimme two numbers")
|
||||
return
|
||||
}
|
||||
|
||||
min, err1 := strconv.Atoi(os.Args[1])
|
||||
max, err2 := strconv.Atoi(os.Args[2])
|
||||
if err1 != nil || err2 != nil || min >= max {
|
||||
fmt.Println("wrong numbers")
|
||||
return
|
||||
}
|
||||
|
||||
var sum int
|
||||
for i := min; i <= max; i++ {
|
||||
if i%2 != 0 {
|
||||
continue
|
||||
}
|
||||
sum += i
|
||||
|
||||
fmt.Print(i)
|
||||
if i != max {
|
||||
fmt.Print(" + ")
|
||||
}
|
||||
}
|
||||
fmt.Printf(" = %d\n", sum)
|
||||
}
|
Reference in New Issue
Block a user