Presentation is loading. Please wait.

Presentation is loading. Please wait.

Java Coding David Davenport Computer Eng. Dept.,

Similar presentations


Presentation on theme: "Java Coding David Davenport Computer Eng. Dept.,"— Presentation transcript:

1 Java Coding David Davenport Computer Eng. Dept.,
Syntax for Variables & Constants Input, Output and Assignment a complete Java program David Davenport Computer Eng. Dept., Bilkent University Ankara - Turkey.

2 IMPORTANT… Students… Instructors…
This presentation is designed to be used in class as part of a guided discovery sequence. It is not self-explanatory! Please use it only for revision purposes after having taken the class. Simply flicking through the slides will teach you nothing. You must be actively thinking, doing and questioning to learn! Instructors… You are free to use this presentation in your classes and to make any modifications to it that you wish. All I ask is an saying where and when it is/was used. I would also appreciate any suggestions you may have for improving it. thank you, David.

3 From problem to program…
The story so far... Problem Algorithm Data/Memory requirements Java Source Code Java bytecode Machine code

4 Need Java Syntax for… Algorithm (in pseudo-code)
Sequence, Decision & Repetition, of Data flow operations Input, Output & Assignment Data/Memory requirements Meaningfully named memory locations Restriction on data (data types) Variables or Constants & initial value Plus comments & methods!

5 Comments & White space Comments Syntax:
// any text on remainder of current line /* any text across multiple lines */ /** any text across multiple lines; a Javadoc comment! */ Examples: Java ignores line endings, blanks lines & white space! Use to automatically generate client API from source code. // author: David. y = f(x); // computes… /* This program blah, blah, blah */ Layout program code for ease of reading!

6 CS101 rule: Names must be meaningful!
Identifiers User-defined names (for variables, constants, methods, etc.) Any sequence of letters, digits and the underscore character only. First character may not be a digit! Upper and lower case are considered different i.e. case sensitive! Cannot use Java reserved words i.e. words such as while, for, class, if, etc. CS101 rule: Names must be meaningful!

7 Data Types For now, use only the following… Primitive Non-primitive
int (for numeric integer, e.g. 5, -27, 0, 510…) double (for numeric real, e.g. 5.75, 3.0, -2.6…) char (for any character, e.g. A, a, B, b, 3, ?, &, … ) boolean (for true / false only) Non-primitive String (for any sequence of zero or more characters e.g. “CS101”, “A”, “Well done!”, … )

8 Declaring Variables Syntax: Type Name (identifier) Examples:
Any Java type Name (identifier) Convention: first letter of embedded words capital, except first! Examples: int age; double area; double initialSpeed; char letterGrade; char lettergrade; String myName; boolean exists; type name; 21 age {int} CAUTION Java is case sensitive!

9 final type name = value;
Declaring Constants Syntax: Type Any Java type Name (identifier) Convention: all capital letters (& underscore!) Value (literal, variable, constant, expression) Examples: final int SPEEDOFLIGHT = 300; final double PI = 3.142; final String COMPANY = “Bilkent”; final char LETTER_GRADE = ‘A’; final type name = value; Literal values String use “…” char use ‘.’

10 Output (1) Syntax: where output is
Literal value eg. “The area is ”, ‘?’, 12.5, … Named variable or constant eg. area, userName, TAX_RATE, … Expression eg. 2 * PI * radius, “The area is ” + area System.out.println( output ); Value is output exactly as is! Value in named memory location is output Resulting value of expression is output Note use of + for string concatenation

11 System.out.print( output );
Use To output the value & leave text cursor on current line. System.out.print( output ); System.out.println( “Welcome to CS101”); System.out.println( “The tax rate is ” + TAXRATE + ‘%’); System.out.println( “Goodbye.”); System.out.println( “Welcome to CS101”); System.out.print( “The tax rate is ”); System.out.print( TAXRATE); System.out.println( ‘%’); System.out.println( “Goodbye.”); System.out.println(); Start new line!

