codeFlowType:
codeMistake
codeFlowLang:
Go
Package main
import "fmt"
func main() { count := 0 // количество отжиманий i := 1 // счётчик дней for {fmt.Print(i) count += i i++ if count == 100 { break } }
fmt.Println("Лёха сделает", count, "отжиманий за 100 дней")
В вашем коде есть несколько проблем, связанных с форматированием и логикой в цикле. Давайте исправим их:
fmt.Println
вместо fmt.Print
, чтобы каждое число печаталось на новой строке.Go
имеет свой стиль, поэтому лучше быть аккуратным с отступами и расположением фигурных скобок.Вот исправленный код:
package main
import "fmt"
func main() {
count := 0 // количество отжиманий
i := 1 // счётчик дней
for {
fmt.Println(i) // вывод дня
count += i // добавление отжиманий за день
i++ // переход к следующему дню
if count >= 100 { // сравнение с 100
break
}
}
fmt.Println("Лёха сделает", count, "отжиманий за", i-1, "дней") // вывод количества отжиманий и дней
}
fmt.Print
заменён на fmt.Println
.if count >= 100
, чтобы учесть случай, когда count
станет больше 100.i-1
).Теперь программа корректно считает и выводит количество дней и отжиманий.