Когда я запускаю следующую программу, она корректно отображает предыдущие нули:
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
//Code
int num1, num2, num3, num4, num5, num6;cout << "Enter ONE line containing at least six (6) integers." << endl;
cin >>num1>>num2>>num3>>num4>>num5>>num6;cout << setfill('0') << setw(7) << num1 << setfill('0') << setw(7) << num2 << setfill('0') << setw(7) << num3 << setfill('0') << setw(7) << num4 << setfill('0') << setw(7) << num5 << setfill('0') << setw(7) << num6 << endl;
return 0;
}
И я получаю следующий вывод:
Введите ОДНУ строку, содержащую не менее шести (6) целых чисел.
123 67 122 90 7674 3
000012300000670000122000009000076740000003
Но когда я добавляю еще одну строку вывода, которая также требует от меня использования setw, он внезапно превращает предыдущие нули в конечные нули.
Программа:
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
//Code
int num1, num2, num3, num4, num5, num6;cout << "Enter ONE line containing at least six (6) integers." << endl;
cin >>num1>>num2>>num3>>num4>>num5>>num6;
cout << "1: " << num1 << endl;
cout << "2: " << num2 << endl;
cout << "3: " << num3 << endl;
cout << "4: " << num4 << endl;
cout << "5: " << num5 << endl;
cout << "6: " << num6 << endl;
cout << "---------------------" << endl;
cout << ">" << setw(6) << num1 << setw(8) << right << num2 << setw(5) << left << num3 << "<" << endl;
cout << ">" << setw(6) << left << num4 << setw(8) << right << num5 << setw(5) << left << num6 << "<" << endl;
cout << "---------------------" << endl;cout << setfill('0') << setw(7) << left << num1 << setfill('0') << setw(7) << num2 << setfill('0') << setw(7) << num3 << setfill('0') << setw(7) << num4 << setfill('0') << setw(7) << num5 << setfill('0') << setw(7) << num6 << endl;
return 0;
}
Дает мне этот вывод:
Enter ONE line containing at least six (6) integers.
568 989 33 90 83 3
1: 568
2: 989
3: 33
4: 90
5: 83
6: 3
---------------------
>568 98933 <
>90 833 <
---------------------
568000098900003300000900000083000003000000
Как мне помешать ему изменить мои предыдущие нули на меняющиеся нули?
Задача ещё не решена.
Других решений пока нет …