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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
newb_programmer
237 / 237 / 19
Регистрация: 03.09.2011
Сообщений: 555
#1

Программа не слушается своего создателя! - C++

10.06.2013, 22:50. Просмотров 277. Ответов 2
Метки нет (Все метки)

Вообщем написал прогу, округляет число до указаного знака после запятой. Прога работает нормально в "мягком" диапазоне (до 8 цифр), а как только больше цифр сразу начинает выделыватся
Супер секретный код!!!

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
double round (double a, double b) 
{
    const int q=10;
    a*=(int)pow(q,b+1);
    int k=(int(a)%q);
    if (k>=5) {
        a+=(q-k);
        return a/pow(q,b+1);
        }
    else {
        a=int(a/q);
        return a/pow(q,b);
        }
}

ну например round(123.1234,3) вернет 123.123-тоесть все норм, а вот round(1234.1234,3) вернет 1234.12-что не есть хорошо. ну 8 цифров как бы намекают на чтото связаное с максимальным допустимым диапазоном в типе данных, например инт. я так прикидывал вроде в 2 млрд. вкладываюсь, но я вообщем нуб в этом деле, так что подскажите пожалуйста.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.06.2013, 22:50
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Программа не слушается своего создателя! (C++):

Seekp() Не слушается - C++
Добрый день . Изучаю C++ по книге . Использую Visual studio 2013. При решении задач возникла трудность с использованием функции...

Новый диалог не слушается - C++
такая проблема, добавляю к проекту новый диалог IDD_DIALOG2, на основой вешаю кнопку и для неё обрабочик void CTestDialog::OnButton1() ...

Реализация stl-ной queue с объектами своего класса, вылетает программа - C++
не могу разобраться, в чем проблема. необходимо реализовать очередь и запихивать туда объекты из своего класса, дело в том, что при...

Использование своего объекта своего класса внутри другого - C++
Здравствуйте. Есть класс для работы с матрицами. Все работает. Теперь нужно создать другой класс, где полями будут являться переменные -...

Компьютер не слушается! - Windows XP
ТАкая буда случилась в моё отсутствие комп включается заставка биоса стоит примерно 5 мин потом тухнет и чёрный экран минуты 2 и...

Таблица не слушается - HTML, CSS
Задали сделать обычную страницу с резюме. Проблема с шириной и высотой внутри таблицы. Расстояние от фотографии до текста по ширине и...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
GetVariable
163 / 119 / 5
Регистрация: 17.03.2013
Сообщений: 283
10.06.2013, 22:53 #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
/*
*****************************
*   ConstProg Studio 2013   *
*****************************
*/
 
#include <iostream>
#include <sstream>
#include <string>
#include <iomanip>
 
float rounding_nearest(float number, int precision);
 
int main()
{
    std::cout << "Enter number: ";
 
    float number;
 
    std::cin >> number;
 
    std::cout << "Enter rounding precision: ";
 
    int precision;
 
    std::cin >> precision;
 
    std::cout << "Answer: " << rounding_nearest(number, precision) << std::endl;
 
    return 0;
}
 
float rounding_nearest(float number, int precision)
{
    std::stringstream out_stream;
 
    out_stream << std::setprecision(precision) << number;
    
    std::string out = out_stream.str();
 
    return (float)atof(out.c_str());
}
0
newb_programmer
237 / 237 / 19
Регистрация: 03.09.2011
Сообщений: 555
11.06.2013, 19:50  [ТС] #3
Цитата Сообщение от GetVariable Посмотреть сообщение
...
Спасибо конечно за внимание к моей проблеме, но приведенный Вами код мне ни о чем не говорит и никак не помог соответственно

Добавлено через 19 часов 58 минут
вообщем я провел расследование с помощью дебагера. оказывается функция все правильно считает и выдает корректные результаты! но с какогото перепугу выводится на экран другое значение! и опять таки привожу пример!
число 12345.1234 округлить до 3го знака, функция возвращает 12345.123, но на экран выводится 12345.1
что это за чушь?!
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.06.2013, 19:50
Привет! Вот еще темы с ответами:

Мышка не слушается - Периферийные устройства
Windows XP, мышь не новая, раньше проблем таких не было. Время от времени (обычно, несколько раз в день) указатель самопроизвольно...

Курсор мыши не слушается - Windows 7
ноутбук самсунг. При нажатии на левую клавишу мыши или тачпада происходит открытие контекстного меню, а со временем курсор совсем не...

Apach не слушается конфигов - RedHat, Fedora Linux
Недавно начали проявляться проблемы с подключением к сайту, посмотрев что пишут люди, и проведя некоторые анализы выяснилось что проблемы...

Mail.ru не слушается. Изменение цвета - HTML, CSS
Черным по белому же пишу: .Sj19c-T6, .b-nav { box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px; background-color: rgba(0, 0, 0,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru