[C#] 두 정수를 나눠 두 배를 얻는 방법은 무엇입니까?

두 정수를 나누고 두 배를 얻으려면 어떻게해야합니까?



답변

당신은 숫자를 캐스팅하려고합니다 :

double num3 = (double)num1/(double)num2;

참고 : C #의 인수 중 하나가 a double이면 double나누기가 사용되어 결과가 나타납니다 double. 따라서 다음도 작동합니다.

double num3 = (double)num1/num2;

자세한 내용은 다음을 참조하십시오.

닷넷 펄


답변

@NoahD의 답변 보완

정밀도를 높이려면 십진수로 캐스트 할 수 있습니다.

(decimal)100/863
//0.1158748551564310544611819235

또는:

Decimal.Divide(100, 863)
//0.1158748551564310544611819235

Double은 64 비트를 할당하는 반면 소수는 128을 사용합니다

(double)100/863
//0.11587485515643106

“정밀도”에 대한 깊이있는 설명

부동 소수점 이진 표현 및 정밀도에 대한 자세한 내용을 살펴 가지고 이 문서 그가 대해 이야기 곳 존 소총에서을 floats하고 doubles그리고 이 한 그는 대한 이야기 decimals.


답변

정수를 두 배로 캐스트하십시오.


답변

그중 하나를 이중으로 먼저 변환하십시오. 이 양식은 여러 언어로 작동합니다.

 real_result = (int_numerator + 0.0) / int_denominator


답변

var firstNumber=5000,
secondeNumber=37;

var decimalResult = decimal.Divide(firstNumber,secondeNumber);

Console.WriteLine(decimalResult );


답변