Witam, mam do napisania funkcję, która na wejściu dostaje liczbę naturalną z przedziału 0-360
i ma za zadanie zwrócić konkretne wartości:
0, 90, 180, 270 i 360
w zależności od tego do której z tych liczb nasz input ma "najbliżej". Czyli:
f(1) = 0 f(47) = 90; f(136)=180
Jedyne co mi przychodzi do głowy to rozpisać cały przedział i sporządzić funkcję która będzie miała 5 instrukcji if..
int f(int X)
{
if(X > 0 && X <= 45) return 0;
if(X > 45 && X <= 135) return 90;
if(X > 135 && X <= 225) return 180;
if(X > 225&& X <= 315) return 270;
if(X > 315&& X <= 360) return 360;
}
Może jest jakiś sposób który byłby bardziej elegancki i wydajniejszy ?