«floating-point» 태그된 질문

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



1
더블을 32 비트 정수로 반올림하는 빠른 방법 설명
Lua의 소스 코드를 읽을 때 Lua가 a macro를 사용 double하여 32 비트로 반올림하는 것을 알았 습니다 int. 을 추출하면 macro다음과 같습니다. union i_cast {double d; int i[2]}; #define double2int(i, d, t) \ {volatile union i_cast u; u.d = (d) + 6755399441055744.0; \ (i) = (t)u.i[ENDIANLOC];} 여기서 엔디안 , 리틀 엔디안, …

11
단 정밀도와 배정 밀도 부동 소수점 연산의 차이점은 무엇입니까?
단 정밀도 부동 소수점 연산과 배정 밀도 부동 연산의 차이점은 무엇입니까? 비디오 게임 콘솔과 관련하여 실용적인 용어에 특히 관심이 있습니다. 예를 들어, Nintendo 64는 64 비트 프로세서를 가지고 있으며 그렇다면 그렇다면 배정도 부동 소수점 연산이 가능 했습니까? PS3와 Xbox 360은 배정도 부동 소수점 연산을 할 수 있거나 단 정도만 사용할 …

6
float를 다른 변수에 복사하면 동일합니까?
내가 사용하는 것을 알고 ==부동 소수점 변수의 평등을 확인하는 것은 좋은 방법이 아닙니다. 그러나 나는 다음 진술로 그것을 알고 싶습니다. float x = ... float y = x; assert(y == x) 이후 y에서 복사 x, 주장은 사실 일 것이다?

2
IEEE 754 float가 정확하게 표현할 수없는 첫 번째 정수는 어느 것입니까?
명확하게하기 위해 IEE 754 수레를 구현하는 언어를 사용하는 경우 다음을 선언합니다. float f0 = 0.f; float f1 = 1.f; ... 그런 다음 다시 인쇄하면 0.0000과 1.0000이 표시됩니다. 그러나 IEEE 754는 실제 라인을 따라 모든 숫자를 나타낼 수 없습니다. 0에 가까워지면 '갭'이 작습니다. 멀어 질수록 간격이 더 커집니다. 내 질문은 : …

5
Python Pandas Aggregation 결과에서 과학적 표기법 형식화 / 억제
매우 큰 숫자에 대한 과학적 표기법을 생성하는 팬더에서 groupby 작업의 출력 형식을 어떻게 수정할 수 있습니까? 파이썬에서 문자열 형식을 지정하는 방법을 알고 있지만 여기에 적용 할 때 손실됩니다. df1.groupby('dept')['data1'].sum() dept value1 1.192433e+08 value2 1.293066e+08 value3 1.077142e+08 문자열로 변환하면 과학 표기법이 표시되지 않지만 이제는 문자열 형식을 지정하고 소수를 추가하는 방법이 궁금합니다. …

4
왜 파이썬 3에서 부동 소수점 값 4 * 0.1이 좋아 보이지만 3 * 0.1은 그렇지 않습니까?
대부분의 소수에는 정확한 부동 소수점 표현이 없습니다 ( 부동 소수점 수학은 깨졌습니까? ). 그러나 나는 이유를 볼 수 없습니다 4*0.1잘으로 인쇄되어 0.4있지만, 3*0.1두 값이 실제로 못생긴 진수 표현을하지 않을 때입니다 : >>> 3*0.1 0.30000000000000004 >>> 4*0.1 0.4 >>> from decimal import Decimal >>> Decimal(3*0.1) Decimal('0.3000000000000000444089209850062616169452667236328125') >>> Decimal(4*0.1) Decimal('0.40000000000000002220446049250313080847263336181640625')

6
Double.MIN_VALUE가 음수가 아닌 이유
Double.MIN_VALUE실제로 실제로 Doubles가 취할 수있는 최소값이 아닌 이유에 대해 누구나 알 수 있습니까? 양수 값이며 Double은 음수 일 수 있습니다. 유용한 숫자 인 이유를 이해하지만 특히와 비교할 때 매우 직관적이지 않은 이름 인 것 같습니다 Integer.MIN_VALUE. 그것을 Double.SMALLEST_POSITIVE또는 MIN_INCREMENT이와 유사한 것으로 부르면 의미가 더 명확합니다. 또한 Doubles가 취할 수있는 최소값은 …

16
PHP에서 float 비교
이 샘플 코드와 같이 PHP에서 두 개의 float를 비교하고 싶습니다. $a = 0.17; $b = 1 - 0.83; //0.17 if($a == $b ){ echo 'a and b are same'; } else { echo 'a and b are not same'; } 이 코드에서 그것의 결과를 반환 else조건 대신에 if, 비록 조건을 …

17
Bash에서 두 개의 부동 소수점 숫자를 비교하는 방법은 무엇입니까?
bash 스크립트 내에서 두 개의 부동 소수점 숫자를 비교하려고 열심히 노력하고 있습니다. 예를 들어 변수를 사용해야합니다 let num1=3.17648e-22 let num2=1.5 이제이 두 숫자를 간단히 비교하고 싶습니다. st=`echo "$num1 < $num2" | bc` if [ $st -eq 1]; then echo -e "$num1 < $num2" else echo -e "$num1 >= $num2" fi …

9
Double.NaN == Double.NaN이 false를 반환하는 이유는 무엇입니까?
방금 OCPJP 질문을 공부하고 있었고이 이상한 코드를 발견했습니다. public static void main(String a[]) { System.out.println(Double.NaN==Double.NaN); System.out.println(Double.NaN!=Double.NaN); } 코드를 실행하면 다음과 같은 결과가 나타납니다. false true 어떻게 출력 false우리가 서로 같은 모양 두 가지를 비교하는거야? 무슨 NaN뜻입니까?
155 java  floating-point  nan  scjp  ocpjp 

10
C #에서 부동 소수점 수학이 일관됩니까? 할 수 있습니까?
아니요, 이것은 또 다른 "왜 (1 / 3.0) * 3! = 1" 질문 이 아닙니다 . 최근에 부동 소수점에 대해 많이 읽었습니다. 특히, 동일한 계산이 다른 아키텍처 또는 최적화 설정에서 다른 결과 를 제공 할 수있는 방법 . 재생을 저장하거나 P2P 네트워크로 연결된 비디오 게임 (서버-클라이언트와 달리)의 문제로, 모든 클라이언트가 …

7
'float'vs. 'double'정밀도
코드 float x = 3.141592653589793238; double z = 3.141592653589793238; printf("x=%f\n", x); printf("z=%f\n", z); printf("x=%20.18f\n", x); printf("z=%20.18f\n", z); 당신에게 출력을 줄 것이다 x=3.141593 z=3.141593 x=3.141592741012573242 z=3.141592653589793116 여기서 출력의 세 번째 줄 741012573242은 쓰레기이고 네 번째 줄 116은 쓰레기입니다. 플로트에는 항상 16 개의 유효 숫자가 있고 플로트에는 항상 7 개의 유효 숫자가 …
155 c  floating-point 

3
0.1을 여러 번 더해도 손실이없는 이유는 무엇입니까?
나는 0.1십진수가 유한 이진수 ( 설명 )로 정확하게 표현 될 수 없다는 것을 알고 있으므로 double n = 0.1약간의 정밀도를 잃고 정확하게되지 않습니다 0.1. 반면에는 0.5이므로 정확하게 표현할 수 있습니다 0.5 = 1/2 = 0.1b. 0.1 세 번 추가 하면 정확히 0.3다음 코드가 인쇄 되지는 않는다고 이해할 수 있습니다 false. …

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