12 Outline Java Program The CS101 console template… ClassName.java
In Java program = class Classname Convention: first letters capitalised Filename & classname MUST be the same. import java.util.Scanner; /** …description… @author …yourname… @version 1.00, …date… */ public class ClassName { public static void main( String[] args) Scanner scan = new Scanner( System.in); // constants // variables // program code }

13 Quick Demo… Creating, compiling, running & debugging a Java program, using the console & a text editor an IDE (Integrated Development Environment) JRE ~Java Runtime Environment (the Java interpreter, java.exe, and libraries!) JDK ~Java Development Kit (the Java compiler, javac.exe, and other tools)

14 Syntax for Input and assignment statements.
More Syntax…

15 Input Syntax: Examples StringVariable = scan.next();
intVariable = scan.nextInt(); doubleVariable = scan.nextDouble(); userName = scan.next(); age = scan.nextInt(); salary = scan.nextDouble(); str = scan.nextLine(); Variables must be declared before use Standard from Java5.0 on Invalid input may give run-time error! Program must include: import java.util.Scanner; Scanner scan = new Scanner( System.in);

16 Assignment Syntax: where expression is & resultVariable = expression;
… is assigned the result of … Syntax: where expression is operand or operand operator operand & Operand is Literal value Named Variable or constant Result of method call Expression (can use brackets to disambiguate)! Operator is +, -, *, /, % (modulus, remainder after integer division) resultVariable = expression; Result of expression must be of suitable type to put into resultVariable!

17 … is assigned the result of …
Assignment … is assigned the result of … Examples What is the result of this? Evaluation rules Bracketed sub-expressions first Operator precedence ( * / % before + - ) Left to right total = 0; x = y; sum = firstNumber + secondNumber; netPay = grossPay * ( 1 – TAX_RATE/100); count = count + 1; c = Math.sqrt( a * a + b * b ); 4 + 2 / 3 – 1

18 The complete Circle Computer program.
A complete example…

19 A Complete Example (1) Problem – find area & circumference… Algorithm
Data requirements Print welcome message Ask for & get radius from user Compute area as pi.radius.radius Compute circumference as 2.pi.radius Report area, circumference & radius L radius - int L area, circumference - double PI – double, constant = 3.142

20 The CS101 console template…
ClassName.java import java.util.Scanner; /** …description… @author …yourname… @version 1.00, …date… */ public class ClassName { public static void main( String[] args) Scanner scan = new Scanner( System.in); // constants // variables // program code } Again, start with the cs101 console template

21 The CS101 console template…
CirleComputer.java import java.util.Scanner; /** Report area & circumference of circle of radius given by user. @author David @version 1.00, 2019/10/17 */ public class CircleComputer { public static void main( String[] args) Scanner scan = new Scanner( System.in); // constants // variables // program code } Edit header comment… change the ClassName & save.

22 The CS101 console template…
CircleComputer.java : public class CircleComputer { public static void main( String[] args) Scanner scan = new Scanner( System.in); // constants // variables // program code // 1. Print welcome message // 2. Ask for & get radius from user // 3. Compute area as pi.radius.radius // 4. Compute circumference as 2.pi.radius // 5. Report area, circumference & radius } include algorithm steps as comments & save again!

23 A Complete Example (3) CircleComputer.java
Header comment edited to include program description, author name & date. import java.util.Scanner; /** * Report area & circumference of circle of radius given by user. * David 1.00, 2017/10/07 */ public class CircleComputer { public static void main( String[] args) Scanner scan = new Scanner( System.in); // constants final double PI = 3.142; // variables int radius; double area; double circumference; ClassName edited and file saved with .java extension. & algorithm steps added as comments. Include Java code for constants & variables

24 Put a blank line between logical sections
A Complete Example (3) // 1. Print welcome message System.out.println( "Welcome to Circle Computer."); // 2. Ask for & get radius from user System.out.print( "Please enter the radius: "); radius = scan.nextInt(); // 3. Compute area as pi.radius.radius area = PI * radius * radius; // 4. Compute circumference as 2.pi.radius circumference = 2 * PI * radius; // 5. Report area, circumference & radius System.out.print( "The area of a circle of radius "); System.out.print( radius); System.out.print( " is "); System.out.println( area); System.out.print( "and its circumference is "); System.out.print( circumference); System.out.println(); } } // end class CircleComputer add Java code for each algorithm step Indentation Put a blank line between logical sections Note steps 2 & 5 expanded as per original algorithm. Save… Compile… & Run!


Download ppt "Java Coding David Davenport Computer Eng. Dept.,"

Similar presentations


Ads by Google