Java黑皮书课后题第3章:**3.23(几何:点是否在矩形内)编写程序,提示用户输入点(x,y),然后检测该点是否在以原点为中心、宽为10、高为5的矩形中
@TOC,然后檢測(cè)該點(diǎn)是否在以原點(diǎn)為中心、寬為10、高為5的矩形中)
題目
題目概述
**3.23(幾何:點(diǎn)是否在矩形內(nèi))編寫程序,提示用戶輸入點(diǎn)(x,y),然后檢測(cè)該點(diǎn)是否在以原點(diǎn)為中心、寬為10、高為5的矩形中
提示(原書上有)
簡(jiǎn)而言之:判斷一個(gè)點(diǎn)是否在矩形內(nèi),只需要獲取它的x值、y值,分別與矩形x值范圍、y值范圍進(jìn)行比較,如果兩個(gè)值都在矩形取值范圍內(nèi),則說明該點(diǎn)在矩形中
運(yùn)行示例
Enter a point with two coordinates: 2 2
Point (2.0, 2.0) is in the rectangle
Enter a point with two coordinates: 6 4
Point (6.0, 4.0) is not in the rectangle
破題
這個(gè)和3.22在圓內(nèi)特別像,可以點(diǎn)擊這里前往我的對(duì)應(yīng)博文,或者復(fù)制url到瀏覽器:
https://blog.csdn.net/weixin_46356698/article/details/119813584
代碼
import java.util.Scanner;public class Test3_23 {public static void main(String[] args) {// 獲取點(diǎn)坐標(biāo)Scanner input = new Scanner(System.in);System.out.println("Enter a point with two coordinates: ");double x2 = input.nextDouble(), y2 = input.nextDouble();// 矩形double x0 = -2.5, x1 = 2.5; // x值上下限double y0 = -5.0, y1 = 5.0; // y值上下限// 分別判斷x、y是否在矩形范圍內(nèi):boolX判斷x2是否在范圍內(nèi),boolY判斷y2是否在范圍內(nèi)boolean boolX = false,boolY = false;if(x2 >= x0 && x2 <= x1)boolX = true;if(y2 >= y0 && y2 <= y1)boolY = true;// bool匯總boolX和boolY的結(jié)果(配合三目運(yùn)算符食用)boolean bool = (boolX && boolY)? true : false;// 輸出結(jié)果if(bool){System.out.println("Point (" + x2 + ", " + y2 + ") is in the rectangle");}else{System.out.println("Point (" + x2 + ", " + y2 + ") is not in the rectangle");}} }三目運(yùn)算符:配合實(shí)例講解
boolean bool = (boolX && boolY)? true : false;等式右邊,?前面的就是表達(dá)式,如果這個(gè)表達(dá)式成立,則返回:左邊的值,如果不成立,則返回右邊的值
簡(jiǎn)化三目運(yùn)算符:表達(dá)式 ? 值1 : 值2;
總結(jié)
以上是生活随笔為你收集整理的Java黑皮书课后题第3章:**3.23(几何:点是否在矩形内)编写程序,提示用户输入点(x,y),然后检测该点是否在以原点为中心、宽为10、高为5的矩形中的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java黑皮书课后题第3章:**3.22
- 下一篇: Java黑皮书课后题第3章:**3.24