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

Ограничение ширины строки при выводе в консоль - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Переделать программу с использованием функций http://www.cyberforum.ru/cpp-beginners/thread993456.html
Помогите переделать задачку. Нужно реализовать в виде функций. #include "stdafx.h" using namespace std; #include <iostream>; #include <math.h>; int _tmain(int argc, _TCHAR* argv) { int g,n,c(0);
C++ Цикл для генерации нескольких синусоид не могу реализовать цикл для генерации нескольких синусоид int i = 0; //будем суммировать к частоте для получения новой float summa = 0; while (i < 100) { summa = sin((100+i)*новый тик/частота дискетизации); i = i + 1; summa = summa + summa; } return summa; http://www.cyberforum.ru/cpp-beginners/thread993446.html
C++ Как обьявить массив неизвестного размера?
Помогите разобраться, есть класс, в котором обьявлен двумерный массив структур. Размер массива неизвестен, но должен быть определен во время выполнения функции load(). Как это сделать? #define MAX 512 class CModel { public: struct SVertex { float x, y;
Функция или библиотека? C++
В чем разница, когда говорят написать функцию и написать библиотеку?
C++ Конструктор копирования http://www.cyberforum.ru/cpp-beginners/thread993424.html
Здравствуйте! Есть класс А с конструктором копирования и класс B, который содержит вектор указателей на А. Class A { public: A(); A(const A&);
C++ Шаблон метода класса Здравствуйте, могу ли я создавать шаблоны методов "нешаблонных" классов? например class My_class { public: template<class Data> Data function(Data&); ......................... }; .............. подробнее

Показать сообщение отдельно
ForEveR
В астрале
Эксперт С++
7970 / 4732 / 321
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
31.10.2013, 14:10
Я бы сделал как-то так. Не очень красиво конечно, можно сделать лучше. Использую допущение, что слова разделяются только пробелом.
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
class StringProcessing 
{
  public:
      StringProcessing() : characterWidth(40),
                     textToBeFormatted("NULL") {}
      
      inline void initString() {
          textToBeFormatted = "text    some text   some text some text   some text some text"
              "text some text  some text    some text some text some text"
              "text    some      text some    text some   text some text some text"
              "text some  text some    text some    text some text some text"
              "text   some     text some text some   text some text some text";
      }
 
      inline void displayString()
      {
         const std::string& s = textToBeFormatted;
         const int& width = characterWidth;
         for (int current = 0; current < s.length();)
         {
            if (s.length() < width)
            {
               output(s);
               break;
            }
            if (s.length() - current < width)
            {
               output(s.substr(current));
               break;
            }
            std::string substr = s.substr(current, width);
            current += width;
            size_t space = substr.rfind(' ');
            if (space != std::string::npos && (substr[width - 1] != ' ' &&
               (s.length() > current && s[current] != ' ')))
            {
               current -= width - space - 1;
               substr = substr.substr(0, space + 1);
            }
            output(substr);
         }
      }
  private:
      inline void output(const std::string& s)
      {
         std::cout << std::setfill(' ') << std::right << std::setw(characterWidth) << s << std::endl;
      }
      int characterWidth;
      std::string textToBeFormatted;
};
http://ideone.com/pK0str
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru