«floating-point» 태그된 질문

부동 소수점 숫자는 정수보다 큰 범위를 나타낼 수 있지만 정밀도는 떨어지지 만 동일한 양의 메모리를 사용하는 실수의 근사값입니다. 귀하의 질문이 작은 산술 오류 (예 : 0.2 + 0.1이 0.300000001과 같은 이유) 또는 십진수 변환 오류에 관한 것이라면, 게시하기 전에 아래에 링크 된 "정보"페이지를 읽으십시오.


10
정밀도를 잃지 않고 float를 double로 변환
나는 기본 float가 있고 기본 double이 필요합니다. 단순히 플로트를 두 배로 캐스팅하면 이상한 추가 정밀도가 제공됩니다. 예를 들면 : float temp = 14009.35F; System.out.println(Float.toString(temp)); // Prints 14009.35 System.out.println(Double.toString((double)temp)); // Prints 14009.349609375 그러나 캐스팅 대신 부동 소수점을 문자열로 출력하고 문자열을 double로 구문 분석하면 원하는 것을 얻습니다. System.out.println(Double.toString(Double.parseDouble(Float.toString(temp)))); // Prints 14009.35 String으로 …

2
조용한 NaN과 신호 NaN의 차이점은 무엇입니까?
부동 소수점에 대해 읽었으며 NaN이 작업에서 발생할 수 있음을 이해합니다. 그러나 나는 이것이 개념이 정확히 무엇인지 이해할 수 없습니다. 그들 사이의 차이점은 무엇입니까? C ++ 프로그래밍 중에 어떤 것이 생성 될 수 있습니까? 프로그래머로서 sNaN을 유발하는 프로그램을 작성할 수 있습니까?

8
JVM의 JIT 컴파일러가 벡터화 된 부동 소수점 명령어를 사용하는 코드를 생성합니까?
내 Java 프로그램의 병목 현상이 실제로 많은 벡터 내적을 계산하기위한 타이트한 루프라고 가정 해 보겠습니다. 예, 프로필을 작성했습니다. 예, 병목 현상입니다. 예, 중요합니다. 예, 알고리즘이 그렇습니다. 예, 바이트 코드를 최적화하기 위해 Proguard를 실행했습니다. 작업은 본질적으로 내적입니다. 에서와 같이 두 개가 float[50]있고 쌍을 이루는 곱의 합을 계산해야합니다. SSE 또는 MMX와 ​​같이 …

6
0.0과 1.0 사이에는 몇 개의 이중 숫자가 있습니까?
이것은 수년 동안 내 마음 속에 있었던 일이지만 전에 묻지 않았습니다. 많은 (의사) 난수 생성기는 0.0에서 1.0 사이의 난수를 생성합니다. 수학적으로이 범위에는 무한한 숫자가 있지만 double부동 소수점 숫자이므로 유한 정밀도를 갖습니다. 따라서 질문은 다음과 같습니다. double0.0과 1.0 사이에 몇 개의 숫자가 있습니까? 1과 2 사이에 숫자가 많습니까? 100과 101 사이? …

18
파이썬으로 쉽게 예쁜 수레 인쇄?
수레 목록이 있습니다. 간단히 말하면 print다음과 같이 표시됩니다. [9.0, 0.052999999999999999, 0.032575399999999997, 0.010892799999999999, 0.055702500000000002, 0.079330300000000006] 목록을 순회하기 print "%.2f"위해 for루프 가 필요한을 사용할 수 있지만 더 복잡한 데이터 구조에서는 작동하지 않습니다. 나는 뭔가를 원한다 (나는 이것을 완전히 구성하고있다) >>> import print_options >>> print_options.set_float_precision(2) >>> print [9.0, 0.052999999999999999, 0.032575399999999997, 0.010892799999999999, 0.055702500000000002, 0.079330300000000006] …


10
C ++에서 긴 방정식을 구현할 때 높은 수준의 접근 방식을 통해 성능을 향상시킬 수있는 방법
엔지니어링 시뮬레이션을 개발 중입니다. 여기에는 고무와 같은 재료의 응력을 계산하기 위해 다음 방정식과 같은 몇 가지 긴 방정식을 구현하는 것이 포함됩니다. T = ( mu * ( pow(l1 * pow(l1 * l2 * l3, -0.1e1 / 0.3e1), a) * a * ( pow(l1 * l2 * l3, -0.1e1 / 0.3e1) …



2
이 부동 소수점 최적화가 허용됩니까?
나는 float큰 정수를 정확하게 표현하는 능력을 잃는 곳을 확인하려고 노력했습니다 . 그래서이 작은 조각을 썼습니다. int main() { for (int i=0; ; i++) { if ((float)i!=i) { return i; } } } 이 코드는 clang을 제외한 모든 컴파일러에서 작동하는 것 같습니다. Clang은 간단한 무한 루프를 생성합니다. Godbolt . 허용됩니까? 그렇다면 …


4
1.0이 아닌 1.0에 가장 가까운 두 배는 얼마입니까?
1.0에 가장 가깝지만 실제로 1.0이 아닌 double을 프로그래밍 방식으로 얻을 수있는 방법이 있습니까? 이를 수행하는 한 가지 해키 방법은 double을 동일한 크기의 정수로 memcpy 한 다음 1을 빼는 것입니다. IEEE754 부동 소수점 형식이 작동하는 방식은 분수 부분을 모두 0 (1.000000000000)에서 모두 1 (1.111111111111)로 변경하면서 지수를 1만큼 감소시킵니다. 그러나 정수가 리틀 …

4
반올림하지 않고 부동 소수점을 문자열로 변환
설명 할 필요가없는 이유로 len ()으로 계산할 문자열로 변환 할 float가 필요한 프로그램을 만들고 있습니다. 그러나 str (float (x))는 문자열로 변환 될 때 x가 반올림되어 전체를 버립니다. 누구든지 그것에 대한 수정 사항을 알고 있습니까? 알고 싶은 경우 사용되는 코드는 다음과 같습니다. len(str(float(x)/3))


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.