csci 1226 fall 2015 midterm #1 reviews. types of computers: personal computers embedded systems ...

23
CSCI 1226 FALL 2015 MIDTERM #1 REVIEWS

Upload: juniper-harrison

Post on 08-Jan-2018

214 views

Category:

Documents


0 download

DESCRIPTION

 Software:  Data & instructions  Algorithm  Pseudo-code  Data hierarchy:  8 bits  byte  1 or more bytes  data value (field)  1 or more data values/objects  object (record)  data may be stored on secondary memory (file) …COMPUTERS Exam tip! What are the differences? Exam tip! What are the differences? Exam tip! An object can contain other objects! Exam tip! An object can contain other objects!

TRANSCRIPT

Page 1: CSCI 1226 FALL 2015 MIDTERM #1 REVIEWS.  Types of computers:  Personal computers  Embedded systems  Servers  Hardware:  I/O devices: mice, keyboards,

CSCI 1226 FALL 2015 MIDTERM #1 REVIEWS

Page 2: CSCI 1226 FALL 2015 MIDTERM #1 REVIEWS.  Types of computers:  Personal computers  Embedded systems  Servers  Hardware:  I/O devices: mice, keyboards,

Types of computers:Personal computersEmbedded systems Servers

Hardware: I/O devices: mice, keyboards, monitors, etcCPU (Central Processing Unit)Memory, Main/Primary vs secondary

COMPUTERS

Exam tip!Examples of each type?

Exam tip!What are the differences?

Exam tip!Examples of each type?

Page 3: CSCI 1226 FALL 2015 MIDTERM #1 REVIEWS.  Types of computers:  Personal computers  Embedded systems  Servers  Hardware:  I/O devices: mice, keyboards,

Software:Data & instructions

Algorithm Pseudo-code

Data hierarchy: 8 bits byte 1 or more bytes data value (field) 1 or more data values/objects object (record) data may be stored on secondary memory (file)

…COMPUTERS

Exam tip!What are the differences?

Exam tip!An object can contain other objects!

Page 4: CSCI 1226 FALL 2015 MIDTERM #1 REVIEWS.  Types of computers:  Personal computers  Embedded systems  Servers  Hardware:  I/O devices: mice, keyboards,

IDE: Integrated Development EnvironmentAlgorithms, pseudo-codeVariables:

Data types: int/double/String/boolean/charDeclaration e.g.) int a; String name = “name”;Naming rules and conventions

Math and special assignment operators+, -, *, /, %+=, -=, *=, /=. %=++, --

JAVA PROGRAMMING BASICS

Exam tip!Declare variables given description:e.g.) the number of words entered by the userwhether the user is 65 or older

Page 5: CSCI 1226 FALL 2015 MIDTERM #1 REVIEWS.  Types of computers:  Personal computers  Embedded systems  Servers  Hardware:  I/O devices: mice, keyboards,

Output: System.out.println() and System.out.print()

Print spaces With or without quotes Concatenation (using +, with math expressions, etc)

User input: Scanner class: instantiation, import, etcnext(), nextLine(), nextInt(), nextDouble(), etcUse nextLine() to

flush the input buffer

…JAVA PROGRAMMING BASICS

Exam tip!How to pause a program using nextLine()?

Exam tip!Print all values in one line or each value in one line

Exam tip!Write code to read 2 Strings and a number and ignore the rest: Jimmy Smith 45 ignore mee.g.) review A01

Page 6: CSCI 1226 FALL 2015 MIDTERM #1 REVIEWS.  Types of computers:  Personal computers  Embedded systems  Servers  Hardware:  I/O devices: mice, keyboards,

SYNTAX ERROR: NETBEANS

NetBeans notices syntax errors right away look for red squiggle and in margin

mouse over the to see the explanation

Page 7: CSCI 1226 FALL 2015 MIDTERM #1 REVIEWS.  Types of computers:  Personal computers  Embedded systems  Servers  Hardware:  I/O devices: mice, keyboards,

LOGIC ERROR

Compiler will not notice!System.out.println("A length by width"

+ "rectangle has an area of area.");Program just does the wrong thing

hopefully you can tell from the output!

Page 8: CSCI 1226 FALL 2015 MIDTERM #1 REVIEWS.  Types of computers:  Personal computers  Embedded systems  Servers  Hardware:  I/O devices: mice, keyboards,

