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

Сравнение float - C++

Восстановить пароль Регистрация
 
perevezenzev
2 / 2 / 0
Регистрация: 30.01.2013
Сообщений: 129
08.01.2014, 17:48     Сравнение float #1
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
void setup() 
{ 
 Serial.begin(9600);
 
    float azimuth = 0;
    float course = 180;
    
    float a = sin((azimuth - course)*PI/180.0);
    Serial.print(a); Serial.print(" - ");
    Serial.print(azimuth); Serial.print("/"); Serial.print(course);
    Serial.print(" - ");
   
     if (azimuth == course){
       Serial.println("m");
     } else if (a <= 0.0){
      Serial.println("r");
     }else{
      Serial.println("l");
     }
 
  
} 
 
void loop() {}
Должно выдавать "r" а выдает "l". В чем дело?

Добавлено через 2 часа 22 минуты
Выводит:
0.00 - 0.00/180.00 - l
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.01.2014, 17:48     Сравнение float
Посмотрите здесь:

C++ Ошибка cannot convert 'float' to 'float*'
C++ Сравнение float.
Float C++
invalid types `float[float]' for array subscript C++
опять ошибка.на этот раз cannot convert `float (*)(float)' to `float' in argument passing C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
0x10
2425 / 1597 / 232
Регистрация: 24.11.2012
Сообщений: 3,919
08.01.2014, 17:54     Сравнение float #2
Числа с плавающей точкой нужно сравнивать с некоторой точностью.
perevezenzev
2 / 2 / 0
Регистрация: 30.01.2013
Сообщений: 129
08.01.2014, 17:56  [ТС]     Сравнение float #3
Цитата Сообщение от 0x10 Посмотреть сообщение
Числа с плавающей точкой нужно сравнивать с некоторой точностью.
это как, подробнее можно?
zss
Модератор
Эксперт С++
 Аватар для zss
5942 / 5547 / 1783
Регистрация: 18.12.2011
Сообщений: 14,164
Завершенные тесты: 1
08.01.2014, 17:56     Сравнение float #4
C++
1
 if (fabs(azimuth-course)<1e-9){
Yandex
Объявления
08.01.2014, 17:56     Сравнение float
Ответ Создать тему
Опции темы

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