博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
《Java语言程序设计与数据结构》编程练习答案(第三章)(三)
阅读量:4169 次
发布时间:2019-05-26

本文共 8363 字,大约阅读时间需要 27 分钟。

《Java语言程序设计与数据结构》编程练习答案(第三章)(三)

英文名:Introduction to Java Programming and Data Structures, Comprehensive Version, 11th Edition

3.24

public class book {
public static void main(String[] args) {
int num = (int)(Math.random()*13); int dick = (int)(Math.random()*4); String[] nums = {
"Ace","2","3","4","5","6","7","8","9","10","Jack","Queen","King"}; String[] dicks = {
"Clubs","Diamonds","Hearts","Spades"}; System.out.println("The card you picked is "+nums[num]+" of "+dicks[dick]); }}

3.25

import java.util.Scanner;public class book {
public static void main(String[] args) {
System.out.print("Enter x1, y1, x2, y2, x3, y3, x4, y4: "); Scanner input = new Scanner(System.in); double x1 = input.nextDouble(); double y1 = input.nextDouble(); double x2 = input.nextDouble(); double y2 = input.nextDouble(); double x3 = input.nextDouble(); double y3 = input.nextDouble(); double x4 = input.nextDouble(); double y4 = input.nextDouble(); double a = y1-y2; double b = x2-x1; double c = y3-y4; double d = x4-x3; double e = (y1-y2)*x1-(x1-x2)*y1; double f = (y3-y4)*x3-(x3-x4)*y3; double jb = a*d-b*c; if(jb==0) System.out.println("The two lines are parallel"); else System.out.println("The intersecting point is at ("+(e*d-b*f)/jb+", "+(a*f-e*c)/jb+")"); }}

3.26

import java.util.Scanner;public class book {
public static void main(String[] args) {
System.out.print("Enter an integer: "); Scanner input = new Scanner(System.in); int n = input.nextInt(); System.out.println("Is "+n+" divisible by 5 and 6? "+(n%5==0&&n%6==0)); System.out.println("Is "+n+" divisible by 5 or 6? "+(n%5==0||n%6==0)); System.out.println("Is "+n+" divisible by 5 or 6, but not both? "+(n%5==0^n%6==0)); }}

3.27

import java.util.Scanner;public class book {
public static void main(String[] args) {
System.out.print("Enter a point's x- and y- coordinates: "); Scanner input = new Scanner(System.in); double x = input.nextDouble(); double y = input.nextDouble(); if(x>=0&&x<=200&&y>=0&&y<=100-0.5*x) System.out.println("The point is in the triangle"); else System.out.println("The point is not in the triangle"); }}

3.28

import java.util.Scanner;public class book {
public static void main(String[] args) {
Scanner input = new Scanner(System.in); System.out.print("Enter r1's center x-, y-coordinates, width, and height: "); double x1 = input.nextDouble(); double y1 = input.nextDouble(); double w1 = input.nextDouble(); double h1 = input.nextDouble(); System.out.print("Enter r2's center x-, y0coordinates, width, and height: "); double x2 = input.nextDouble(); double y2 = input.nextDouble(); double w2 = input.nextDouble(); double h2 = input.nextDouble(); if((x1+w1/2>=x2+w2/2)&&(x1-w1/2<=x2-w2/2)&&(y1+h1/2>=y2+h2/2)&&(y1-h1/2<=y2-h2/2)) System.out.println("r2 is inside r1"); else if((x2-w2/2>x1+w1/2)||(x2+w2/2
y1+h1/2)||(y2+h2/2
=x1+w1/2)&&(x2-w2/2<=x1-w1/2)&&(y2+h2/2>=y1+h1/2)&&(y2-h2/2<=y1-h1/2)) System.out.println("r1 is inside r2"); else System.out.println("r2 overlaps r1"); }}

3.29

import java.util.Scanner;public class book {
public static void main(String[] args) {
Scanner input = new Scanner(System.in); System.out.print("Enter circle's center x-, y-coordinates, and radius: "); double x1 = input.nextDouble(); double y1 = input.nextDouble(); double r1 = input.nextDouble(); System.out.print("Enter circle2's center x-, y-coordinates, and radius: "); double x2 = input.nextDouble(); double y2 = input.nextDouble(); double r2 = input.nextDouble(); if(Math.pow((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2),0.5)<=Math.abs(r1-r2)) System.out.println("circle2 is inside circle1"); else if(Math.pow((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2),0.5)<=r1+r2) System.out.println("circle2 overlaps circle1"); else System.out.println("circle2 does not overlap circle1"); }}

3.30

