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

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

Восстановить пароль Регистрация
Другие темы раздела
C++ Разбить строку http://www.cyberforum.ru/cpp-beginners/thread589400.html
Есть строка: first<br/>second<br/>third<br/>... Нужно написать функцию, чтобы в результате получилось на выходе first second third например в vector<string> Вот что смог "составить" я:
C++ строки Даны 2 строки S1 и S2. Создать строку S1 которая содержит последние 3 символа строки S2 http://www.cyberforum.ru/cpp-beginners/thread589395.html
C++ С чего начать програмирование?
Я занимаюсь в основном в Веб среде. И решил расширить свои знания на C++. Дело в том что теорему запомнить сложно. Практика учет очень даже быстро. Подскажите практические мануалы, желательно не видео. Буду благодарен.
Обработка массивов символов. Динамический массив C++
Дано предложение в виде статического массива, где слова разделены пробелом. Скопировать предложение в динамический массив и поменять местами первое и последнее слова. Вывести полученное предложение на экран. - Помогите, так как времени в обрез, куча курсовых и типовых, а сдать надо. Заранее благодарю
C++ Двумерный массив. Найти максимальный элемент 3 и 4 строк http://www.cyberforum.ru/cpp-beginners/thread589334.html
Информация о колоичестве жильцов в каждой из четырех квартир каждого этажа 12-ти этажного дома храниться в двумерном массиве (в первой строке - информация о квартирах первого этажа, во второй второго и т.д.) В каждой квартире проживает одна семья найдите численность самой большой семьи в квартирах 3-его и 4-ого этажей.
C++ Морзянка Короч дела такие..... Все вроде работает.... но мне нужно что бы руссие буковки переводи, и как наоборот сделать, не пойму... и еще хорошобы чтобы попискивал ))) заранее спасибо!!! #include "stdafx.h" #include "Windows.h" #include <locale.h> #include <conio.h> int _tmain(int argc, _TCHAR* argv) подробнее

Показать сообщение отдельно
Raikerian
9 / 9 / 1
Регистрация: 10.05.2011
Сообщений: 101
28.05.2012, 19:07     Работа со строками (равномерная вставка пробелов в начальную строку)
Разработать алгоритм и программу для равномерной вставки пробелов в начальный строку (длиной менее 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____) Тоесть в конце слова еще пробелы. Просьба помочь
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 18:34. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru