java语言程序设计 基础篇课件(第3章)英文.ppt

上传人(卖家):晟晟文业 文档编号:4149294 上传时间:2022-11-14 格式:PPT 页数:69 大小:669.51KB
下载 相关 举报
java语言程序设计 基础篇课件(第3章)英文.ppt_第1页
第1页 / 共69页
java语言程序设计 基础篇课件(第3章)英文.ppt_第2页
第2页 / 共69页
java语言程序设计 基础篇课件(第3章)英文.ppt_第3页
第3页 / 共69页
java语言程序设计 基础篇课件(第3章)英文.ppt_第4页
第4页 / 共69页
java语言程序设计 基础篇课件(第3章)英文.ppt_第5页
第5页 / 共69页
点击查看更多>>
资源描述

1、Liang,Introduction to Java Programming,Eighth Edition,(c)2011 Pearson Education,Inc.All rights reserved.0132130807Chapter 3 Selections1Liang,Introduction to Java Programming,Eighth Edition,(c)2011 Pearson Education,Inc.All rights reserved.0132130807MotivationsIf you assigned a negative value for rad

2、ius in Listing 2.1,ComputeArea.java,the program would print an invalid result.If the radius is negative,you dont want the program to compute the area.How can you deal with this situation?2Liang,Introduction to Java Programming,Eighth Edition,(c)2011 Pearson Education,Inc.All rights reserved.01321308

3、07Objectives3FTo declare boolean type and write Boolean expressions using comparison operators(3.2).FTo program AdditionQuiz using Boolean expressions(3.3).FTo implement selection control using one-way if statements(3.4)FTo program the GuessBirthday game using one-way if statements(3.5).FTo implemen

4、t selection control using two-way if statements(3.6).FTo implement selection control using nested if statements(3.7).FTo avoid common errors in if statements(3.8).FTo program using selection statements for a variety of examples(BMI,ComputeTax,SubtractionQuiz)(3.9-3.11).FTo generate random numbers us

5、ing the Math.random()method(3.9).FTo combine conditions using logical operators(&,|,and!)(3.12).FTo program using selection statements with combined conditions(LeapYear,Lottery)(3.13-3.14).FTo implement selection control using switch statements(3.15).FTo write expressions using the conditional opera

6、tor(3.16).FTo format output using the System.out.printf method and to format strings using the String.format method(3.17).FTo examine the rules governing operator precedence and associativity(3.18).F(GUI)To get user confirmation using confirmation dialogs(3.19).Liang,Introduction to Java Programming

7、,Eighth Edition,(c)2011 Pearson Education,Inc.All rights reserved.0132130807The boolean Type and OperatorsOften in a program you need to compare two values,such as whether i is greater than j.Java provides six comparison operators(also known as relational operators)that can be used to compare two va

8、lues.The result of the comparison is a Boolean value:true or false.boolean b=(1 2);4Liang,Introduction to Java Programming,Eighth Edition,(c)2011 Pearson Education,Inc.All rights reserved.0132130807Comparison Operators5Operator Nameless thangreater than=greater than or equal to=equal to!=not equal t

9、oLiang,Introduction to Java Programming,Eighth Edition,(c)2011 Pearson Education,Inc.All rights reserved.0132130807Problem:A Simple Math Learning Tool6AdditionQuizRunThis example creates a program to let a first grader practice additions.The program randomly generates two single-digit integers numbe

10、r1 and number2 and displays a question such as“What is 7+9?”to the student.After the student types the answer,the program displays a message to indicate whether the answer is true or false.Liang,Introduction to Java Programming,Eighth Edition,(c)2011 Pearson Education,Inc.All rights reserved.0132130

11、807One-way if Statementsif(boolean-expression)statement(s);7 Boolean Expression true Statement(s)false (radius=0)true area=radius*radius*PI;System.out.println(The area for the circle of +radius +radius+is +area);false(A)(B)if(radius=0)area=radius*radius*PI;System.out.println(The area +for the circle

12、 of radius +radius+is +area);Liang,Introduction to Java Programming,Eighth Edition,(c)2011 Pearson Education,Inc.All rights reserved.0132130807Note8 if i 0 System.out.println(i is positive);(a)Wrong(b)Correct if(i 0)System.out.println(i is positive);if(i 0)System.out.println(i is positive);(a)Equiva