import java.util.Scanner;public class book {
public static void main(String[] args) {
Scanner input = new Scanner(System.in); System.out.print("Enter the time zone offset to GMT:"); long offset = input.nextLong(); long totalMilliseconds = System.currentTimeMillis(); totalMilliseconds+=offset*60*60*1000; long totalSeconds = totalMilliseconds/1000; long currentSecond = totalSeconds%60; long totalMinutes = totalSeconds/60; long currentMinute = totalMinutes%60; long totalHours = totalMinutes/60; long currentHour = totalHours%24; String tail = "AM"; if(currentHour>12) {
currentHour-=12; tail="PM"; } System.out.println("Current time is "+currentHour+":"+currentMinute+":"+currentSecond+" "+tail); }}

3.31

import java.util.Scanner;public class book {
public static void main(String[] args) {
Scanner input = new Scanner(System.in); System.out.print("Enter the exchange rate from dollar to RMB: "); double rate = input.nextDouble(); System.out.print("Enter 0 to convert dollars to RMB and 1 vice versa: "); int sig = input.nextInt(); double in = 0; double out = 0; String moneyType = ""; if(sig==0) moneyType="dollar"; else if(sig==1) moneyType="RMB"; else System.out.println("Incorrect input"); if(sig==0||sig==1) {
System.out.print("Enter the "+moneyType+" amount: "); in = input.nextDouble(); if(sig==0) {
out = in*rate; System.out.println("$"+in+" is "+out+" yuan"); } else {
out = in/rate; System.out.println(in+" yuan is $"+out); } } }}

3.32

import java.util.Scanner;public class book {
public static void main(String[] args) {
System.out.print("Enter three points for p0, p1, and p2: "); Scanner input = new Scanner(System.in); double x0 = input.nextDouble(); double y0 = input.nextDouble(); double x1 = input.nextDouble(); double y1 = input.nextDouble(); double x2 = input.nextDouble(); double y2 = input.nextDouble(); double result = (x1-x0)*(y2-y0)-(x2-x0)*(y1-y0); if(result>0) System.out.println("p2 is on the left side of the line"); else if(result==0) System.out.println("p2 is on the same line"); else System.out.println("p2 is on the right side of the line"); }}

3.33

import java.util.Scanner;public class book {
public static void main(String[] args) {
Scanner input = new Scanner(System.in); System.out.print("Enter weight and price for package 1: "); double w1 = input.nextDouble(); double p1 = input.nextDouble(); System.out.print("Enter weight and price for package 2: "); double w2 = input.nextDouble(); double p2 = input.nextDouble(); double av1 = p1/w1; double av2 = p2/w2; if(av1

3.34

import java.util.Scanner;public class book {
public static void main(String[] args) {
Scanner input = new Scanner(System.in); System.out.print("Enter three points for p0, p1, and p2: "); double x0 = input.nextDouble(); double y0 = input.nextDouble(); double x1 = input.nextDouble(); double y1 = input.nextDouble(); double x2 = input.nextDouble(); double y2 = input.nextDouble(); if((x1-x0)*(y2-y0)-(x2-x0)*(y1-y0)==0&&x2>=x0&&x2<=x1) System.out.println("("+x2+", "+y2+") is on the line segment from ("+x0+", "+y0+") to ("+x1+", "+y1+")"); else System.out.println("("+x2+", "+y2+") is not on the line segment from ("+x0+", "+y0+") to ("+x1+", "+y1+")"); }}

第三章 完

转载地址:http://rkwai.baihongyu.com/

你可能感兴趣的文章
技术推动到时间银行、再论比特币挖矿--磨链社区小讨论
查看>>
都在说自动化运维工具-Ansible搭建第一步~~
查看>>
Fabric-V1.4安装配置+票据示例
查看>>
Fabric-v-1.4基础环境搭建+票据应用示例
查看>>
Fabric-V1.4-First-Application
查看>>
Openstack-笔记(一)
查看>>
Libra第一步-环境搭建、账户、转账
查看>>
The Libra Blockchain开发者文档-(一)中文版
查看>>
The Libra Blockchain开发者文档-(二)Libra协议:核心概念
查看>>
The Libra Blockchain开发者文档-(三)交易生命周期
查看>>
The Libra Blockchain开发者文档-(四)Libra上的第一笔交易
查看>>
The Libra Blockchain-开发者文档-(五)了解Move语言
查看>>
The Libra Blockchain-开发者文档-(六)AC准入模块
查看>>
HW系统安全补丁总结
查看>>
BIO---NIO介绍
查看>>
redis在Linux环境下安装和启动
查看>>
Redis常用命令操作String类型数据+hash命令+list命令
查看>>
redis的hash一致性、哨兵、集群
查看>>
Spring Cloud注册中心引申及介绍
查看>>
微服务架构底层原理简单介绍
查看>>