COMP 110: Introduction to Programming Tyler Johnson January 26, 2009 MWF 11:00AM-12:15PM Sitterson 014.

Slides:



Advertisements
Similar presentations
COMP 110: Introduction to Programming Tyler Johnson Feb 11, 2009 MWF 11:00AM-12:15PM Sitterson 014.
Advertisements

COMP 110: Introduction to Programming Tyler Johnson Feb 18, 2009 MWF 11:00AM-12:15PM Sitterson 014.
COMP 110: Introduction to Programming Tyler Johnson Feb 25, 2009 MWF 11:00AM-12:15PM Sitterson 014.
COMP 110: Introduction to Programming Tyler Johnson Mar 16, 2009 MWF 11:00AM-12:15PM Sitterson 014.
COMP 110: Introduction to Programming Tyler Johnson Mar 23, 2009 MWF 11:00AM-12:15PM Sitterson 014.
COMP 110: Introduction to Programming Tyler Johnson Apr 20, 2009 MWF 11:00AM-12:15PM Sitterson 014.
COMP 110: Introduction to Programming Tyler Johnson Apr 13, 2009 MWF 11:00AM-12:15PM Sitterson 014.
COMP 110: Introduction to Programming Tyler Johnson Feb 23, 2009 MWF 11:00AM-12:15PM Sitterson 014.
COMP 110: Introduction to Programming Tyler Johnson Mar 25, 2009 MWF 11:00AM-12:15PM Sitterson 014.
COMP 110: Introduction to Programming Tyler Johnson Apr 8, 2009 MWF 11:00AM-12:15PM Sitterson 014.
COMP 110: Introduction to Programming Tyler Johnson Apr 1, 2009 MWF 11:00AM-12:15PM Sitterson 014.
COMP 110: Introduction to Programming Tyler Johnson January 28, 2009 MWF 11:00AM-12:15PM Sitterson 014.
COMP 110: Introduction to Programming
COMP 110: Introduction to Programming Tyler Johnson Mar 2, 2009 MWF 11:00AM-12:15PM Sitterson 014.
COMP 110: Introduction to Programming Tyler Johnson Apr 27, 2009 MWF 11:00AM-12:15PM Sitterson 014.
COMP 110: Introduction to Programming Tyler Johnson Feb 4, 2009 MWF 11:00AM-12:15PM Sitterson 014.
Lecture 5 Types, Expressions and Simple I/O COMP1681 / SE15 Introduction to Programming.
© Vinny Cahill 1 Writing a Program in Java. © Vinny Cahill 2 The Hello World Program l Want to write a program to print a message on the screen.
1 Variables and Data Types. 2 Variable Definition a location in memory, referenced by a name (identifier), where data of a given type can be stored, changed,
CSci 1130 Intro to Programming in Java
Chapter Three Arithmetic Expressions and Assignment Statements
COMP 14 Introduction to Programming
Introduction to Programming G51PRG University of Nottingham Revision 1
DATA TYPES, VARIABLES, ARITHMETIC. Variables A variable is a “named container” that holds a value. A name for a spot in the computer’s memory This value.
L2:CSC © Dr. Basheer M. Nasef Lecture #2 By Dr. Basheer M. Nasef.
Introduction to Programming with Java, for Beginners Primitive Types Expressions Statements Variables Strings.
©2004 Brooks/Cole Chapter 2 Variables, Values and Operations.
Bellevue University CIS 205: Introduction to Programming Using C++ Lecture 3: Primitive Data Types.
Aalborg Media Lab 21-Jun-15 Software Design Lecture 2 “ Data and Expressions”
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Adrian Ilie COMP 14 Introduction to Programming Adrian Ilie June 27, 2005.
Primitive Types Java supports two kinds of types of values – objects, and – values of primitive data types variables store – either references to objects.
JavaScript, Third Edition
CSci 142 Data and Expressions. 2  Topics  Strings  Primitive data types  Using variables and constants  Expressions and operator precedence  Data.
String Escape Sequences
Java Primitives The Smallest Building Blocks of the Language (corresponds with Chapter 2)
2440: 211 Interactive Web Programming Expressions & Operators.
Chapter 2 Basic Elements of Java. Chapter Objectives Become familiar with the basic components of a Java program, including methods, special symbols,
Basic Notions Review what is a variable? value? address? memory location? what is an identifier? variable name? keyword? what is a legal identifier? what.
Chapter 2: Using Data.
Java Programming: From Problem Analysis to Program Design, 4e Chapter 2 Basic Elements of Java.
CHAPTER 4 GC 101 Data types. DATA TYPES  For all data, assign a name (identifier) and a data type  Data type tells compiler:  How much memory to allocate.
1 Chapter 3 Syntax, Errors, and Debugging Fundamentals of Java: AP Computer Science Essentials, 4th Edition Lambert / Osborne.
Chapter 2 Variables.
COMP Primitive and Class Types Yi Hong May 14, 2015.
Programming in Java (COP 2250) Lecture 4 Chengyong Yang Fall, 2005.
Operators and Expressions. 2 String Concatenation  The plus operator (+) is also used for arithmetic addition  The function that the + operator performs.
CSM-Java Programming-I Spring,2005 Fundamental Data Types Lesson - 2.
COMP 110: Spring Announcements Lab 1 due Wednesday at Noon Assignment 1 available on website Online drop date is today.
Literals A literal (sometimes called a constant) is a symbol which evaluates to itself, i.e., it is what it appears to be. Examples: 5 int literal
Java Programming: From Problem Analysis to Program Design, Second Edition 1 Lecture 1 Objectives  Become familiar with the basic components of a Java.
1 1 Chapter 2 Elementary Programming. 2 2 Motivations In the preceding chapter, you learned how to create, compile, and run a Java program. Starting from.
ICS102 Lecture 1 : Expressions and Assignment King Fahd University of Petroleum & Minerals College of Computer Science & Engineering Information & Computer.
Chapter 2: Data and Expressions. Variable Declaration In Java when you declare a variable, you must also declare the type of information it will hold.
Lecture 3: More Java Basics Michael Hsu CSULA. Recall From Lecture Two  Write a basic program in Java  The process of writing, compiling, and running.
© 2004 Pearson Addison-Wesley. All rights reserved August 27, 2007 Primitive Data Types ComS 207: Programming I (in Java) Iowa State University, FALL 2007.
CS 106A, Lecture 4 Introduction to Java
Chapter 2 Variables.
Primitive Data Types August 28, 2006 ComS 207: Programming I (in Java)
Multiple variables can be created in one declaration
Assignment and Arithmetic expressions
Java Programming: From Problem Analysis to Program Design, 4e
Basic Notions Review what is a variable? value? address? memory location? what is an identifier? variable name? keyword? what is legal identifier? what.
Introduction to C++ Programming
Chapter 2: Basic Elements of Java
Chapter 2 Variables.
Expressions and Assignment
elementary programming
Primitive Types and Expressions
Unit 3: Variables in Java
Chapter 2 Variables.
Presentation transcript:

