@pynew_user

Как выровнять строки при выводе в терминал?

Интересует вопрос по поводу правильно вывода таблицы текста. Необходимо, чтобы элементы были ровно под каждым заголовком.
Вот кусок кода
string airplane[5] {
        "Тип самолета", "Номер борта", "Количество рейсов", //строковый массив заголовочной строки таблицы
        "Налет в часах", "Налет тыс. км"
    };
    string table[6][5] = {
    {"Поршневой", "H-123", "15", "10", "10"},
    {"Турбовинтовой", "RA-857", "9", "12", "11"},
    {"Турбореактивный", "VC-25", "30", "15", "13"},
    {"С ракетным двигателем", "CI-40", "5", "6", "5"},
    {"С комбинированной установкой", "L-19", "16", "21", "20"},
    {"Электрический самолет", "M-43", "38", "11", "9"},
    }; 

for (const auto & i: airplane){ // вывод шапки массива для удобного ориентирования 
            cout << setw(40) << left << i << "\t";
        }
for (int i = 0; i < argumet_2; i++){ 
            for (int j = 0; j < sizeof (table[i])/sizeof(*table[i]); j++){

                cout << left << setw(30) << table[i][j]; 
            }  
            cout << '\n';
        }


Пытался разными способами через setw и табуляцию, но безуспешно. Нужно что бы вывод ориентировался на длину строки и добавлял нужное число пробелов.

Вот пример некорректного вывода:
626b08db2af64468316137.jpeg
  • Вопрос задан
  • 176 просмотров
Пригласить эксперта
Ответы на вопрос 1
Используйте моноширинный шрифт и табуляцию
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы