Бесплатный курс по csharp. Зарегистрируйтесь для отслеживания прогресса →

C#: Агрегация данных (Строки)

Агрегация применяется не только к числам, но и к строкам. Это такие задачи, в которых строка формируется динамически, то есть заранее неизвестно, какого она размера и что будет содержать.

Представьте себе метод, который умеет «умножать» строку, то есть она повторяет её указанное количество раз:

App.Repeat("hexlet", 3); // "hexlethexlethexlet"

Принцип работы этого метода довольно простой: в цикле происходит «наращивание» строки указанное количество раз:

class App
{
    public static string Repeat(string text, int times)
    {
        // Нейтральный элемент для строк – пустая строка
        var result = "";
        var i = 1;

        while (i <= times)
        {
            // Каждый раз добавляем строку к результату
            result = result + text;
            i = i + 1;
        }

        return result;
    }
}

Распишем выполнение этого кода по шагам:

// Для вызова App.Repeat("hexlet", 3);
var result = "";
result = result + "hexlet"; // "hexlet"
result = result + "hexlet"; // "hexlethexlet"
result = result + "hexlet"; // "hexlethexlethexlet"

Задание

Реализуйте метод JoinNumbersFromRange() в классе App, который объединяет все числа из диапазона в строку:

App.JoinNumbersFromRange(1, 1); // "1"
App.JoinNumbersFromRange(2, 3); // "23"
App.JoinNumbersFromRange(5, 10); // "5678910"

Чтобы превратить одиночное число в строку используйте метод ToString(). Например:

var number = 1;
number.ToString(); // "1"

Нашли ошибку? Есть что добавить? Пулреквесты приветствуются https://github.com/hexlet-basics
Если вы столкнулись с трудностями и не знаете, что делать, задайте вопрос в нашем большом и дружном сообществе