내가 코드가 좋아하는 C에서 부동 소수점 숫자 놀고 있었는데 오늘 : float a = 0.0;
a += 0.8;
if(a == 0.800000)
printf("correct");
문이 실행되지 않는 경우 이에 대한 나는 0.800000이었다 a의 값을 출력한다. 1correct2correct3correct4correct5correct6co
방금 Python에서 Decimal 클래스를 배웠고 십진수의 정밀도를 수정하는 데 몇 가지 문제가 있습니다. 코드 : from decimal import *
def main() :
getcontext().prec = 50
print Decimal(748327402479023).sqrt()
if __name__ == '__main
에 문제를 부동 소수점 부정확성을 수정? x <- 31/60
...
y <- ceiling(x*60)
나는 새로운 기능하고 생각 해요 : 분할이 옵션을 선택하지 않습니다 전에 곱셈을하는는 , 내 코드는 다음과 같이 보입니다 ceil <- function(x) {
ceiling(signif(x))
}
을하지만 난 R을 처음 접했을 때,
예를 들어 의 뺄셈의 결과 ... $aa = 10694994.89;
$bb = 10696193.86;
$ab = $aa - $bb;
// result is:-1198.9699999988 not the -1198,97
그러나이 exampe에서 : $cc = 0.89;
$dd = 0.86;
$cd = $cc - $dd;
//Result is: 0
이 문자열을 정확한 숫자 표현으로 변환하는 방법이 필요합니다. 나는 꽤 많은 것들을 시도했고, 내가 아는 바로는 이것이 작동해야한다 (유명한 마지막 단어). 라이브러리를 설치하지 않으려 고 노력하고 있으며 변환 할 숫자가 많습니다. 나는 이진수로 긴 십진수를 표현하는 것이 어렵다는 것을 알고 있지만 해결책이 필요하다. #include <iostream>
M_PI는 3.14159265358979323846으로 정의되는 매크로이며 double보다 정확합니다. 나는 플로트에서 대답을 얻으려고 노력하고 있으며 캐스팅의 양이 도움이 될 것입니다. 결과는 항상 6.12323426e-017 또는 -4.37113883e-008입니다. M_PI를 플로트에 캐스트하면됩니다. 답변은 0이어야하며 플로트에 저장하고 싶습니다.
long double 유형이 64 비트보다 정밀도가 높은 플랫폼에서 작업하고 있다고 가정합니다. 주어진을 일부 규정 된 반올림 (위쪽, 아래쪽, 가장 가까운 반올림 등)을 사용하여 일반 배정도 숫자로 변환하는 가장 빠른 방법은 무엇입니까? 는 질문이 더 정확하게 나 구체적인 예를 줄 수 있도록 : N 주어진 long double하자, 그리고 M는 그 값이
그래서 단 정밀도 부동 소수점으로 표현할 수없는 가장 큰 정수는 2^(23 + 1) + 1 = 16,777,217이라는 것을 알고 있습니다. 우리는 2^(23 + 1) + 1을 어떻게 사용했는지 알아 냈습니다. 23 개의 가수가 나타내는 비트 수와 함게 묵시적 1이 있음을 이해하지만 왜이 기능이 작동합니까?
11 세대 R2 오라클 DB 인스턴스의 NUMBER (12,3) 필드 번호를 기억 271.448 그것으로 커서로부터 페치 은 Pro * C (버전 11.1.0.6)의 32 비트 변수입니다. .c 파일을 컴파일하는 데 Visual Studio 2010을 사용하는 사전 처리 된 C 프로그램이 사용되었습니다. 는 인쇄하기는 271.448가 fprintf를하고 "
나는 이해가 안되는 까다로운 문제가 있습니다. 32 비트 부동 소수점으로 변환해야하는 uint8_t 배열이 있습니다. 나는 그것을 달성하기 위해 memcpy를 사용하고있다. 그러나 반올림은 꺼져있는 것처럼 보인다. 누군가이 현상에 대해 설명해 주시겠습니까 /이 문제에 대한 해결책, 미리 감사드립니다. coefficientByteSwap 배열에는 첫 번째 4