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

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

Войти
Регистрация
Восстановить пароль
 
Roodikk
0 / 0 / 0
Регистрация: 17.11.2014
Сообщений: 5
#1

Округляет значение double - C++

18.11.2014, 22:54. Просмотров 201. Ответов 3
Метки нет (Все метки)

Всем доброго времени суток.
Написал конвертор преобразующие дюймы в футы
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
// Программа для преобразования
// дюймов в футы:
// Inch = Feet/nRatio
//
#include <stdio.h>
#include <iostream>
using namespace std;
int main(int nNumberofArgs, char* pszArgs[])
{
// Введите значение в дюймах
int nInch;
cout << "Enter a value in inches: ";
cin >> nInch;
// для приведенной формулы преобразования
//укажем значение преобразующего делителя
int nRatio;
nRatio = 12;
// используем вычисленный коэффициент для
// преобразования футов  в дюймы
double nFeet;
nFeet = nInch/nRatio;
// вывод результатов
cout << "Result in feetes: ";
cout << nFeet;
return 0;
}
Причем задал тип переменной nFeet как double

Правильно ли я понимаю, что значение переменной nFeet может быть дробным? Если да, то почему тогда отсекается вся дробная часть? Что нужно сделать, чтобы выводилось дробное значение?
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.11.2014, 22:54     Округляет значение double
Посмотрите здесь:

C++ округляет число
Помогите написать программу, которая округляет значение на сотые C++
C++ Как проверить максимальное значение long double
Как записать значение типа double в char? C++
C++ Минимальное значение типа double перед нулем
Выводит неверное значение элемента массива типа double C++
Как присвоить переменной Double значение NaN? C++
Pthread.h, как вернуть из потоковой функции значение типа double? C++
C++ Непонятно выводится значение числа типа double
Double возвращает не правильное значение C++
Значение double, float как можно разложить на байты C++
Переменная double отображается неправильно когда ее значение = 0 C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Dennis Ritchie
 Аватар для Dennis Ritchie
546 / 138 / 29
Регистрация: 27.07.2014
Сообщений: 2,445
18.11.2014, 23:00     Округляет значение double #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
// ÏðîãðГ*ììГ* äëÿ ïðåîáðГ*çîâГ*Г*ГЁГї
// äþéìîâ â ôóòû:
// Inch = Feet/nRatio
//
#include <iostream>
using namespace std;
 
int main(int nNumberofArgs, char* pszArgs[])
{
    // Ââåäèòå Г§Г*Г*Г·ГҐГ*ГЁГҐ Гў äþéìГ*Гµ
    double nInch;
    cout << "Enter a value in inches: ";
    cin >> nInch;
    // äëÿ ïðèâåäåГ*Г*îé ôîðìóëû ïðåîáðГ*çîâГ*Г*ГЁГї
    //ГіГЄГ*æåì Г§Г*Г*Г·ГҐГ*ГЁГҐ ïðåîáðГ*çóþùåãî äåëèòåëÿ
    double nRatio;
    nRatio = 12;
    // èñïîëüçóåì âû÷èñëåГ*Г*ûé êîýôôèöèåГ*ГІ äëÿ
    // ïðåîáðГ*çîâГ*Г*ГЁГї ôóòîâ  Гў äþéìû
    double nFeet;
    nFeet = nInch / nRatio;
    // âûâîä ðåçóëüòГ*òîâ
    cout << "Result in feetes: ";
    cout << nFeet;
    return 0;
}
true_bugmaker
28 / 5 / 1
Регистрация: 18.11.2014
Сообщений: 68
18.11.2014, 23:02     Округляет значение double #3
надо так, nFeet = (double)nInch/nRatio; иначе у тебя вычисляется целое по типу операндов, и потом только это целое присваивается переменной типа double.
IrineK
Заблокирован
19.11.2014, 04:13     Округляет значение double #4
Цитата Сообщение от true_bugmaker Посмотреть сообщение
надо так,
Лучше написать
C++
1
double nRatio = 12.0;
Yandex
Объявления
19.11.2014, 04:13     Округляет значение double
Ответ Создать тему
Опции темы

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