비율을 유지하면서 숫자 범위를 다른 범위로 변환
상대 비율을 유지하면서 숫자 범위를 다른 범위로 변환하는 것은 유용한 기술이 될 수 있습니다 다양한 응용 분야에서. -16000.00에서 16000.00 범위의 포인트 값을 0-100의 정수 범위로 압축해야 하는 시나리오를 고려해 보겠습니다.
다음 공식은 이 변환에 대한 일반적인 알고리즘을 제공합니다.
NewValue = (((OldValue - OldMin) * (NewMax - NewMin)) / (OldMax - OldMin)) + NewMin
여기서:
이 공식은 본질적으로 새 값을 새 범위에 적용하고 이를 이전 값과 이전 범위의 비율에 적용합니다. 다음 Python 코드 조각은 이 공식을 사용하는 방법을 보여줍니다.
old_min = -16000.00 old_max = 16000.00 new_min = 0 new_max = 100 old_value = 0.0 new_value = (((old_value - old_min) * (new_max - new_min)) / (old_max - old_min)) + new_min print(new_value)
이 공식을 사용하면 OldMin, OldMax, NewMin 및 NewMax 값을 변경하여 두 범위 중 하나를 조정할 수도 있습니다. 예를 들어 -50~800 범위의 값을 0~100 범위로 변환하려면 다음 수식을 사용합니다.
NewValue = (((OldValue + 50) * 100) / (850))
이 수식은 각 값에 50을 더하여 이전 범위를 조정합니다. 값을 양수 쪽으로 이동한 다음 크기를 850/(850-50)배로 줄여 새 범위에 맞춥니다.
이 일반화된 알고리즘을 사용하면 숫자 범위와 범위가 다양하거나 최소값과 최대값을 조정해야 하는 경우에도 상대 비율을 유지하세요.
위 내용은 비율을 유지하면서 숫자 범위를 다른 범위로 변환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!