Go Down

Topic: Risultato sottrazione sempre positivo (Read 615 times) previous topic - next topic

9six4

Ciao a tutti,
scusate la domanda banale, avrei la necessità di compiere una sottrazione senza dover tenere conto del maggiore dei due fattori.
Mi spiego:

6 - 5 = 1
5 - 6 = -1
Io il risultato lo voglio sempre positivo, ovvero
6 - 5 = 1
5 - 6 deve darmi sempre 1.
All'inizio pensavo che andasse bene dichiarare il risultato come unsigned int, però in questo caso 5 - 6 darebbe 65535 perchè va in roll over.
Come posso fare?
Grazieeeeeeee  XD

PaoloP

#1
May 03, 2012, 10:58 pm Last Edit: May 03, 2012, 11:01 pm by PaoloP Reason: 1
y=abs(x);

La funzione abs è definita in Arduino.h
Code: [Select]
#define abs(x) ((x)>0?(x):-(x))

9six4

Grazie Paolo,
si può fare: Z = abs(X - Y) ?

PaoloP

Certo, puoi passare alla funzione il risultato di un altra funzione, in questo caso X-Y.


Go Up