mirror of
https://github.com/bootdotdev/fcc-learn-golang-assets.git
synced 2025-12-17 10:41:17 +00:00
42 lines
973 B
Markdown
42 lines
973 B
Markdown
# Loops in Go
|
|
|
|
The basic loop in Go is written in standard C-like syntax:
|
|
|
|
```go
|
|
for INITIAL; CONDITION; AFTER{
|
|
// do something
|
|
}
|
|
```
|
|
|
|
`INITIAL` is run once at the beginning of the loop and can create
|
|
variables within the scope of the loop.
|
|
|
|
`CONDITION` is checked before each iteration. If the condition doesn't pass
|
|
then the loop breaks.
|
|
|
|
`AFTER` is run after each iteration.
|
|
|
|
For example:
|
|
|
|
```go
|
|
for i := 0; i < 10; i++ {
|
|
fmt.Println(i)
|
|
}
|
|
// Prints 0 through 9
|
|
```
|
|
|
|
## Assignment
|
|
|
|
At Textio we have a dynamic formula for determining how much a batch of bulk messages costs to send.
|
|
|
|
### Complete the `bulkSend()` function
|
|
|
|
This function should return the total cost (as a `float64`) to send a batch of `numMessages` messages. Each message costs `1.0`, plus an additional fee. The fee structure is:
|
|
|
|
* 1st message: `1.0 + 0.00`
|
|
* 2nd message: `1.0 + 0.01`
|
|
* 3rd message: `1.0 + 0.02`
|
|
* 4th message: `1.0 + 0.03`
|
|
|
|
Use a loop to calculate the total cost and return it.
|