Пакетный последовательный вывод чисел с паузами

Вызывайте printNumber последовательно и добавляйте двухсекундную паузу после каждого пятого числа, включая последнюю группу по условию.

Короткий ответ

Что ответить на собеседовании

Вызывайте printNumber последовательно и добавляйте двухсекундную паузу после каждого пятого числа, включая последнюю группу по условию.

Подробный разбор

Ответ с пояснениями

Условие

Необходимо изменить существующий код так, чтобы:

  • числа от 1 до 10 выводились группами по пять (первый набор — 1‑5, второй — 6‑10);
  • внутри каждой группы между выводом отдельных чисел была задержка в одну секунду (это реализует функция printNumber);
  • после завершения вывода каждой группы должна происходить пауза длительностью две секунды.
import (
        "fmt"
        "time"
        )

func main () {
    for i:= 1; i < 11; i++ {
        
    }
    
func printNumber(n int) {
        time.Sleep(time.Second)
        fmt.Println(n)        
    }
}

Ответ

Вызывайте printNumber последовательно и добавляйте двухсекундную паузу после каждого пятого числа, включая последнюю группу по условию.

Исправленный main и отдельная функция:

package main

import (
    "fmt"
    "time"
)

func main() {
    for i := 1; i <= 10; i++ {
        printNumber(i)
        if i%5 == 0 { time.Sleep(2 * time.Second) }
    }
}
func printNumber(n int) {
    time.Sleep(time.Second)
    fmt.Println(n)
}

Между 5 и 6 получится примерно три секунды: две после группы и одна внутри следующего printNumber. После 10 программа ещё ждёт две секунды. Если пауза требуется только между группами, добавьте i < 10. В исходнике объявление именованной функции вложено неправильно.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее