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

Округление дробных чисел С++ - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 24, средняя оценка - 4.96
ansi_str
54 / 54 / 1
Регистрация: 22.09.2011
Сообщений: 310
19.03.2012, 21:14     Округление дробных чисел С++ #1
Здравствуйте, нужно округлить дробное число.

Самое простое сделать вот так:

C++
1
2
3
float smth;
smth = 345.678945;
printf("%2.3f", smth);
Но проблема в том, что нельзя использовать класс string.
Как можно "впендюрить в строку скажем округление до двузначного чила после запятой"

Например:

C++
1
2
3
float smth;
smth = 345.678945;
printf("%11.12f", smth);
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Centrino
0 / 0 / 0
Регистрация: 15.04.2011
Сообщений: 33
19.03.2012, 21:40     Округление дробных чисел С++ #2
Просто саму переменную округлить. Или что требуется?

Или вот посмотреть http://forum.codenet.ru/q8001/
ansi_str
54 / 54 / 1
Регистрация: 22.09.2011
Сообщений: 310
24.03.2012, 08:53  [ТС]     Округление дробных чисел С++ #3
Да, переменную до определённого числа после запятой
panicwassano
590 / 558 / 20
Регистрация: 07.11.2010
Сообщений: 2,004
24.03.2012, 09:07     Округление дробных чисел С++ #4
sscanf, а потом передать эту строку в конструктор string
Байт
 Аватар для Байт
13951 / 8782 / 1221
Регистрация: 24.12.2010
Сообщений: 15,890
24.03.2012, 09:25     Округление дробных чисел С++ #5
C
1
2
3
4
char b[20];
int z = 2;  // кол-во знаков после запятой
sprintf(b, "%.*f", z, smth);
smth = atof(b);
diagon
Higher
 Аватар для diagon
1920 / 1186 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
24.03.2012, 09:26     Округление дробных чисел С++ #6
Цитата Сообщение от ansi_str Посмотреть сообщение
Но проблема в том, что нельзя использовать класс string.
А где он у вас используется?
Yandex
Объявления
24.03.2012, 09:26     Округление дробных чисел С++
Ответ Создать тему
Опции темы

Текущее время: 23:59. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru