Aufgabe:
Berechnen Sie bei gegebenem Abtastindex x den Abtastwert f (x) der Dreieckwelle mit einer Periode von 4 Abtastwerten und der Amplitude 1. Der Versatz kann negativ sein und der Abtastwert kann entweder {0, 1, -1} sein.
Testfälle:
-5 -> -1
-4 -> 0
-3 -> 1
-2 -> 0
-1 -> -1
0 -> 0
1 -> 1
2 -> 0
3 -> -1
4 -> 0
5 -> 1
Persönlich kenne ich zwei Ansätze in C - der erste verwendet die Nachschlagetabelle, der zweite verwendet bedingte Anweisungen. Könnten Sie mich für Brownie-Punkte mit einem reinen "Mathe" -Ansatz beeindrucken? (Ich meine einen rein funktionalen Ansatz, z. B. keine bedingten Anweisungen oder Speicher für die LUT zu verwenden.) Dies ist jedoch keine Einschränkung. Wenn Sie dies nicht können oder Ihre Sprache dies nicht unterstützt, veröffentlichen Sie einfach eine Lösung