1 / 33

Conditional Statements A Mathematical look

Conditional Statements A Mathematical look. Relational operators < less than <= less than or equal to > greater than >= greater than or equal to == equals != not equals. Conditional Statements Some Examples. Relational operators: return a Boolean value

Télécharger la présentation

Conditional Statements A Mathematical look

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Conditional StatementsA Mathematical look • Relational operators < less than <= less than or equal to > greater than >= greater than or equal to == equals != not equals karel_part3_ifElse_HW

  2. Conditional StatementsSome Examples • Relational operators: return a Boolean value • That is, returns true or false. For example 7 < 8 returns true 17 <= 8 returns false 7 > 8 returns false 17 >= 8 returns true Math.pow(5, 0) == 1 returns true 17 != 17 returns false karel_part3_ifElse_HW

  3. Boolean Operators && logical AND • a && b is true only if both a is true and b is true, otherwise a && b is false || logical OR • a || b is true either a is true and/orb is true, otherwise a || b is false. ! Logical NOT • !a is true if a is false and!a is false if a is true karel_part3_ifElse_HW

  4. Order of Operations • ! and parenthesis. • && • || Ties (two or more of same operator) are broken left to right karel_part3_ifElse_HW

  5. Order of Operations • true && false || true = • true • !false && true = • true • !(false || !true) = • true • !true && (!true || !false) = • false karel_part3_ifElse_HW

  6. Order of Operations 1) Arithmetic (*, /, +, etc.) 2) Comparison (>, <, >=, ==, etc.) 3) Logical (!, &&, ||) karel_part3_ifElse_HW

  7. Mathematical Operators * multiplication / division + addition - subtraction % modulus (aka remainder) Math.pow(a, b) a^b karel_part3_ifElse_HW

  8. Mathematical OperatorsOrder of Operations • These first: Left to right * multiplication / division % modulus (aka remainder) Math.pow(a, b) a^b • These next: left to right + addition - subtraction karel_part3_ifElse_HW

  9. Mathematical Operatorssome more • What is modulus you ask? • % (Modulus) returns the remainder after dividing by its argument. For example • 21 % 10 returns 1 because after dividing 21 by 10, 1 is the remainder! • 33 % 5 returns 3 because after dividing 33 by 5, 3 is the remainder! • 100 % 10 returns 0 because after dividing 100 by 10, 0 is the remainder! karel_part3_ifElse_HW

  10. Mathematical Operatorssome more • What is Math.pow(a, b) you ask? • Math.pow(a, b) returns the value of a^b or a raised to the bth power. For example: • Math.pow(2, 3) returns • 8 because 2^3 is 8 • Math.pow(2, 4) returns • 16 because 2^4 is 16 • Math.pow(121, 0) returns • 1 because 121^0 is 1 • Math.pow(-5, 3) • returns -125 because (-5)^3 is -125 karel_part3_ifElse_HW

  11. Mathematical OperatorsExamples • Evaluate the following • 2 + 5 * 11 = 57 • Math.pow(2, 5) % 11 = 32 % 11 = 10 • 100 / 2 / 5 * 3 = 50 / 5 * 3 = 10 * 3 = 30 • Math.pow(-3, 3) + 11 + 50 % 13 = -27 + 11 + 11 = -5 karel_part3_ifElse_HW

  12. Mathematical OperatorsDid we mention Integer Math? • Integer Math(NO decimals points)12 / 51 + 2 * 9 / -4 • double (or Real) math(At least one decimal point)12. / 71.3 + 2. / -4. • Mix (double and int) math(At least one decimal point)12 / 7 + 2.5 * 41.3 + 2 * 9 / -4 karel_part3_ifElse_HW

  13. Mathematical OperatorsDid we mention Integer Math? • Integer Math12 / 5 • Is different from double (Real) math12. / 7 • Integer math is when all values are int(egers). All fractional parts are discarded! • Therefore: 12 / 5 = 2 • And 7 * 3 / 5 = 21 / 5 = 4 • And 7 * (3 / 5) = 7 * 0 = 0 karel_part3_ifElse_HW

  14. Mathematical OperatorsAnd Real Math? • double (or Real) math • 12. / 7 = 1.714285714… • 5.5 * 2 = 11.0 • 5.5 * 2 % 3. = 2.0 • Math.pow(3, 3) = 27.0 • Special note: math.pow always returns a double • Math.pow(3, 3) / 2 = 13.5 karel_part3_ifElse_HW

  15. Mathematical OperatorsMixed Math –int and double • These are a little tricky • 1.3 + 2 * 9 / -4 = -2.7 • Why you ask?Everything is Integer Math until–1.3 is added. Order of operations forces 2*9/-4= -4 before adding 1.3 • 12 / 7 + 2.5 * 4 • 1 + 10. = 11. • 1. / 5 + 2. * 7 / (2 – 1./3) • 0.2 + 14. / (5/3.) = .2 + (14.*3/5.) • .2 + 42./5. = .2 + 8.4 = 8.6 • Math.pow(2, 14/5. + 13/5. + 3./5) • Math.pow(2, 2.8 + 2.6 + .6) = 2^(6) = 64.0 karel_part3_ifElse_HW

  16. Mathematical OperationsYou try! • 10. + 21. / 5 • 10.+ 4.2 = 14.2 • 12 + Math.pow(4, 1/2) • 12 + Math.pow(4,0) = 12 + 1. = 13. • 12 + Math.pow(4, 3/2. + 1./2) • 12 + Math.pow(4,2) = 12 + 16. = 28. • 12 + 68 % 6 * 3 • 12 + 2 * 3 = 12 + 6 = 18 • 7 * -5 + 11 * 9 % 5 • -35 + 99 % 5 = -35 + 4 = -31 • 7 + 1 / Math.pow(3, 2) • 7 + 1 / 9. = 7.111111 karel_part3_ifElse_HW

  17. (Terminal) Output • System.out.println(someString); • / outputs someString to terminal • / ln: next output is on a new line • System.out.print(someString); • / outputs someString to terminal • / next output is on same line karel_part3_ifElse_HW

  18. System.out.print(ln) System.out.print(“The ”); System.out.print(“cat in the ”); System.out.print(“hat”); • / generates The cat in the hat System.out.print(“One ”); System.out.println(“Fish”); System.out.print(“Two ”); System.out.println(“Fishies”); • / generates One Fish • / Two Fishies karel_part3_ifElse_HW

  19. String Concatenation “The ” + “Cat” = “The Cat” 1 + “ Fish ” + 2 = “1 Fish 2” “ Fish ” + 2 + “!” = “Fish 2!” karel_part3_ifElse_HW

  20. System.out.print(ln)Example System.out.print(1 + “cat in ”); System.out.println(1 + “ large”); System.out.print(“red”+“hat”); generates • *Line 1*/ 1cat in 1 large • *Line 2*/ redhat karel_part3_ifElse_HW

  21. System.out.print(ln)Example System.out.print(123 + “ + ”); System.out.print(456 + “ =”); System.out.println(“ “ + 579); System.out.println(5 + “ + 2”); System.out.println(“ = 1” + 56); generates • *Line 1*/ 123 + 456 = 579 • *Line 2*/ 5 + 2 • *Line 3*/ = 156 karel_part3_ifElse_HW

  22. System.out.print(ln)Escape sequences? • What if We want to output a string with “, ‘ or \? • Use Escape sequences as follows: • \” to output “ System.out.print(“he said \”NO\”!”); Generates: he said ”NO”! System.out.print(“\”they\’ve rallied\” again”); Generates: ”they’ve rallied” again System.out.print(“use \\\\ to to output \\“); Generates: use \\ to to output \ Special Note: use \n to start a new line! System.out.print(“\\ it\’s time\“new\nline why”); Generates: \ it’s time“new line why karel_part3_ifElse_HW

  23. Conditionals Revisited • Nested ifif( booleanExpression ) if ( anotherBooleanExpression ) System.out.println(“true”); • Outputs: true if and only ifbooleanExpression = trueanotherBooleanExpression = true karel_part3_ifElse_HW

  24. Conditionals Revisited • Nested ifif( booleanExpression ) System.out.println(“true”);else if ( anotherBooleanExpression ) System.out.println(“false”); • Outputs: true only ifbooleanExpression = true • Outputs: false only ifbooleanExpression = falseanotherBooleanExpression = true karel_part3_ifElse_HW

  25. Conditionals Revisited • Dangling elseif( booleanExpression ) if ( anotherBooleanExpression ) System.out.println(“true”) else System.out.println(“false”) • The question is, to which if is the else attached? • The answer is the most recent unused else. karel_part3_ifElse_HW

  26. Conditionals Revisited • Dangling elseif( booleanExpression ) if ( anotherBooleanExpression ) System.out.println(“true”) else System.out.println(“false”) • Outputs: true only ifbooleanExpression = true anotherBooleanExpression = true • Outputs: false only ifbooleanExpression = trueanotherBooleanExpression = false karel_part3_ifElse_HW

  27. Conditionals Revisited • Dangling elseif( booleanExpression ) if ( anotherBooleanExpression ) System.out.println(“true”)else System.out.println(“false”) • How is the if structured to have the else associated with the first if • Use brackets! • Indenting will not work! • This is how I will trick you karel_part3_ifElse_HW

  28. Conditionals Revisited • Dangling elseif( booleanExpression ) { if ( anotherBooleanExpression ) System.out.println(“true”) }else System.out.println(“false”) karel_part3_ifElse_HW

  29. Conditionals Revisited • Nested if’s if( booleanExpression ) if ( anotherBooleanExpression ) System.out.println(“true - true”) else System.out.println(“true - false”)else if ( differentBooleanExpression ) System.out.println(“false - true”) else System.out.println(“false - false”) • Outputs: true - true ifbooleanExpression = trueanotherBooleanExpression = true karel_part3_ifElse_HW

  30. Conditionals Revisited • Nested if’sif( booleanExpression ) if ( anotherBooleanExpression ) System.out.println(“true - true”) else System.out.println(“true - false”)else if ( differentBooleanExpression ) System.out.println(“false - true”) else System.out.println(“false - false”) • Outputs: true - false ifbooleanExpression = trueanotherBooleanExpression = false karel_part3_ifElse_HW

  31. Conditionals Revisited • Nested if’s if( booleanExpression ) if ( anotherBooleanExpression ) System.out.println(“true - true”) else System.out.println(“true - false”)else if ( differentBooleanExpression ) System.out.println(“false - true”) else System.out.println(“false - false”) • Outputs: false - true ifbooleanExpression = false differentBooleanExpression = true karel_part3_ifElse_HW

  32. Conditionals Revisited • Nested if’s if( booleanExpression ) if ( anotherBooleanExpression ) System.out.println(“true - true”) else System.out.println(“true - false”)else if ( differentBooleanExpression ) System.out.println(“false - true”) else System.out.println(“false - false”) • Outputs: false - false ifbooleanExpression = falsedifferentBooleanExpression = false karel_part3_ifElse_HW

  33. WOW That was a lot! karel_part3_ifElse_HW

More Related