Compito:
Dato indice del campione, x, calcola il valore del campione f (x) dell'onda triangolare, con un periodo di 4 campioni e ampiezza 1. L'offset può essere negativo e il valore del campione può essere {0, 1, -1}.
Casi test:
-5 -> -1
-4 -> 0
-3 -> 1
-2 -> 0
-1 -> -1
0 -> 0
1 -> 1
2 -> 0
3 -> -1
4 -> 0
5 -> 1
Personalmente conosco due approcci in C: il primo utilizza la tabella di ricerca, il secondo utilizza le istruzioni condizionali. Per quanto riguarda i punti brownie, potresti impressionarmi con un approccio "matematico" puro? (Intendo un approccio funzionale puro, ad esempio non usare istruzioni condizionali o usare la memoria per LUT.) Ma questa non è una restrizione. Se non puoi, o la tua lingua non lo supporta, pubblica semplicemente una soluzione