COMP 110: Introduction to Programming Tyler Johnson January 26, 2009 MWF 11:00AM-12:15PM Sitterson 014

COMP 110: Spring Announcements Lab 0 graded

COMP 110: Spring Questions?

COMP 110: Spring Today in COMP 110 Type Casting More Operators Strings Console I/O

COMP 110: Spring From Last Time Type Name Kind of Value Memory Used Range of Values byteInteger1 byte-128 to 127 shortInteger2 bytes-32,768 to 32,768 intInteger4 bytes-2,147,483,648 to 2,147,483,647 longInteger8 bytes-9,223,372,036,854,775,808 to 9,223,372,036,854,775,807 floatFloating-point4 bytes± x to ± x doubleFloating-point8 bytes± x to ± x charCharacter2 bytes0 to 65,535 boolean 1 bitTrue or False (0 to 1)

COMP 110: Spring Assignment Compatibilities You cannot store a value of one type in a variable of another type int i = 0.1; //this does not compile! However, some types can be converted into other types double d = 1; //1 is automatically converted to 1.0

COMP 110: Spring Assignment Compatibilities byte » short » int » long » float » double A value of any type in the list can be assigned to a type further down the list Example int iVar = 7; double dVar = iVar; //this is legal

COMP 110: Spring Assignment Compatibilities In some cases, you may want to override the assignment compatibilities This can be done using type casting