13、lent(b)if(i 0)System.out.println(i is positive);Liang,Introduction to Java Programming,Eighth Edition,(c)2011 Pearson Education,Inc.All rights reserved.0132130807Simple if Demo9SimpleIfDemoRunWrite a program that prompts the user to enter an integer.If the number is a multiple of 5,print HiFive.If t

14、he number is divisible by 2,print HiEven.Liang,Introduction to Java Programming,Eighth Edition,(c)2011 Pearson Education,Inc.All rights reserved.0132130807Problem:Guessing BirthdayThe program can guess your birth date.Run to see how it works.10GuessBirthdayRun 16 17 18 19 20 21 22 23 24 25 26 27 28

15、29 30 31 Set1 8 9 10 11 12 13 14 15 24 25 26 27 28 29 30 31 Set2 1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 Set3 2 3 6 7 10 11 14 15 18 19 22 23 26 27 30 31 Set4 4 5 6 7 12 13 14 15 20 21 22 23 28 29 30 31 Set5+=19 Liang,Introduction to Java Programming,Eighth Edition,(c)2011 Pearson Education,Inc.A

16、ll rights reserved.0132130807Mathematics Basis for the Game19 is 10011 in binary.7 is 111 in binary.23 is 11101 in binary11 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Set1 8 9 10 11 12 13 14 15 24 25 26 27 28 29 30 31 Set2 1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 Set3 2 3 6 7 10 11 14 15 18 1

17、9 22 23 26 27 30 31 Set4 4 5 6 7 12 13 14 15 20 21 22 23 28 29 30 31 Set5+=19 10000 10 +1 10011 00110 10 +1 00111 19 7 10000 1000 100+1 11101 23 Liang,Introduction to Java Programming,Eighth Edition,(c)2011 Pearson Education,Inc.All rights reserved.0132130807The Two-way if Statementif(boolean-expres

18、sion)statement(s)-for-the-true-case;else statement(s)-for-the-false-case;12 Boolean Expression false true Statement(s)for the false case Statement(s)for the true case Liang,Introduction to Java Programming,Eighth Edition,(c)2011 Pearson Education,Inc.All rights reserved.0132130807if.else Exampleif(r

19、adius=0)area=radius*radius*3.14159;System.out.println(The area for the“+“circle of radius +radius+is +area);else System.out.println(Negative input);13Liang,Introduction to Java Programming,Eighth Edition,(c)2011 Pearson Education,Inc.All rights reserved.0132130807Multiple Alternative if Statements14

20、 if(score=90.0)grade=A;else if(score=80.0)grade=B;else if(score=70.0)grade=C;else if(score=60.0)grade=D;else grade=F;Equivalent if(score=90.0)grade=A;else if(score=80.0)grade=B;else if(score=70.0)grade=C;else if(score=60.0)grade=D;else grade=F;Liang,Introduction to Java Programming,Eighth Edition,(c

21、)2011 Pearson Education,Inc.All rights reserved.0132130807Trace if-else statement15if(score=90.0)grade=A;else if(score=80.0)grade=B;else if(score=70.0)grade=C;else if(score=60.0)grade=D;else grade=F;Suppose score is 70.0The condition is falseanimationLiang,Introduction to Java Programming,Eighth Edi

22、tion,(c)2011 Pearson Education,Inc.All rights reserved.0132130807Trace if-else statement16if(score=90.0)grade=A;else if(score=80.0)grade=B;else if(score=70.0)grade=C;else if(score=60.0)grade=D;else grade=F;Suppose score is 70.0The condition is falseanimationLiang,Introduction to Java Programming,Eig

23、hth Edition,(c)2011 Pearson Education,Inc.All rights reserved.0132130807Trace if-else statement17if(score=90.0)grade=A;else if(score=80.0)grade=B;else if(score=70.0)grade=C;else if(score=60.0)grade=D;else grade=F;Suppose score is 70.0The condition is trueanimationLiang,Introduction to Java Programmi

24、ng,Eighth Edition,(c)2011 Pearson Education,Inc.All rights reserved.0132130807Trace if-else statement18if(score=90.0)grade=A;else if(score=80.0)grade=B;else if(score=70.0)grade=C;else if(score=60.0)grade=D;else grade=F;Suppose score is 70.0grade is CanimationLiang,Introduction to Java Programming,Ei

