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

Выравнивание по правому краю введенного текста - C++

Восстановить пароль Регистрация
 
Harmonster
9 / 9 / 3
Регистрация: 20.05.2012
Сообщений: 101
13.12.2013, 11:50     Выравнивание по правому краю введенного текста #1
Может кто подсказать, правильно ли сделал?


Задание
Произвести выравнивание по правому краю введенного текста, для чего к каждой строке применить функцию WIDE(str,k), которая равномерно вставляет пробелы между словами так, чтобы длина строки str стала равной k. (Величина k должна быть больше длины самой длинной строки текста.)


Исходный код
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
28
29
30
31
32
#pragma warning(disable:4996)
#include <iostream>
#include <Windows.h>
#include <string.h>
using namespace std;
 
char* WIDE(char* Str, int Size)
{
    unsigned int i;
    char *outStr = new char[Size + 1];
    memset(outStr, 0, Size);
    for (i = 0; i < (Size - strlen(Str)); i++)
        outStr[i] = ' ';
    strcat(outStr, Str);
    return outStr;
}
 
int main()
{
    
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    char sec_string[80];
    int k;
    cout << "Исходная строка: ";
    cin.getline(sec_string, 80);
    cout << "Выравнивание: ";
    cin >> k;
    cout << "Строка: " << sec_string << endl;
    cout << "Результат: " << endl;
    cout << WIDE(sec_string, k) << endl;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.12.2013, 11:50     Выравнивание по правому краю введенного текста
Посмотрите здесь:

Открывается файл, выровнять текст по правому краю и слева добавить номер строки, C++
С++ есть задание дан файл с абзацем выровненым по левому краю , надо отформатировать по правому краю!! C++
C++ Разработать программу, которая разбивает заданный текст на две колонки и форматирует их по правому краю (без переноса).
Произвести выравнивание по правому краю введенного текста C++
Выравнивание строк в файле по правому краю C++
Выравнивание строки по правому краю до заданной длины C++
Выравнивание строки по правому краю до заданной длины C++
C++ Выравнивание текста по правому краю

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
CheshireCat
Эксперт С++
2907 / 1235 / 78
Регистрация: 27.05.2008
Сообщений: 3,309
13.12.2013, 11:56     Выравнивание по правому краю введенного текста #2
Нет. Твоя функция WIDE не вставляет пробелы между словами, как требуется по заданию, а просто добавляет пробелы слева от строки.
Harmonster
9 / 9 / 3
Регистрация: 20.05.2012
Сообщений: 101
13.12.2013, 12:06  [ТС]     Выравнивание по правому краю введенного текста #3
Цитата Сообщение от CheshireCat Посмотреть сообщение
Нет. Твоя функция WIDE не вставляет пробелы между словами, как требуется по заданию, а просто добавляет пробелы слева от строки.
Подскажите, пожалуйста, как тогда сделать?
Yandex
Объявления
13.12.2013, 12:06     Выравнивание по правому краю введенного текста
Ответ Создать тему
Опции темы

Текущее время: 12:27. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru