2013-03-14 6 views
2

150을 100으로 나누면 1.5가되어야합니다.정확한 값을 얻기 위해 C#로 나눈 값

double result = 150/100; 

사람이 어떻게 1.5을 얻는 방법을 말해 줄래 : 나는 아래처럼 내가 나눌 때 나는 1.0는 무엇입니까?

+2

정수 구분 찾아보기 - '100'은 정수입니다. 대신 double double을 사용하십시오. – BrokenGlass

답변

4
double result = (150.0/100.0) 

하나 또는 둘 수는 부동 소수점 형식으로 int 치의 =

5

캐스트 하나의 오른쪽을 두 번 부동 /이어야한다. 당신은 소수점 두 번 사이의 차이에보고 당신이 원하는 결정하지만, 두 번 사용한다 :

double result = (double)150/100; 
3

수를 float

var result = 150/100f 

을 확인하거나 숫자 중 하나를 추가하여 부유 할 수 있습니다 .0 :

double result=150.0/100 

또는

,210
8

시도 :
당신이 이전과 분할을 수행하는

double result = (double)150/100; 

다음 devision 먼저 int로 이루어집니다

double result = 150/100; 

후는 따라서 당신이 1.0을 얻을 double로 캐스팅됩니다 , 당신은 방정식에 double을 두 배로 나누어야합니다.

1

150과 100 같은 리터럴 값만 사용하는 경우 C#은 정수로 처리하고 정수는 항상 "내림"합니다. float에는 "f", 10 진수에는 "m"과 같은 플래그를 추가하여 정수 계산을 얻지 못하게 할 수 있습니다. 예를 들어 result = 150m/100mresult = 150/100과 다른 대답을 줄 것입니다.