24
Lecture 8

Lecture 8. Review (Methods of Math class) int abs( int num ) double sqrt( double num ) double pow( double num, double power ) Method parametersData type

  • View
    222

  • Download
    1

Embed Size (px)

Citation preview

Page 1: Lecture 8. Review (Methods of Math class) int abs( int num ) double sqrt( double num ) double pow( double num, double power ) Method parametersData type

Lecture 8

Page 2: Lecture 8. Review (Methods of Math class) int abs( int num ) double sqrt( double num ) double pow( double num, double power ) Method parametersData type

Review (Methods of Math class)

int abs( int num )

double sqrt( double num )

double pow( double num, double power )

Method parametersData type of the result

Please take a look more Math methods at

http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Math.html#method_summary

Page 3: Lecture 8. Review (Methods of Math class) int abs( int num ) double sqrt( double num ) double pow( double num, double power ) Method parametersData type

Example

double area = 2.25;

double value2 = Math.sqrt( area );

System.out.println( “value2 is “ + value2);

value2 is 1.5

2.25

Page 4: Lecture 8. Review (Methods of Math class) int abs( int num ) double sqrt( double num ) double pow( double num, double power ) Method parametersData type

Example

double PI = 3.14;

double radius = 1.5;

double area = PI * Math.pow( radius, 2 );

System.out.println( “Area is “ + area);

pow method takes two variables(radius)2

Page 5: Lecture 8. Review (Methods of Math class) int abs( int num ) double sqrt( double num ) double pow( double num, double power ) Method parametersData type

More Methods of Math class

Please take a look more Math methods athttp://java.sun.com/j2se/1.4.2/docs/api/java/lang/Math.html#method_summary

Page 6: Lecture 8. Review (Methods of Math class) int abs( int num ) double sqrt( double num ) double pow( double num, double power ) Method parametersData type

Today’s topic

• Java application– Let’s write codes for calculator application

• Constant variable

• Talk about project 1

Page 7: Lecture 8. Review (Methods of Math class) int abs( int num ) double sqrt( double num ) double pow( double num, double power ) Method parametersData type

User

JavaApplication

Programmer(who we are)

JavaProgram

Write

Use

Create

Page 8: Lecture 8. Review (Methods of Math class) int abs( int num ) double sqrt( double num ) double pow( double num, double power ) Method parametersData type

User Interface

• There are three actors– Programmer: who writes codes for applications– Computer: who runs applications– User: who uses applications

• Programmers have to consider two interactions– Programmer Computer– Computer User

– So, programmers write codes for user interface• how users interacts with applications

Page 9: Lecture 8. Review (Methods of Math class) int abs( int num ) double sqrt( double num ) double pow( double num, double power ) Method parametersData type

For example

User

Programmer(who we are)

Application

Page 10: Lecture 8. Review (Methods of Math class) int abs( int num ) double sqrt( double num ) double pow( double num, double power ) Method parametersData type

For example

User

Programmer(who we are)

User interface

Application should direct users

Page 11: Lecture 8. Review (Methods of Math class) int abs( int num ) double sqrt( double num ) double pow( double num, double power ) Method parametersData type

Example (MyCalculator.java)

Please create a new folder, named Example

Please download “acm.jar” file into the folder athttp://www.cs.umb.edu/~chonho/teaching/2007/files/

In Dr.Java, add acm.jar file for extra classpathin preference window from [edit]

Create a new file, named MyCalculator.java

and save it into the folder

Page 12: Lecture 8. Review (Methods of Math class) int abs( int num ) double sqrt( double num ) double pow( double num, double power ) Method parametersData type

MyCalculator.java

Let’s start with class header and main method

public class MyCalculator{

public static void main(String[] argv){

}}

Page 13: Lecture 8. Review (Methods of Math class) int abs( int num ) double sqrt( double num ) double pow( double num, double power ) Method parametersData type

MyCalculator.java (1)/* * File name: MyCalculator.java * -------------------------- * This program runs as a Java application without using

the acm.program package. */

import acm.io.*;import java.awt.*;import javax.swing.*;