→ x / (a + b) → (3 / 5) * (a + b) → k / (2 * a) + 1 / (3 – b) → -a / (3 – b) + 5 * b

MATH EXPRESSIONS

Exam tip!Translate regular math expressions into Java math expressions.

Page 9: CSCI 1226 FALL 2015 MIDTERM #1 REVIEWS.  Types of computers:  Personal computers  Embedded systems  Servers  Hardware:  I/O devices: mice, keyboards,

Syntax: if, if-else, if-else if, if-else if … else

Comparison operators==, !=, <, >, <=, >=

Logical operators&& (AND), || (OR), ! (NOT)

CONDITIONALS

Exam tip!Less/larger than or equal to always have “=“ after “<“ or “>”

Page 10: CSCI 1226 FALL 2015 MIDTERM #1 REVIEWS.  Types of computers:  Personal computers  Embedded systems  Servers  Hardware:  I/O devices: mice, keyboards,

Sequential and nested if-else:Convert one to the other

What’s the output?:

What’s the code?Possible outcomes:outcome #1: A, B, C, E, Foutcome #2: A, D, E, F

… CONDITIONALS

System.out.print(“A”);if (. . .){ System.out.print(“B”);}if (. . .){ System.out.print(“C”); if (. . .) { System.out.print(“D”); } else { System.out.print(“E”); }}

Page 11: CSCI 1226 FALL 2015 MIDTERM #1 REVIEWS.  Types of computers:  Personal computers  Embedded systems  Servers  Hardware:  I/O devices: mice, keyboards,

Can save the answer to a comparisonuse a boolean variableboolean workedOvertime = (hours > 40);

you don’t need parentheses, but it ’s easier to read

E.g.) Write Boolean expressions for whether… x is greater than 0 and y is less than 5 x is greater than zero or y is equal to z it’s not the case that x is greater than the product of y

and z

boolean VARIABLES

Exam tip!“whether” boolean

Page 12: CSCI 1226 FALL 2015 MIDTERM #1 REVIEWS.  Types of computers:  Personal computers  Embedded systems  Servers  Hardware:  I/O devices: mice, keyboards,

Break complex expressions downboolean failedMidterm = (midtermGrade < 50);boolean failedFinal = (finalGrade < 50);boolean failedBothTests = failedMidterm && failedFinal;

String comparisons (all return boolean values)oneString.equals(anotherString)oneString.equalsIgnoreCase(anotherString)oneString.startsWith(anotherString)oneString.endsWith(anotherString)

… boolean VARIABLES

Exam tip!boolean a = true, b = false, c = false;!aa && b (a || c) && (!b && !c) (a && !b) || c

Page 13: CSCI 1226 FALL 2015 MIDTERM #1 REVIEWS.  Types of computers:  Personal computers  Embedded systems  Servers  Hardware:  I/O devices: mice, keyboards,

STRING.TOUPPERCASE/TOLOWERCASE

Ask a string for upper/lower case versionSystem.out.println(“Do you want fries?”);String answer = kbd.next(); kbd.nextLine();String upperAnswer = answer.toUpperCase();if (upperAnswer.startsWith(“Y”))

…now accepts “Yes”, “yes”, “Yeah, “yup”, …

upperAnswer is “YES”, “YES”, “YEAH”, “YUP” answer is still “Yes”, “yes”, “Yeah”, “yup”

Page 14: CSCI 1226 FALL 2015 MIDTERM #1 REVIEWS.  Types of computers:  Personal computers  Embedded systems  Servers  Hardware:  I/O devices: mice, keyboards,

for and while loopsConvert between them

Loop structure Initialize, test/condition, update, process

LOOPS

for (initialize; test; update){

process;}

initialize;while (test) {

process;update;

}

Exam tip!When asked for an algorithm, make sure to include all these 4 steps!

Page 15: CSCI 1226 FALL 2015 MIDTERM #1 REVIEWS.  Types of computers:  Personal computers  Embedded systems  Servers  Hardware:  I/O devices: mice, keyboards,

Write loops to:Calculate sum, average, max, min, of numbersWhen to stop?

Negative number Yes/no

Track the variable’s values: What’s the output of the program?

… LOOPS

