찾다

 >  Q&A  >  본문

더 현명한 접근 방식은 여러 조건문을 사용하여 다양한 수치 범위에 따라 증분 값을 반환하는 함수를 작성하는 것입니다.

<p>입력이 특정 숫자 범위 내에 있는 경우 특정 값을 반환하는 함수를 작성하려고 합니다. </p> <p>일반적으로 저는 이 작업을 수행하기 위해 일련의 if/else if 문을 작성합니다. 그러나 나는 많은 수의 범위를 다루고 있으므로 30개 이상의 if/else if 문을 작성하는 것은 비효율적입니다. </p> <p>전체 범위에 대한 최소값과 최대값이 있고 이를 더 작은 범위로 분할하고 싶다고 가정해 보겠습니다. 각 범위에 대해 일부 값을 반환하고 싶습니다. 이상적으로는 각 범위의 반환 값이 고정된 숫자만큼 감소합니다. </p> <p>맥락을 제공하기 위해 다음과 같은 것을 사용하여 마일리지를 기준으로 값을 계산하려고 합니다. 예를 들어, 마일리지가 101~120마일 사이인 경우 요율은 마일리지의 80%와 같습니다. 마일리지가 증가할수록 비율은 감소합니다. 더욱이, 백분율 감소의 값은 고정된 숫자(-0.05와 같은)일 수 있습니다. <pre class="brush:php;toolbar:false;">... 그렇지 않으면 (m >= 101 &&m <= 120) 0.80을 반환합니다. 그렇지 않으면 (m >= 121 &&m <= 140) 0.75를 반환합니다. ...</pre> <p>각 범위마다 반환 값에 패턴이 있기 때문에 if/else 문을 잔뜩 작성하는 것보다 더 나은 방법으로 수행할 수 있다고 생각하지만 정확히 어떻게 수행되는지는 잘 모르겠습니다. 어떤 아이디어가 있나요? </p>
P粉311464935P粉311464935471일 전535

모든 응답(1)나는 대답할 것이다

  • P粉930534280

    P粉9305342802023-08-18 10:53:55

    귀하의 예는 15씩 증가하지 않으므로 오타인 것 같습니다.

    기능을 사용하여 해결하겠습니다. 예:

    으아악

    회신하다
    0
  • 취소회신하다