Operatori numerici - 1

"Ciao, Amico!"

"Voglio parlarti degli operatori numerici."

"Bilaabo me l'ha già detto!"

"Davvero? Allora farò solo un paio di domande."

"Come si aumenta una variabile di 1? Dammi quante più opzioni possibili."

"Facile."

Codice
x++;
++x;
x = x + 1;
x += 1;

"Esatto. E ora cosa succede se hai bisogno di moltiplicare la variabile per due?"

"Fatto."

Codice
x = x * 2;
x *= 2;
x = x + x;
x += x;
x = x << 1;
x <<= 1;

"Come si eleva una variabile alla nona potenza?"

"Questo ancora non richiede di pensare."

Codice
x = x*x*x*x*x*x*x*x*x;
x = x*x*x; (x3)
x = x*x*x; (x3*x3*x3 = x9)
x = Math.exp( 9 * Math.log(x)); // x9 == exp(ln(x9)) == exp(9*ln(x));

"La radice quadrata di un numero?"

"Pezzo di torta."

Codice
Math.sqrt(x)
x = Math.exp(0.5 * Math.log(x)); // x1/2 = exp(ln(x0.5)) == exp(0.5*ln(x));

"Seno di pi/2?"

Codice
x = Math.sin(Math.PI/2);

"Un numero casuale compreso tra 0 e 1?"

Codice
x = Math.random();

"Un numero casuale compreso tra 0 e 3?"

Codice
x = Math.random() *3;

"Un numero casuale compreso tra 0 e 10?"

Codice
x = Math.random() *10;

"Un numero casuale compreso tra -5 e 5?"

Codice
x = Math.random() *10 - 5;

"Un numero casuale compreso tra -1 e 1?"

Codice
x = Math.random() *2 - 1;

"Un numero casuale compreso tra 0 e 100?"

"Ho anche due soluzioni per te:"

Codice
int x = (int) (Math.random() *100);
Random random = new Random();
int x = random.nextInt(100);

"Fantastico! Sono impressionato. Hai una splendida comprensione dell'argomento."