COMP 110: Spring Type Casting Syntax (Type_Name) Expression Expression is a combination of numbers and variables Example double distance = 9.0; int points = (int)distance; //cast distance to an int //distance is not changed in any way //the value of points will be 9

COMP 110: Spring Type Casting Type casting is not rounding! The effect of a type cast is truncation Any fractional portion is discarded Just like when you divide two integers Example double bill = 25.75; int dollars = (int)bill ; //cast bill to an int //bill is not changed in any way //the value of dollars will be 25

COMP 110: Spring From Last Time Operators Addition (+) a + b Subtraction (-) a - b Multiplication (*) a * b Division (/) a / b Remainder or Modulo (%) a % b

COMP 110: Spring Parentheses and Precedence Parentheses can be used to indicate the order in which operations should be performed Example What is the value of result? int a = 3, b = 1, c = 2, result = 0; result = (a + b) * c; result = a + (b * c); result = 8 result = 5

COMP 110: Spring Binary Operators Binary operators take two operands An operand is just a number or variable For example, +,-,*,/ are binary operators i = a + b; i = a - b; i = a * b; i = a / b;

COMP 110: Spring Unary Operators Unary operators take a single operand + and – can also be unary operators i = -7; f = ;

COMP 110: Spring Specialized Assignment Operators += a += 3; //same as a = a + 3; -= a -= 4; //same as a = a – 4; *= a *= 2; //same as a = a * 2; /= a /= 3; //same as a = a / 3;

COMP 110: Spring Increment and Decrement Operators Increment Operator (++) count++; //same as count = count + 1; Decrement Operator (--) count--; //same as count = count – 1;

COMP 110: Spring Increment and Decrement Operators Can also be used in expressions in either prefix (++m) or postfix (m++) form Example n * (m++) Increases m by 1 after the multiplication n * (++m) Increases m by 1 before the multiplication

COMP 110: Spring Increment and Decrement Operators int n = 2; int m = 4; int result = n * (m++); //result = 8, m = 5 result = n * (++m); //result = 12, m = 6

COMP 110: Spring Operator Precedence Java evaluates expressions in an order specified by precedence rules Certain operations are performed before others Example i = * 3 – 1; // the value of i will be 9

COMP 110: Spring Java Precedence Rules Highest Precedence First: the unary operators +, -, ++, -- Second: the binary operators *, /, % Third: the binary operators +, - Lowest Precedence Binary operators of equal precedence are evaluated from left to right

COMP 110: Spring Precedence Examples -3 * 7 % 3 – 4 – % 3 – 4 – 6 0 – 4 – * (3 % 2 ) / -2 3 * 1 / -2 3 / -2 NOTE: Truncation of division operator on integers

COMP 110: Spring Constants Constants or literals are values that dont change 2, 6, B, 5.433e8 NOTE: 5.433e8 means x 10 8 Example uses of constants int i = 2; // i is a variable, 2 is a constant char l = J; // l is a variable, J is a constant double d = 6.1e38; //d is a variable, 6.1e38 is a //constant

COMP 110: Spring Named Constants A constant that is given a name and can be used much like a variable Syntax final Type Variable = Constant; Examples final double PI = ; final int HOURS_PER_DAY = 24;

COMP 110: Spring Representing Text in Java How to represent sequences of characters in Java programs such as Enter a whole number from 1 to 99. Java provides the class String for this purpose

COMP 110: Spring Strings String is a class provided by the Java language for representing sequences of characters Enter a whole number from 1 to 99.

COMP 110: Spring Strings Messages like these are called String literals or String constants Enter a whole number from 1 to 99. What is your name? I will add two numbers for you. They have the type String

COMP 110: Spring Strings We can declare Strings in Java programs Example String greeting; greeting = Hello!; System.out.println(greeting); //prints Hello! to screen System.out.println(Hello!); //also prints Hello! to //screen

