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

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

Войти
Регистрация
Восстановить пароль
 
Spirit370
 Аватар для Spirit370
1 / 1 / 2
Регистрация: 08.08.2013
Сообщений: 86
#1

Условие в функции, некорректно проходит проверка дробного числа - C++

13.03.2014, 01:46. Просмотров 283. Ответов 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
#include <iostream>
#include <windows.h>
#include <conio.h>
using namespace ::std;
 
double k(double c)
{
    // c >= -273,15 °С
    if (c <= -273,15) {cout << "HAHAHA";}
    return c + 273.15;
}
 
int main ()
{
    
 
    
    
    
    
    double c = 0;
    cout << "input temp celsius" << endl << "->";
    cin >> c;
    cout << "tenp K -> " << k(c) << endl;
    system("PAUSE");
}
Почему выводиться сообщение HAHAHA, даже если вводить больше -273,15 !!!!!!? ???
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.03.2014, 01:46     Условие в функции, некорректно проходит проверка дробного числа
Посмотрите здесь:

Округление дробного числа до целого в большую сторону. C++
C++ [C++] Возведение дробного числа в дробную степень
Вывод ошибки для дробного и отрицательного числа C++
C++ Математические операции для дробного числа ( заданного структурой )
Возведение дробного числа в степень C++
C++ Бинарный файл, не проходит проверка
C++ Дана строка. Определить, представляет ли она собой запись целого числа или запись дробного числа
C++ Возведение дробного числа в большую степень
некорректно работает цикл или условие C++
Написать функцию, обеспечивающую интерактивный ввод с клавиатуры дробного числа C++
Что такое 'p' в 16-ричной записи дробного числа? C++
C++ Прямоугольный треугольник, не проходит условие, хотя все верно!

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
volvo
Супер-модератор
Эксперт Pascal
 Аватар для volvo
22346 / 14523 / 4119
Регистрация: 22.10.2011
Сообщений: 25,725
Записей в блоге: 3
13.03.2014, 01:57     Условие в функции, некорректно проходит проверка дробного числа #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
9
if (c <= -273.15) {cout << "HAHAHA";}
Ищи различия...

Как найдешь - подумай, что на самом деле происходило в твоем коде...
rikimaru2013
C++ Game Dev
 Аватар для rikimaru2013
2303 / 1019 / 232
Регистрация: 30.11.2013
Сообщений: 3,385
13.03.2014, 02:39     Условие в функции, некорректно проходит проверка дробного числа #3
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Из-за запятой эти строки для программы одно и тоже:
C++
1
2
if (c <= -273,15) {cout << "HAHAHA";}
if (15) {cout << "HAHAHA";}
так как 15 всегда true - баг на лицо. Или вернее по лицу xD
volvo
Супер-модератор
Эксперт Pascal
 Аватар для volvo
22346 / 14523 / 4119
Регистрация: 22.10.2011
Сообщений: 25,725
Записей в блоге: 3
13.03.2014, 02:47     Условие в функции, некорректно проходит проверка дробного числа #4
То есть, дать ТС-у подумать - это лишнее, правда? Надо было все ему разжевать, вдруг да плюсик заработаешь? Или ты думаешь, я не мог написать то же самое, и только вот ждал, пока придет кто-нибудь еще и расскажет мне, что же такое происходит при написании запятой вместо точки?
Yandex
Объявления
13.03.2014, 02:47     Условие в функции, некорректно проходит проверка дробного числа
Ответ Создать тему
Опции темы

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