public class MyCalculator{

Comment

Single line: //Multiple lines: /* … */

Class name

It should be same as file name

Page 14: Lecture 8. Review (Methods of Math class) int abs( int num ) double sqrt( double num ) double pow( double num, double power ) Method parametersData type

MyCalculator.java (2)public class MyCalculator{ public static void main(String[] argv) {

JFrame frame = new JFrame(“My Calculator");

IOConsole console = new IOConsole();

frame.getContentPane().add(BorderLayout.CENTER, console);

frame.setSize(500, 300);

frame.setVisible(true);

Create classesJFrame classIOConsole class

Frame title

Methods of JFrame class

Page 15: Lecture 8. Review (Methods of Math class) int abs( int num ) double sqrt( double num ) double pow( double num, double power ) Method parametersData type

MyCalculator.java (3)

int num1, num2, total;

console.println( "This program adds two numbers.” );

num1 = console.readInt( “Enter num1: “ ); num2 = console.readInt( “Enter num2: “ );

total = num1 + num2;

console.println("The total is " + total + ".");}

}

readInt( ) methodask users to enter an integer numberit receives 1 string parameter

println()same as System.out.println() but, print out message in consoleit receives 1 string parameter

Page 16: Lecture 8. Review (Methods of Math class) int abs( int num ) double sqrt( double num ) double pow( double num, double power ) Method parametersData type

Constant variable

• Constant variable is static, and its value does not change within entire programs.– You can deal with it as regular variable

• Declaration of constant variable– Regular variable

double average;– Constant

static final double PI = 3.14;

Page 17: Lecture 8. Review (Methods of Math class) int abs( int num ) double sqrt( double num ) double pow( double num, double power ) Method parametersData type

Exercise

• 1. Mile to Kilometer conversion

• 2. Fahrenheit to Celsius conversion

• 3. Circle circumference and area

Page 18: Lecture 8. Review (Methods of Math class) int abs( int num ) double sqrt( double num ) double pow( double num, double power ) Method parametersData type

Exercise 1

• Mile to Kilometer conversion

1 Mile is 1.6 Kilometer

Create a calculator application to convert unit from Mile to Kilometer

- Ask an user to enter one number in mile

- Calculate the unit conversion

- Print out the result in Kilometer for the user.

Page 19: Lecture 8. Review (Methods of Math class) int abs( int num ) double sqrt( double num ) double pow( double num, double power ) Method parametersData type

public class MyCalculator{ public static void main(String[] argv) {

JFrame frame = new JFrame(“My Calculator");

IOConsole console = new IOConsole();

frame.getContentPane().add(BorderLayout.CENTER, console);

frame.setSize(500, 300);

frame.setVisible(true);

double mile, kilo;

console.println( "This program converts mile to kilometer.” ); mile = console.readDouble( “Enter number in mile: “ );

kilo = 1.6 * mile; console.println( mile + “ mile is " + kilo + “ kilometer");

}}

Page 20: Lecture 8. Review (Methods of Math class) int abs( int num ) double sqrt( double num ) double pow( double num, double power ) Method parametersData type

Constant Variable

double mile, kilo;

console.println( "This program converts mile to kilometer.” ); mile = console.readDouble( “Enter number in mile: “ );

kilo = 1.6 * mile; console.println( mile + “ mile is " + kilo + “ kilometer");

static final double MileToKilometer = 1.6;

double mile, kilo;

console.println( "This program converts mile to kilometer.” ); mile = console.readDouble( “Enter number in mile: “ );

kilo = MileToKilometer * mile; console.println( mile + “ mile is " + kilo + “ kilometer");

Add this line asan attribute in a class

Page 21: Lecture 8. Review (Methods of Math class) int abs( int num ) double sqrt( double num ) double pow( double num, double power ) Method parametersData type

public class MyCalculator{ static final double MileToKilometer = 1.6;

public static void main(String[] argv) {

JFrame frame = new JFrame(“My Calculator");

IOConsole console = new IOConsole();

frame.getContentPane().add(BorderLayout.CENTER, console);

frame.setSize(500, 300);

frame.setVisible(true);

console.println( "This program converts mile to kilometer.” ); double mile = console.readDouble( “Enter number in mile: “ );

double kilo = MileToKilometer * mile; console.println( mile + “ mile is " + kilo + “ kilometer");

}}

Page 22: Lecture 8. Review (Methods of Math class) int abs( int num ) double sqrt( double num ) double pow( double num, double power ) Method parametersData type

Exercise 2 (comment out previous one)

• Fahrenheit Tf to Celsius Tc conversion

Conversion formulaTc = (5 / 9) * (Tf – 32)

Create a calculator application to convert unit from degree Fahrenheit to Celsius

- Ask an user to enter number in Tf- Calculate the unit conversion- Print out the result in Tc for the user.

Page 23: Lecture 8. Review (Methods of Math class) int abs( int num ) double sqrt( double num ) double pow( double num, double power ) Method parametersData type

Exercise 3 (comment out previous one)

• Circle circumference and area

PI = 3.14

circumference = 2 * PI * radius

area = PI * (radius)2

Create a calculator application to compute the circumference and area of circle

- Ask an user to enter number for radius of circle

- Calculate the circumference and are

- Print out both results for the user.

radius

Page 24: Lecture 8. Review (Methods of Math class) int abs( int num ) double sqrt( double num ) double pow( double num, double power ) Method parametersData type

Challenge

• If you want to do calculation twice or more without closing windows, then you can use loop to ask users for entering new numbers.

console.println( "This program adds two numbers.” );

for( int i=0; i<5; i++){ num1 = console.readInt( “Enter num1: “ );

num2 = console.readInt( “Enter num2: “ );total = num1 + num2;

console.println("The total is " + total + ".");

}