More on Assignment and Console Input - PowerPoint PPT Presentation

About This Presentation
Title:

More on Assignment and Console Input

Description:

More on Assignment and Console Input – PowerPoint PPT presentation

Number of Views:25
Avg rating:3.0/5.0
Slides: 12
Provided by: facultyK
Category:

less

Transcript and Presenter's Notes

Title: More on Assignment and Console Input


1
More on Assignment and Console Input
  • Overview
  • Increment Decrement Operators
  • Short-cut Operators
  • Casting
  • Math class
  • Console Input (TextIO class)
  • Preview Control Structures

2
Increment or Decrement Operators
  • Increment/decrement operations (count count
    1) are very common in programming. Java
    provides operators that make these operations
    shorter.
  • Operator Use Description
  • op Increments op by 1
  • evaluates to a value before
    incrementing
  • op Increments op by 1
  • evaluates to a value after
    incrementing
  • -- op-- Decrements op by 1
  • evaluates to a value before
    decrementing
  • -- --op Decrements op by 1
  • evaluates to a value after
    decrementing

3
Increment or Decrement Operators
  • Example
  • 1. What is the value of j and i after executing
    the following code?
  • i 1
  • j 5
  • j i
  • 2. What is the value of j and i after executing
    the following code?
  • i 10
  • j 50
  • j i--
  • 3. What is the value of j and i after executing
    the following code?
  • i 5
  • j 10
  • i
  • j

4
Short Hand Operators
  • Java also provides a number of operators that
    can be used as a short-cut for performing
    arithmetic operations on a variable and assigning
    the result to the same variable.
  • Operator Short-Form Equivalent to
  • op1 op2 op1 op1 op2
  • - op1 - op2 op1 op1 - op2
  • op1 op2 op1 op1 op2
  • / op1 / op2 op1 op1 / op2
  • op1 op2 op1 op1 op2
  • Example
  • Instead of writing
  • a a 5
  • We can write
  • a 5
  • If the variable name on both sides of assignment
    operator are same then bring the operator ,
    before the operator.
  • a a 5

5
Casting
  • We learnt earlier that the following division
  • 5 / 2
  • results in 2
  • Because the / operator is operating between 2
    integer type constants and so the result will be
    an integer.
  • To get 2.5 , we need to convert either 1 or both
    the operands to double . Then the division will
    look like
  • 5.0 / 2.0
  • But what if we have integer variables to divide
    each other, like a / b ?
  • For this, cast operator is used .
  • (double) a / (double) b

6
Primitive Casting
  • Conversion of primitives is accomplished by (1)
    assignment and/or (2) explicit casting
  • int total 100
  • float temp total // temp now holds
    100.0
  • When changing type that will result in a loss of
    precision, an explicit cast is needed. This is
    done by placing the new type in parenthesis
  • float total 100F
  • int temp total // ERROR!
  • int start (int) total

7
Methods in java.lang.Math

Method Argument type(s) Functionality
Math.abs(a) Int/ long/ float/ double Absolute value
Math.ceil (a) Double Smallest whole number greater than or equal to a
Math.cos(a) Double Cosine
Math.exp(a) Double Exponential number to the power of a
Math.floor(a) Double Largest whole number less than or equal to a
Math.log(a) Double Natural logarithm of a
Math.max(a, b) Int/ long/ float/ double Maximum
Math.min(a, b) Int/ long/ floa / double Minimum
Math.pow(a, b) Double a to the power of b
Math.random() None Random number generator
Math.rint(a) Double Converts double value to integral value in double format
Math.round(a) Double Rounds into closest long
Math.sin(a) Double Sine
Math.sqrt(a) Double Square root
Math.tan(a) Double Tangent
 
8
Console Input
  • Reading input from the console (text mode) is a
    bit complex for beginners to Java.
  • To avoid this complexity, we shall initially be
    using a class, TextIO, which has been designed to
    simplify console input operations.
  • The TextIO class has the following methods which
    are used to read the desired type of input.
  • readByte() reads a byte from the data
    source.
  • readChar() reads a character.
  • readDouble() reads a double
  • readFloat() reads a floate.
  • readInt() reads an integer.
  • readLong() reads a long integer.
  • readShort() reads a short integer.
  • readString() reads a string made out of
    non-white
  • space

9
Console Input
  • To use the TextIO class, you need to add the
    following pieces of code to your programs
  • Import the TextIO class by placing the following
    import statement at the beginning of your
    program
  • import TextIO
  • Create a TextIO object as a field inside your
    class
  • static TextIO stdin new
  • TextIO(System.in)
  • Note The parmeter to TextIO can be keyboard
    (System.in), a data file or a URL
  • Change the heading of the main method as follows
  • public static void main(String args)
    throws java.io.IOException
  • For all these to work, you need to copy the file
    TextIO.class to the same folder containing your
    program.
  • You can get the TextIO.class as well as its
    source (.java) on the following URL
  • http//www.ccse.kfupm.edu.sa/bmghandi/001/utils.
    html

10
Evaluating Expressions Arithmetic Expression
Example
  • import TextIO
  • class Expressions
  • static TextIO stdin new
  • TextIO(System.in)
  • public static void main(Stringargs) throws
    java.io.IOException
  • double e
  • int a, b, c
  • a stdin.readInt()
  • b stdin.readInt()
  • c stdin.readInt()
  • e a b c
  • System.out.println("abc " e)

11
Evaluating Arithmetic Expression With Simple
Math functions - Example
  • import TextIO
  • class Expressions
  • static TextIO stdin new TextIO(System.in)
  • public static void main(Stringargs)
  • throws java.io.IOException
  • double a,c
  • int r
  • r stdin.readInt()
  • a Math.PI Math.pow(r,2)
  • c 2 Math.PI r
  • System.out.println("Area " a)
  • System.out.println("Circum. " c)
Write a Comment
User Comments (0)
About PowerShow.com