Имя пользователя:
Пароль:
 

Название темы: Перевод с Pascal на C++
Показать сообщение отдельно
pva pva вне форума

Аватара для pva

Ветеран


Сообщения: 1180
Благодарности: 279

Профиль | Отправить PM | Цитировать


2 варианта:
Код: Выделить весь код
long n = 100;
double f=100.2345;

// C
printf("%10ld", n);
printf("%10.2lf", f); // целые + дробные

// C++
cout.width(10);
cout << n;

cout.width(13); // общая длина поля
cout.precision(2);
cout << f;
процедурка: (она разве выдаёт n пробелов, а за ними число?)
Код: Выделить весь код
void __pascal Print(unsigned char n, int a)
{ /*Вывод числа а*/
   cout << setw(n) << ' ' << a;
}
Если надо вывести число, в поле из (итого) N символов, то нужно установить флаг width(N), который действует только на один operator<<, а затем сбрасывается в N=0 (то есть выведется столько, сколько минимум необходимо). Заполнение будет происходить символом, указанным в fill(), по умолчанию пробел. Пример:
Код: Выделить весь код
// setfill(...) вызывает ostream::fill(...);
// setw(...) вызывает ostream::width(...);
cout << setfill('0') << setw(10) << 123;

Последний раз редактировалось pva, 28-03-2009 в 21:10.


Отправлено: 20:48, 28-03-2009 | #2

Название темы: Перевод с Pascal на C++