FAQ:ANSI CPP — различия между версиями

Материал из Весельчак У
Перейти к: навигация, поиск
м (Не получается сравнить два числа типа double)
(Не получается сравнить два числа типа double)
Строка 1: Строка 1:
 
===Не получается сравнить два числа типа double===
 
===Не получается сравнить два числа типа double===
 +
стандартный прием - задание точности:
 +
<pre>
 +
#include <math.h>
 +
double d1,d2;
 +
double acc=0.00001;//требуемая точность сравнения
 +
...
 +
...
 +
if( fabs(d1-d2) < acc )
 +
{
 +
//операнды равны (с точностью acc)
 +
}
 +
else
 +
{
 +
//убедились, что операнды не равны, здесь можно
 +
//смело сравнивать операторами ">" и "<"
 +
}
 +
</pre>
  
 
<!-- тест блока кода -->
 
<!-- тест блока кода -->

Версия 10:10, 20 апреля 2007

Не получается сравнить два числа типа double

стандартный прием - задание точности:

	#include <math.h>
	double d1,d2;
	double acc=0.00001;//требуемая точность сравнения
	...
	...
	if( fabs(d1-d2) < acc )
	{
		//операнды равны (с точностью acc)
	}
	else
	{
		//убедились, что операнды не равны, здесь можно
		//смело сравнивать операторами ">" и "<"
	}


#include <stdio.h>

int main(int argc, char ** argv)
{
  return 0; // xxxxx "aaaa"
}


Указан неподдерживаемый язык.

Вы должны указать язык следующим образом: <source lang="html4strict">...</source>

Поддерживаемые языки:

[развернуть]


#include <stdio.h>

int main(int argc, char ** argv)
{
  return 0; // <b>xxxxx</b> "aaaa"
}


#include <stdio.h>

int main(int argc, char ** argv)
{
  return 0; // <b>xxxxx</b> "aaaa"
}

Как задать число знаков после запятой у float при преобразовании в строку?

Как динамически задать число знаков после запятой у float при преобразовании в строку?