COMP 110: Spring String Indices Strings consist of a sequence of characters Each character has a position in the String UNCisGreat Positions Characters

COMP 110: Spring String Concatenation We can concatenate two Strings together using the (+) operator Example String name = Bob; String greeting = Hi + name; System.out.println(greeting); //prints Hi Bob to the screen

COMP 110: Spring String Concatenation We can also concatenate Strings with other data types System.out.println("I am " " years old!"); //prints I am 21 years old! to screen

COMP 110: Spring Strings as a Class String is a class type, not a primitive type Class types have both data and methods (actions)

COMP 110: Spring String Length The length() method of the String class returns the # of characters in the String String myString = Hi there!; int len = myString.length(); Object 9 Method Class

COMP 110: Spring Strings All objects of the same class have the same methods, but may have different data Example String s1 = First!; String s2 = Second!; s1.length() returns 6 s2.length() returns 7

COMP 110: Spring String Methods string.indexOf(A_String) Returns the index of the first occurrence of A_String in string Example String phrase = UNC is Great; int ind = phrase.indexOf(Great); UNCisGreat

COMP 110: Spring String Methods string.substring(Start) Returns a new string having the same characters as the substring of string beginning at index Start through the end of string Example String phrase = UNC is Great; String sub = phrase.substring(2); UNCisGreat

COMP 110: Spring String Methods Other methods of the String class include string.charAt(index) Returns the character at index in string string.toLowerCase() Returns a new String with the same characters as string, but with any uppercase characters changed to lowercase string.equals(A_String) Returns true if string and A_String are the same, otherwise returns false See Textbook pg 78 for full listing

COMP 110: Spring Quotations Marks in Strings Problem Quotation marks in Java indicate the beginning and end of a String literal String phrase = Enter a whole number from 1 to 99.; How to put quotation marks into Strings?

COMP 110: Spring Quotation Marks in Strings Example Wed like to print the message This class is so "fun" But we cannot use System.out.println("This class is so "fun""); because the Java compiler sees it as System.out.println("This class is so "fun"");

COMP 110: Spring Quotation Marks in Strings The way to do this in Java is with the escape character '\' We can use the sequence \" inside a string to indicate a quotation mark Example System.out.println("This class is so \"fun\""); will print to screen This class is so "fun"

COMP 110: Spring Backslashes in Strings If backslash '\' is the escape character, how can I put backslashes into Strings? Use the sequence \\ for this Example System.out.println("This is a backslash \\"); will print to screen This is a backslash \

COMP 110: Spring New Line Sequence The sequence \n starts a new line of text Example System.out.println("Line 1\nLine 2"); will print to screen Line 1 Line 2

COMP 110: Spring Escape Characters \"\" Double quote \'\' Single quote \\Backslash \nNew line \rCarriage return \tTab

COMP 110: Spring String Exercise What is the output? System.out.println("abc\ndef"); abc def System.out.println("abc\\ndef"); abc\ndef

COMP 110: Spring Testing & Debugging Its easy to make mistakes when programming These mistakes are called bugs The process of eliminating mistakes in a program is called debugging

COMP 110: Spring Programming Errors Syntax Error – Failure to follow the rules of the language E.g. missing semi-colon Run-time Error – An error that causes the program to halt and produce an error message E.g. Program crashes Logic Error – When a program fails to produce the correct result E.g accidentally using addition when you meant to use subtraction Hardest to locate!

COMP 110: Spring Programming Demo Fahrenheit to Celsius Converter Problem Given a temperature in degrees Fahrenheit, convert to a temperature in degree Celsius

COMP 110: Spring Programming Demo Fahrenheit to Celsius Steps Pseudocode Programming Testing/Debugging

COMP 110: Spring The Algorithm Comes directly from the formula for conversion tempC = (5/9)(tempF – 32)

COMP 110: Spring Fahrenheit to Celsius Pseudocode Ask user for temp in Fahrenheit Convert temp in Fahrenheit to temp in Celsius Output the result

COMP 110: Spring Wednesday Documentation and Style Introduction to Branching