25、ghth Edition,(c)2011 Pearson Education,Inc.All rights reserved.0132130807Trace if-else statement19if(score=90.0)grade=A;else if(score=80.0)grade=B;else if(score=70.0)grade=C;else if(score=60.0)grade=D;else grade=F;Suppose score is 70.0Exit the if statementanimationLiang,Introduction to Java Programm

26、ing,Eighth Edition,(c)2011 Pearson Education,Inc.All rights reserved.0132130807NoteThe else clause matches the most recent if clause in the same block.20 int i=1;int j=2;int k=3;if(i j)if(i k)System.out.println(A);else System.out.println(B);(a)Equivalent(b)int i=1;int j=2;int k=3;if(i j)if(i k)Syste

27、m.out.println(A);else System.out.println(B);Liang,Introduction to Java Programming,Eighth Edition,(c)2011 Pearson Education,Inc.All rights reserved.0132130807Note,cont.Nothing is printed from the preceding statement.To force the else clause to match the first if clause,you must add a pair of braces:

28、int i=1;int j=2;int k=3;if(i j)if(i k)System.out.println(A);else System.out.println(B);This statement prints B.21Liang,Introduction to Java Programming,Eighth Edition,(c)2011 Pearson Education,Inc.All rights reserved.0132130807Common ErrorsAdding a semicolon at the end of an if clause is a common mi

29、stake.if(radius=0);area=radius*radius*PI;System.out.println(The area for the circle of radius +radius+is +area);This mistake is hard to find,because it is not a compilation error or a runtime error,it is a logic error.This error often occurs when you use the next-line block style.22WrongLiang,Introd

30、uction to Java Programming,Eighth Edition,(c)2011 Pearson Education,Inc.All rights reserved.0132130807TIP23 if(number%2=0)even=true;else even=false;(a)Equivalent boolean even =number%2=0;(b)Liang,Introduction to Java Programming,Eighth Edition,(c)2011 Pearson Education,Inc.All rights reserved.013213

31、0807CAUTION24 if(even=true)System.out.println(It is even.);(a)Equivalent if(even)System.out.println(It is even.);(b)Liang,Introduction to Java Programming,Eighth Edition,(c)2011 Pearson Education,Inc.All rights reserved.0132130807Problem:An Improved Math Learning Tool This example creates a program

32、to teach a first grade child how to learn subtractions.The program randomly generates two single-digit integers number1 and number2 with number1 number2 and displays a question such as“What is 9 2?”to the student.After the student types the answer in the input dialog box,the program displays a messa

33、ge dialog box to indicate whether the answer is correct.25SubtractionQuizRunLiang,Introduction to Java Programming,Eighth Edition,(c)2011 Pearson Education,Inc.All rights reserved.0132130807Problem:Body Mass Index Body Mass Index(BMI)is a measure of health on weight.It can be calculated by taking yo

34、ur weight in kilograms and dividing by the square of your height in meters.The interpretation of BMI for people 16 years or older is as follows:26ComputeBMIR u n BMI Interpretation below 16 serious underweight 16-18 underweight 18-24 normal weight 24-29 overweight 29-35 seriously overweight above 35

35、 gravely overweight Liang,Introduction to Java Programming,Eighth Edition,(c)2011 Pearson Education,Inc.All rights reserved.0132130807Problem:Computing TaxesThe US federal personal income tax is calculated based on the filing status and taxable income.There are four filing statuses:single filers,mar

36、ried filing jointly,married filing separately,and head of household.The tax rates for 2009 are shown below.27Marginal Tax RateSingleMarried Filing Jointly or Qualified Widow(er)Married Filing SeparatelyHead of Household10%$0$8,350$0$16,700$0$8,350$0$11,95015%$8,351$33,950$16,701$67,900$8,351$33,950$

37、11,951$45,50025%$33,951$82,250$67,901$137,050$33,951$68,525$45,501$117,45028%$82,251$171,550$137,051$208,850$68,525$104,425$117,451$190,20033%$171,551$372,950$208,851$372,950$104,426$186,475$190,201-$372,95035%$372,951+$372,951+$186,476+$372,951+Liang,Introduction to Java Programming,Eighth Edition,

38、(c)2011 Pearson Education,Inc.All rights reserved.0132130807Problem:Computing Taxes,cont.if(status=0)/Compute tax for single filerselse if(status=1)/Compute tax for married file jointlyelse if(status=2)/Compute tax for married file separatelyelse if(status=3)/Compute tax for head of householdelse /D

