c'è l'inverso di questa formula K= K*-1 ?

c'è una formula tipo K= K*-1 che trasforma il numero negativo in positivo ma l'inverso --- un numero positivo in numero negativo?

che è la stessa formula, ma c'è un problema con -maxint.

void setup() 
{
  Serial.begin(115200);
  Serial.println("Start ");

  int x = -32768;
  x = x * -1;  // ???
  Serial.println(x);
}

void loop() 
{
}

gingardu: ma l'inverso --- un numero positivo in numero negativo?

Devi fare la stessa cosa, ovvero moltiplicare per -1 , questa è algebra delle medie, + * + = +, + *- = -, - * - = + :)

astrobeed:

gingardu: ma l'inverso --- un numero positivo in numero negativo?

Devi fare la stessa cosa, ovvero moltiplicare per -1 , questa è algebra delle medie, + * + = +, + *- = -, - * - = + :)

mi sa che devo rifarle le medie e fare meno attenzione a i seni e coseni e più attenzione all'algebra :disappointed_relieved:

Moltiplicare per -1 è un vecchissimo trucco usato per cambiare segno ad una variabile. Però ricordati che se x è negativo, moltiplicato per -1 torna positivo.

Quindi controlla prima com'è il numero e nell'eventualità (se cioè è positivo) fai la conversione:

if (K>0) {
  K *= -1;
}

Anche il C dovrebbe accettare questa sintassi, se non sbaglio:

if(K<0)  K=-K;

gingardu: ... fare meno attenzione a i seni ...

Ehm ... dobbiamo fraintendere ? ...

:P :stuck_out_tongue_closed_eyes: ]:D :grin: ]:D :stuck_out_tongue_closed_eyes: :P

nid69ita:
Anche il C dovrebbe accettare questa sintassi, se non sbaglio:

if(K<0)  K=-K;

o ancora più semplice:

K = abs(K)