"Hi, Amigo!"
"I want to tell you about numeric operators."
"Bilaabo already told me!"
"Really? Then I'll ask just a couple of questions."
"How do you increase a variable by 1? Give me as many options as possible."
"Easy."
x++;
++x;
x = x + 1;
x += 1;
"That's right. And now what if you need to multiply the variable by two?"
"Done."
x = x * 2;
x *= 2;
x = x + x;
x += x;
x = x << 1;
x <<= 1;
"How do you raise a variable to the ninth power?"
"This still doesn't require thinking."
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));
"The square root of a number?"
"Piece of cake."
Math.sqrt(x)
x = Math.exp(0.5 * Math.log(x)); // x1/2 = exp(ln(x0.5)) == exp(0.5*ln(x));
"Sine of pi/2?"
x = Math.sin(Math.PI/2);
"A random number between 0 and 1?"
x = Math.random();
"A random number between 0 and 3?"
x = Math.random() *3;
"A random number between 0 and 10?"
x = Math.random() *10;
"A random number between -5 and 5?"
x = Math.random() *10 - 5;
"A random number between -1 and 1?"
x = Math.random() *2 - 1;
"A random number between 0 and 100?"
"I even have two solutions for you:"
int x = (int) (Math.random() *100);
Random random = new Random();
int x = random.nextInt(100);
"Brilliant! I'm impressed. You have a splendid grasp of the topic."
GO TO FULL VERSION