arithmetic expressions containing mathematical functions

22
Arithmetic expressions containing Mathematical functions

Upload: preston

Post on 06-Jan-2016

41 views

Category:

Documents


5 download

DESCRIPTION

Arithmetic expressions containing Mathematical functions. Arithmetic expressions containing Mathematical functions. Scientific calculations often involve Mathematical functions , such as sin , cos , tan , log , and so on. Examples: sin and ln functions on a calculator. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Arithmetic expressions containing Mathematical functions

Arithmetic expressions containing Mathematical functions

Page 2: Arithmetic expressions containing Mathematical functions

Arithmetic expressions containing Mathematical functions

• Scientific calculations often involve Mathematical functions, such as sin, cos, tan, log, and so on.

Examples: sin and ln functions on a calculator

Page 3: Arithmetic expressions containing Mathematical functions

Arithmetic expressions containing Mathematical functions (cont.)

• Programming languages allow you to embed Mathematical functions within a arithmetic expression.

Furthermore, a computer allows you to use variables are arguments to a Mathematical function

Page 4: Arithmetic expressions containing Mathematical functions

Arithmetic expressions containing Mathematical functions (cont.)

• In other words:

• Suppose you have define a variable x as follows:

• You can write expressions like these:

double x = 2.0;

sin(x) computes the sin of x sin(2*x) computes the sin of 2*x

Page 5: Arithmetic expressions containing Mathematical functions

Arithmetic expressions containing Mathematical functions (cont.)

• Note:

• The names of the sin, cos, tan, ln, and other Mathematical functions in Java is a little bit different than what you are used to.

• They are given below

Page 6: Arithmetic expressions containing Mathematical functions

Java's function library

• The Java programming language has an extensive collection of functions organized in various libraries

Note: a bit of history

• In Mathematics, the sin() operation is called a function

• In Java, the sin() operation is implemented by a Java method

• In fact, we used the words "function" and "method" interchangeably in Computer Science.

• Before the word method became popular, other words used were: subroutine, procedure and function

Page 7: Arithmetic expressions containing Mathematical functions

Java's function library

• The documentation of the functions are online at the following website:

http://download.oracle.com/javase/6/docs/api/index.html

• We will now look at the Mathematical functions which are documented on this webpage:

http://download.oracle.com/javase/6/docs/api/java/lang/Math.html

Page 8: Arithmetic expressions containing Mathematical functions

Java's Mathematical functions

• Here are some of the names of Java's Mathematical functions:

Java's method name Corresponding Mathematical functionMath.sin(x) Sine function of value xMath.cos(x) Cosine function of value xMath.tan(x) Tangent function of value x Math.asin(x) Arc sine (inverse of sine) function of value xMath.acos(x) Arc cosine function of value x Math.atan(x) Acr tangent function of value x

Math.exp(x) ex

Math.log(x) Natural log function of value xMath.log10(x) 10-based log function of value x

Math.pow(a, b) ab

Math.sqrt(x) Squared root of the number x

Page 9: Arithmetic expressions containing Mathematical functions

Using Java's Mathematical functions

• Example: compute √2

Math.sqrt(2.0) = √2

Page 10: Arithmetic expressions containing Mathematical functions

Using Java's Mathematical functions (cont.)

• You can apply a Mathematical function on a floating point variable

Examples: double a;

Math.sqrt(a)

Math.sqrt(a+1)

will compute the squared root on the value that is current stored in the variable a

will compute the squared root

on the value a+1

Page 11: Arithmetic expressions containing Mathematical functions

A note on "computing values" in a computer program

• We just learned how to compute √2

Consider the following Java program:

public class CompVal

{

public static void main(String[] args)

{

Math.sqrt(2.0); // Computes √2

}

}

Page 12: Arithmetic expressions containing Mathematical functions

A note on "computing values" in a computer program (cont.)

• Interesting result:

• When you compile and run this program, you will see .... absolutely nothing !!!

Page 13: Arithmetic expressions containing Mathematical functions

A note on "computing values" in a computer program (cont.)

• Example Program (Demo above code)– Prog file:

http://mathcs.emory.edu/~cheung/Courses/170/Syllabus/04/Progs/CompVal.java

• How to run the program:

• Right click on link and save in a scratch directory

• To compile:   javac CompVal.java

• To run:          java CompVal

Page 14: Arithmetic expressions containing Mathematical functions

A note on "computing values" in a computer program (cont.)

• The reason is:

• Unlike a calculator that always shows the result of a computation on its display....        

A computer will only show the result of a computation when it is told !!!

Page 15: Arithmetic expressions containing Mathematical functions

A note on "computing values" in a computer program (cont.)

• Example:

This program will print: 1.4142135623730951 (which is the decimal value of √2)

public class CompVal2

{

public static void main(String[] args)

{

System.out.println( Math.sqrt(2.0) ); // Print !! }

}

Page 16: Arithmetic expressions containing Mathematical functions

A note on "computing values" in a computer program (cont.)

• Programming facts:

• A computed value is not printed

If you want to print a computed value, use a print statement

•A computed value is not stored

If you want to store (save) a computed value, use an assignment statement

Page 17: Arithmetic expressions containing Mathematical functions

A note on "computing values" in a computer program (cont.)

• Example: storing a computed value

public class CompVal3

{

public static void main(String[] args)

{

double a;

a = Math.sqrt(2.0); // Save computed value in variable System.out.println(a); // You can print the saved value later

}

}

Page 18: Arithmetic expressions containing Mathematical functions

A real-life example: programming the a,b,c-formula

• Quadratic equation:

• Solutions:

  x1 =     x2 =  

Page 19: Arithmetic expressions containing Mathematical functions

A real-life example: programming the a,b,c-formula (cont.)

• The Mathematical expressions are written in Java as follows:

   written as:

( -b - Math.sqrt( b*b - 4*a*c ) ) / (2*a)   

written as:

( -b + Math.sqrt( b*b - 4*a*c ) ) / (2*a)

Page 20: Arithmetic expressions containing Mathematical functions

A real-life example: programming the a,b,c-formula (cont.)

• Here is a Java program to compute the famous a,b,c-formula:

public class Abc

{

public static void main(String[] args)

{

double a, b, c, x1, x2; // Define 5 variable

a = 1.0;

b = 0.0;

c = -4.0;

x1 = ( -b - Math.sqrt( b*b - 4*a*c ) ) / (2*a);

x2 = ( -b + Math.sqrt( b*b - 4*a*c ) ) / (2*a);

Page 21: Arithmetic expressions containing Mathematical functions

A real-life example: programming the a,b,c-formula (cont.)

System.out.print("a = ");

System.out.println(a);

System.out.print("b = ");

System.out.println(b);

System.out.print("c = ");

System.out.println(c);

System.out.print("x1 = ");

System.out.println(x1);

System.out.print("x2 = ");

System.out.println(x2);

}

}

Page 22: Arithmetic expressions containing Mathematical functions

A real-life example: programming the a,b,c-formula (cont.)

• Example Program: (Demo above code)    – Prog file:

http://mathcs.emory.edu/~cheung/Courses/170/Syllabus/04/Progs/Abc.java   

• How to run the program:

• Right click on link and save in a scratch directory

• To compile:   javac Abc.java

• To run:          java Abc