cout.setf(ios::fixed); //фиксированный формат(без экспоненты)
for(int i=0;i<=5;i++)
{
kv=n*n;
kvk=sqrt(n);
cout.fill('0'); cout.width(2);
Cout. precision(0); //0 цифр после запятой
cout<<n<<'\t';
cout.fill(' '); cout<<kv<<"\t\t";
cout. precision(6); cout<<kvk<<'\n';
n++;
}
}
Результат:
Число квадрат корень квадратный
_____________________________________
01 1 1.000000
02 4 1.414214
03 9 1.732051
04 16 2.000000
05 25 2.236068
Манипуляторы
Простой способ изменения некоторых форматных переменных состоит в использовании специальной функциональной операции, которая называется манипулятором.Таблица. Простые манипуляторы потока
Манипулятор | Действие |
dec | Установка флага форматирования с десятичными преобразованиями. |
hex | Установка флага форматирования с шестнадцатиричными преобразованиями. |
oct | Установка флага форматирования с восьмиричными преобразованиями. |
ws | Извлечение пробельных символов. |
endl | Вставка символа новой строки и очистка потока. |
ends | Вставка конечного пустого символа в строку. |
flush | Сброс на диск и очистка ostream |
Для работы с параметризованными манипуляторами надо дополнительно подключать файл iomanip.h .
Таблица. Параметризованные манипуляторы потока
setbase(int n) | Установка системы счисления при преобразованиях с основанием n (0, 8, 10 или 16). Нуль означает по умолчанию десятичную систему при выводе и правила С для литералов целых чисел при вводе. |
resetiosflags(long f) | Очистка форматных бит в ins или outs, заданных аргументом f. |
setiosflags(long f) | Установка бит форматирования в ins или outs, заданных аргументом f. |
setfill(int c) | Установка символа-заполнителя в c. |
setprecision(int n) | Установка точности представления чисел с плавающей точкой равной n разрядам |
setw(int n) | Установка ширины поля в значение n |
Манипуляторы воспринимают в качестве аргументов ссылку на поток и возвращают ссылку на тот же поток, поэтому манипуляторы могут объединяться в цепочку занесений в поток (или извлечений из потока) для того, чтобы изменять состояния потока в виде побочного эффекта, без фактического выполнения каких-либо занесений (или извлечений).