VB.NET에서 정수 나누기를 수행하려고합니다. 즉 나누기 결과의 전체 부분 만 유지하려고합니다.정수 값을 나누는 방법
Dim a, b, c as int32
a = 3500
b = 1200
c = a/b
이 예제에서는 3
을 출력합니다.
어떻게 대신 2
을 돌려 보내겠습니까?
VB.NET에서 정수 나누기를 수행하려고합니다. 즉 나누기 결과의 전체 부분 만 유지하려고합니다.정수 값을 나누는 방법
Dim a, b, c as int32
a = 3500
b = 1200
c = a/b
이 예제에서는 3
을 출력합니다.
어떻게 대신 2
을 돌려 보내겠습니까?
실제 계산 : 3500/1200 = 2.916
하면 아래와 2
에 값을 모집하기 Math.Floor
방법을 사용해야 -
c = Math.Floor(a/b)
자세한 정보는 MSDN에 사용할 -이 카메라 때문에 Math.Floor
기본 2 구 operators/
은 표준 구획이고, \
은 다음에 사용됩니다. 두 개의 피연산자의 "정수 지수"를 반환하고 나머지는 ""로 버려야합니다.
결과 :
a/b = 3
a\b = 2
'Math.Floor'를 사용하는 것보다 훨씬 낫습니다. 왜냐하면 여기서 VB.NET을 사용하고 있기 때문입니다. – Neolisk
+1 멋진 기능. 그러나'/'또는'\\'를 사용하면 읽기가 쉽지 않고 계산에서 값을 반올림하는 의도는 보이지 않습니다. –
@MarkHall - VB6에 대한 사전 지식없이 C# 및 VB.NET을 배웠습니다. 그리고이 기능은 나에게 놀라운 일이기 때문에 나는 VB.NET에 익숙하지 않다. –
음수가 참여하는 경우에 잘못 (https://stackoverflow.com/questions/3602827/what-is-the-behavior-of-integer-division) 그럴 필요 0으로 반올림하다. – wischi