[Generale] Formula generale per ricavare un angolo
sono nuovo e spero di non aver sbagliato sezione.
stavo cercado una piccola formula GENERALE per ricavare un'angolo in gradi non superando mai i 360°
es.
grazie.
stavo cercado una piccola formula GENERALE per ricavare un'angolo in gradi non superando mai i 360°
es.
400° = 40° 790° = 70°
grazie.
Risposte
Prendi il resto della divisione tra i gradi e 360 (in molti linguaggi è l'operatore %, o mod).
400 % 360 = 40
790 % 360 = 70
400 % 360 = 40
790 % 360 = 70
uso assembly in un micro, come si traduce in formula puramente matematica?
Quale linguaggio assembly utilizzi (quale processore e quale set di istruzioni stai insomma usando)? L'operazione matematica da cercare è il modulo. In alternativa va bene anche il resto della divisione (differiscono principalmente dal comportamento quando i numeri sono negativi). Se non hai queste operazioni ma hai la divisione intera e il prodotto puoi usare \(A - (A/360)\cdot360\) (c'è probabilmente da verificarne il corretto comportamento quando A è negativo ma per i positivi dovrebbe funzionare). Se non hai nulla puoi usare un ciclo che sottrae o aggiunge 360 fino ad ottenere un valore nel giusto intervallo o più probabilmente implementare quelle operazioni usando le operazioni bit a bit.
A−(A/360)∗360
questa formula restituisce sempre 0.
scusa se ho capito male
Quella formula funziona solo con numeri interi (pensavo di aver scritto che davo per scontato parlassi di valori interi di angolo ma sembra che io non l'abbia fatto). A/360 è la divisione intera in quella formula. Per cui se hai qualcosa tipo 375, 375/360=1 e 1*360=360. Per cui alla fine ottieni 375 - 360 = 15.. Ma l'operazione matematica per farlo te l'abbiamo già nominata, si chiama modulo. Per aiutarti a capire come implementare tale operazione in assembly è però fondamentale conoscere il set di istruzioni che usi..