a = 1;a++;b = a + 6;b--;c = b * 5;c += a;a *= 10;b /= 2;c %= 4;a *= b + c;S.O.Pln(a + “:” + b + “:” + c);

Exam tip!Write the loops to find these values!

Exam tip!Be able to write a loop that stops for these!

Page 16: CSCI 1226 FALL 2015 MIDTERM #1 REVIEWS.  Types of computers:  Personal computers  Embedded systems  Servers  Hardware:  I/O devices: mice, keyboards,

public static final data-type CONST_NAME = valueNaming conventions

variableNameConventionCONSTANT_NAME_CONVENTION

NAMED CONSTANTS

Page 17: CSCI 1226 FALL 2015 MIDTERM #1 REVIEWS.  Types of computers:  Personal computers  Embedded systems  Servers  Hardware:  I/O devices: mice, keyboards,

DIVIDING INTEGERS & DOUBLES

Java uses / for both int and double division15 / 2 is 7 because 15 and 2 are both int15.0 / 2.0 is 7.5 because 15.0 & 2.0 are doubles

“Mixed” expressions use double division15.0 / 2 is 7.5; 15 / 2.0 is 7.5

(double) says use the double version of this (double)15 / 2 is 7.5; 15 / (double)2 is 7.5

If sum is 17, then (double)sum is 17.0but sum is still an int (17); it doesn’t change!

Page 18: CSCI 1226 FALL 2015 MIDTERM #1 REVIEWS.  Types of computers:  Personal computers  Embedded systems  Servers  Hardware:  I/O devices: mice, keyboards,

CHANGING DOUBLES TO INTS

Can also change the other wayuse (int) in front of a double value/variabledouble price = 15.99;int dollars = (int)price;int cents = (int)(100 * (price – dollars));System.out.println(dollars + " dollars and "

+ cents + " cents.");

NOTE: it doesn’t round off; it truncates!15 dollars and 99 cents.

To Round off, use: int approxDollars = (int)Math.round(price);

Page 19: CSCI 1226 FALL 2015 MIDTERM #1 REVIEWS.  Types of computers:  Personal computers  Embedded systems  Servers  Hardware:  I/O devices: mice, keyboards,

Loops with Conditionalswhile (num >= 0) { // say whether num is divisible by 5 if (num % 5 == 0) { System.out.println(num + “ is divisible by 5.”); } else { System.out.println(num + “ is not divisible by 5.”); } // get next number num = kbd.nextInt();}

NESTED STRUCTURES

Page 20: CSCI 1226 FALL 2015 MIDTERM #1 REVIEWS.  Types of computers:  Personal computers  Embedded systems  Servers  Hardware:  I/O devices: mice, keyboards,

if inside if:System.out.println(“A”);if (condition1) { System.out.println(“B”); if (condition2) { System.out.println(“C”); }}

… NESTED STRUCTURES

possible output:AABABC

pattern:always Asometimes Bwhen B, sometimes C

Page 21: CSCI 1226 FALL 2015 MIDTERM #1 REVIEWS.  Types of computers:  Personal computers  Embedded systems  Servers  Hardware:  I/O devices: mice, keyboards,

Rewrite sequential-if to cascading-if

… NESTED STRUCTURES

if (age < 18) {System.out.print(“Child”);

}if (age >= 18 && age < 65) {

System.out.print(“Adult”);}if (age >= 65) {

System.out.print(“Senior”); }

if (age < 18) {System.out.print(“Child”);

} else if (age < 65) {System.out.print(“Adult”);

} else {System.out.print(“Senior”);

}

Page 22: CSCI 1226 FALL 2015 MIDTERM #1 REVIEWS.  Types of computers:  Personal computers  Embedded systems  Servers  Hardware:  I/O devices: mice, keyboards,

Loops inside loops:Draw a rectangle:

Get w, h, and char from user

Conditionals inside loops:Repeated menu with switch

… NESTED STRUCTURES

Page 23: CSCI 1226 FALL 2015 MIDTERM #1 REVIEWS.  Types of computers:  Personal computers  Embedded systems  Servers  Hardware:  I/O devices: mice, keyboards,

Inside loopsInside if-elseInside method (variables and parameters)Inside class (instance and class variables)

SCOPES OF A VARIABLE/PARAMETER