39、isplay wrong status28ComputeTaxRunLiang,Introduction to Java Programming,Eighth Edition,(c)2011 Pearson Education,Inc.All rights reserved.0132130807Logical Operators29Operator Name!not&and|orexclusive or Liang,Introduction to Java Programming,Eighth Edition,(c)2011 Pearson Education,Inc.All rights r

40、eserved.0132130807Truth Table for Operator!30 p !p true false false true Example(assume age=24,gender=M)!(age 18)is false,because(age 18)is true.!(gender!=F)is true,because(grade!=F)is false.Liang,Introduction to Java Programming,Eighth Edition,(c)2011 Pearson Education,Inc.All rights reserved.01321

41、30807Truth Table for Operator&31 p1 p2 p1&p2 false false false false true false true false false true true true Example(assume age=24,gender=F)(age 18)&(gender=F)is true,because(age 18)and(gender=F)are both true.(age 18)&(gender!=F)is false,because(gender!=F)is false.Liang,Introduction to Java Progr

42、amming,Eighth Edition,(c)2011 Pearson Education,Inc.All rights reserved.0132130807Truth Table for Operator|32 p1 p2 p1|p2 false false false false true true true false true true true true Example(assume age=24,gender=F)(age 34)|(gender=F)is true,because(gender=F)is true.(age 34)|(gender=M)is false,be

43、cause(age 34)and(gender=M)are both false.Liang,Introduction to Java Programming,Eighth Edition,(c)2011 Pearson Education,Inc.All rights reserved.0132130807Examples33Here is a program that checks whether a number is divisible by 2 and 3,whether a number is divisible by 2 or 3,and whether a number is

44、divisible by 2 or 3 but not both:TestBooleanOperatorsRunLiang,Introduction to Java Programming,Eighth Edition,(c)2011 Pearson Education,Inc.All rights reserved.0132130807Truth Table for Operator!34 p !p true false false true Example!(1 2)is true,because(1 2)is false.!(1 0)is false,because(1 0)is tru

45、e.Liang,Introduction to Java Programming,Eighth Edition,(c)2011 Pearson Education,Inc.All rights reserved.0132130807Truth Table for Operator&35 p1 p2 p1&p2 false false false false true false true false false true true true Example(3 2)&(5=5)is true,because(3 2)and(5=5)are both true.(3 2)&(5 5)is fal

46、se,because(5 5)is false.Liang,Introduction to Java Programming,Eighth Edition,(c)2011 Pearson Education,Inc.All rights reserved.0132130807Truth Table for Operator|36 p1 p2 p1|p2 false false false false true true true false true true true true Example(2 3)|(5 5)is false,because(2 3)and(5 5)are both f

47、alse.(3 2)|(5 5)is true,because(3 2)is true.Liang,Introduction to Java Programming,Eighth Edition,(c)2011 Pearson Education,Inc.All rights reserved.0132130807Truth Table for Operator 37 p1 p2 p1 p2 false false false false true true true false true true true false Example(assume age=24,gender=F)(age

48、34)(gender=F)is true,because(age 34)is false but(gender=F)is true.(age 34)|(gender=M)is false,because(age 34)and(gender=M)are both false.Liang,Introduction to Java Programming,Eighth Edition,(c)2011 Pearson Education,Inc.All rights reserved.0132130807Examples38System.out.println(Is +number+divisible

49、 by 2 and 3?+(number%2=0)&(number%3=0);System.out.println(Is +number+divisible by 2 or 3?+(number%2=0)|(number%3=0);System.out.println(Is +number+divisible by 2 or 3,but not both?+(number%2=0)(number%3=0);TestBooleanOperatorsRunLiang,Introduction to Java Programming,Eighth Edition,(c)2011 Pearson Ed

50、ucation,Inc.All rights reserved.0132130807The&and|OperatorsSupplement III.B,“The&and|Operators”39Companion WebsiteLiang,Introduction to Java Programming,Eighth Edition,(c)2011 Pearson Education,Inc.All rights reserved.0132130807The&and|OperatorsIf x is 1,what is x after this expression?(x 1)&(x+x)&(

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(java语言程序设计 基础篇课件(第3章)英文.ppt)为本站会员(晟晟文业)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|