Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Raikerian
9 / 9 / 1
Регистрация: 10.05.2011
Сообщений: 101
#1

Работа со строками (равномерная вставка пробелов в начальную строку) - C++

28.05.2012, 19:07. Просмотров 466. Ответов 0
Метки нет (Все метки)

Разработать алгоритм и программу для равномерной вставки пробелов в начальный строку (длиной менее 50 символов) так, чтобы ее длина стала равной 50 символам. Перенос слов на новую строку осуществлять на месте пропуска.

Собственно долго думал и получил нечто следующее:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
int main()
{
    setlocale(LC_ALL, "");
    const int Dest = 50;
    char str[50];
    cout << "Введите текст: ";
    gets(str);
    char new_str[50];
    int par=Dest/strlen(str);
    /*Temp = *(str+strlen(str)-1);
    *(str+strlen(str)-1) = ' ';
    *(str+strlen(str)) = Temp;*/
    for (int j=0, i=0; j<Dest; j+=par, ++i)
    {
        *(new_str+j) = *(str+i);
        for (int k=1; k<par; ++k)
            *(new_str+j+k) = ' ';
    }
    cout << "\nНовая строка: " << new_str << endl;
    cin.sync();
    cin.get();
    return 0;
}
Проблемы: выскакивает ошибка в конце (stack overflow new_str) и пробелы добавляются мне кажется не так (например при вводе par получаю p____a____r____) Тоесть в конце слова еще пробелы. Просьба помочь
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.05.2012, 19:07
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Работа со строками (равномерная вставка пробелов в начальную строку) (C++):

Равномерная вставка пробелов в строку - C++
Разработать алгоритм и программу для равномерной вставки пробелов в начальный строку (длиной менее 50 символов) так, чтобы ее длина стала...

Работа со строками. Определить количество пробелов в строке и вывести на экран - C++
ввести строку символов.определить количество пробелов в строке и вывести на экран.вывести на экран символ,номер позиции которого...

Работа со строками (вывести на экран введенную строку) - C++
Помогите пожалуйста, нужно просто вывести на экран, введенную строку, что не так: string stroka; printf(&quot;Vvedi stroku: &quot;); ...

Если предложение начинается с пробелов, считать строку после пробелов. Правильно ли работает функция? - C++
Скажите пожалуйста правильно ли я написала функцию которая: если предложение начинается с пробелов она считывает строку после пробелов то...

работа со строками. Перевернуть, заданную пользователем строку, в отдельной функции - C++
задание- перевернуть, заданную пользователем строку, в отдельной функции; написал вот такой код, переворачиваю-&gt; копирую-&gt;вывожу ...

Работа со строками ( разбить строку на N заданных частей с помощью strncpy) - C++
Все доброго времени суток. Суть моей программы такова: меня нужно разбить строку на N заданных частей с помощью strncpy. Немного написал...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.05.2012, 19:07
Привет! Вот еще темы с ответами:

Работа со строками (записать в другую строку первое слово и поставить пробел) - C++
Помогите разобраться, мы вводим с клавиатуры строку,строка из нескольких слов отделяемых &quot;;&quot; как записать в другую строку первое слово и...

С++. Вставка символов/пробелов - C++
Здравствуйте, только начинаю программировать в С++, работаю со строками. Подскажите, пожалуйста, как реализуется вставка в строку...

Задать количество пробелов между строками - C++
Здравствуйте, форумчане! Возник такой вопрос: как можно численно задать к-во пробелов между строками (неважно какими, будь то текст, либо...

Вставка пробелов перед заданными символами - C++
Просидел значительное время над заданием а так и не понял как это реализовать. Наверное еще не хватает опыта (начинающий в C++). Задание...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru