Задача: заполнение строки словом

Задача: заполнение строки словом
Оцени эту статью

Есть некоторая строка (слово, число), например «home». Необходимо заполнить этим словом строку (последовательно буквами этого слова) за определённое количество итераций.

Например: базовая строка — «home», требуемое число символов результата 11, результат: «homehomehom»

В этой задаче главным требованием должно быть: сделать это как можно больше разными способами! (задача то сама по себе совсем элементарная).

Решения:

Вот как это будет выглядеть при исполнении:

задача и решение, с++, практика программирования

Здесь показано несколько (5) вариантов решения для базовой строки в формате std::string. Но ещё много интересных вариантов может быть записано для строки в формате char[] (такой код будет даже проще для понимания).

P.S. В таком случае ваши функции вариантов (если вы хотите сохранить массив функций-обработчиков) могут иметь прототип:

Предлагайте следующие варианты!

Рассылка новых уроков по программированию:

Olej

Об авторе Olej

Стаж практических программных разработок около 40 лет. Преподаватель международной софтверной компании Global Logic. Постоянный автор публикаций IBM Developer Works. Научный редактор книжного издательства компьютерной литературы "Символ-Плюс", Санкт-Петербург.

Задача: заполнение строки словом: 3 комментария

  1. Наилучший по оптимальности из показанных будет rep4, но там выделение буфера (char buf[1000]) сделано с потолка и чисто для иллюстрации, легко его переполнить.
    Добавлю ещё 2 вариата в развитие этого способа:

  2. #include
    #include
    using namespace std;

    int main()
    {
    int a;
    cout<>a;
    int const BUFERSIZE=a;
    int bufer=0;
    string slovo;
    cout<>slovo;

    do
    {for(int i=0;i<slovo.size();i++)
    {
    if(bufer<BUFERSIZE)
    cout<<slovo[i];
    bufer++;
    }
    }while(bufer < BUFERSIZE);

    return 0;
    }

Добавить комментарий

Код размещайте в тегах: <pre class="lang:c++ decode:true ">YOUR CODE</pre>