JavaHomeWorkList-Java语言程序设计(基础篇)第十版第三章部分答案
3.17 关键词:剪刀石头布;随机数
1 import java.util.Scanner; 2 public class JSB { 3 public static void main(String[] args) { 4 int a = (int)(Math.random() * 3); 5 Scanner input = new Scanner(System.in); 6 System.out.println("输入0(剪刀)/1(石头)/2(布):"); 7 int x = input.nextInt(); 8 9 if (x != 0 && x != 1 && x != 2)10 System.out.println("请输入0/1/2!");11 else {12 if (a == 0 && x == 2)13 System.out.println("电脑是剪刀,你是布,电脑赢!");14 if (a == 1 && x == 0)15 System.out.println("电脑是石头,你是剪刀,电脑赢!");16 if (a == 2 && x == 1)17 System.out.println("电脑是布,你是石头,电脑赢!");18 if (a == 0 && x == 1)19 System.out.println("电脑是剪刀,你是石头,你赢!");20 if (a == 1 && x == 2)21 System.out.println("电脑是石头,你是布,你赢!");22 if (a == 2 && x == 0)23 System.out.println("电脑是布,你是剪刀,你赢!");24 if (a == x)25 System.out.println("平手!");26 System.out.println("电脑是:" + a);27 }28 input.close();29 }30 31 }
3.16 关键词:矩形;随机坐标;中心点(0,0)、宽100、高200
1 public class rectangle {2 public static void main(String[] args) {3 int x = (int)(Math.random() * 101 - 50);4 int y = (int)(Math.random() * 201 - 100);5 System.out.println("矩形内随机坐标为:" + "(" + x + " , " + y + ")");6 7 }8 9 }
3.14 关键词:硬币;正面;反面;0;1
1 import java.util.Scanner; 2 public class guesscoin { 3 public static void main(String[] args) { 4 int coin = (int)(Math.random() * 2); 5 Scanner input = new Scanner(System.in); 6 System.out.println("输入0或1,1代表正面,0代表反面:"); 7 int guess = input.nextInt(); 8 9 if (guess != 0 && guess != 1)10 System.out.println("请输入0或1!");11 else {12 if (guess == coin) 13 System.out.println("猜对了!");14 else 15 System.out.println("猜错了!");16 System.out.println("硬币数字为:" + coin + " ;* 1代表正面,0代表反面");17 }18 input.close();19 }20 }
3.9 关键词:ISBN-10;检验和
1 import java.util.*; 2 public class ISBN10 { 3 public static void main(String[] args) { 4 Scanner input = new Scanner(System.in); 5 System.out.println("输入9个数字:"); 6 7 int d1 = input.nextInt(); 8 int d2 = input.nextInt(); 9 int d3 = input.nextInt();10 int d4 = input.nextInt();11 int d5 = input.nextInt();12 int d6 = input.nextInt();13 int d7 = input.nextInt();14 int d8 = input.nextInt();15 int d9 = input.nextInt();16 17 int sum = (int)(d1 * Math.pow(10, 8) + d2 * Math.pow(10, 7) + d3 * Math.pow(10, 6) + d4 * Math.pow(10, 5) + d5 * Math.pow(10, 4) + d6 * Math.pow(10, 3) + d7 * Math.pow(10, 2) + d8 * Math.pow(10, 1) + d9);18 19 int d10 = (d1 * 1 + d2 * 2 + d3 * 3 + d4 * 4 + d5 * 5 + d6 * 6 + d7 * 7 + d8 * 8 + d9 * 9) % 11;20 System.out.println("校验和为: " + d10);21 22 if (d1 == 0)23 if (d10 == 10)24 System.out.println("ISBN-10为:" + "0" + sum + "X");25 else26 System.out.println("ISBN-10为:" + "0" + sum + d10);27 else28 System.out.println("ISBN-10为:" + sum * 10 + d10);29 input.close();30 31 }32 33 }
3.8 关键词:非降序
1 import java.util.*; 2 public class NodescendingOeder { 3 public static void main(String[] args) { 4 Scanner input = new Scanner(System.in); 5 System.out.println("输入三个整数:"); 6 int num1 = input.nextInt(); 7 int num2 = input.nextInt(); 8 int num3 = input.nextInt(); 9 /*非降序列:通常非降序列的元素定义在有序域上,每一项不小于它的前一项。非降序列通常指无穷序列。10 例如:定义在实数域上的非降序列 1,2,3,4,5,...611 非降序列每项不一定严格大于它的前一项,例如 1,1,1,1,1,...12 */13 if (num1 < num2) {14 if (num1 < num3) {15 System.out.print(num1);16 if (num2 < num3)17 System.out.print(" " + num2 + " " + num3);18 else19 System.out.print(" " + num3 + " " + num2);20 }21 else22 System.out.print(num3 + " " + num1 + " " + num2);23 }24 else if (num1 < num3) 25 System.out.print(num2 + " " + num1 + " " + num3);26 else if (num2 < num3) 27 System.out.print(num2 + " " + num3 + " " + num1);28 else29 System.out.print(num3 + " " + num2 + " " + num1);30 input.close();31 }32 }
3.5 关键词:找到将来的日期
1 import java.util.*; 2 public class FindFutureDay { 3 public static void main(String[] args) { 4 Scanner input = new Scanner(System.in); 5 System.out.println("输入一个数字,周日是0,周一是1,... 周六是6 "); 6 int day0 = input.nextInt(); 7 System.out.println("输入一个数字,表示天数: "); 8 int day1 = input.nextInt(); 9 int futureday = ( day0 + day1 ) % 7;10 //System.out.println("Today is " + day0 + " Futureday is " + futureday); 这个语句太粗糙!!!11 switch (day0) {12 case 0: System.out.print("Today is Sunday and the future day is "); break;13 case 1: System.out.print("Today is Monday and the future day is "); break;14 case 2: System.out.print("Today is Tuesday and the future day is "); break;15 case 3: System.out.print("Today is Wendesday and the future day is "); break;16 case 4: System.out.print("Today is Thursday and the future day is "); break;17 case 5: System.out.print("Today is Friday and the future day is "); break;18 case 6: System.out.print("Today is Saturday and the future day is ");19 }20 21 switch (futureday) {22 case 0: System.out.print("Sunday "); break;23 case 1: System.out.print("Monday "); break;24 case 2: System.out.print("Tuesday "); break;25 case 3: System.out.print("Wendesday "); break;26 case 4: System.out.print("Thursday "); break;27 case 5: System.out.print("Friday "); break;28 case 6: System.out.print("Saturday ");29 }30 //双重switch语句31 input.close();32 33 }34 35 }
3.11 关键词:一个月的总天数
1 import java.util.*; 2 public class DaysOfMonth { 3 public static void main(String[] args) { 4 // TODO Auto-generated method stub 5 Scanner input = new Scanner(System.in); 6 System.out.println("Enter a month and a year: "); 7 int month = input.nextInt(); 8 int year = input.nextInt(); 9 10 /*if (month ==2)11 if ((year % 4 == 0 && year % 100 != 0) || year % 400 ==0)12 System.out.println("February of " + year + " has" + " 29 days ");13 else 14 System.out.println("February " + year + " has" + " 28 days ");15 else if (month == 1 ||month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12)16 System.out.println(month + " of " + year + " has 31 days ");17 else18 System.out.println(month + " of " + year + " has 30 days ");19 */20 if ((year % 4 == 0 && year % 100 != 0) || year % 400 ==0)21 switch(month) {22 case 1:System.out.println("Jan. " + year + " has 31 days."); break;23 case 2:System.out.println("Feb. " + year + " has 29 days."); break;24 case 3:System.out.println("Mar. " + year + " has 31 days."); break;25 case 4:System.out.println("Apr. " + year + " has 30 days."); break;26 case 5:System.out.println("May. " + year + " has 31 days."); break;27 case 6:System.out.println("Jun. " + year + " has 30 days."); break;28 case 7:System.out.println("Jul. " + year + " has 31 days."); break;29 case 8:System.out.println("Aug. " + year + " has 31 days."); break;30 case 9:System.out.println("Sep. " + year + " has 30 days."); break;31 case 10:System.out.println("Oct. " + year + " has 31 days."); break;32 case 11:System.out.println("Nov. " + year + " has 30 days."); break;33 case 12:System.out.println("Dec. " + year + " has 31 days.");34 }35 else36 switch(month) {37 case 1:System.out.println("Jan. " + year + " has 31 days."); break;38 case 2:System.out.println("Feb. " + year + " has 28 days."); break;39 case 3:System.out.println("Mar. " + year + " has 31 days."); break;40 case 4:System.out.println("Apr. " + year + " has 30 days."); break;41 case 5:System.out.println("May. " + year + " has 31 days."); break;42 case 6:System.out.println("Jun. " + year + " has 30 days."); break;43 case 7:System.out.println("Jul. " + year + " has 31 days."); break;44 case 8:System.out.println("Aug. " + year + " has 31 days."); break;45 case 9:System.out.println("Sep. " + year + " has 30 days."); break;46 case 10:System.out.println("Oct. " + year + " has 31 days."); break;47 case 11:System.out.println("Nov. " + year + " has 30 days."); break;48 case 12:System.out.println("Dec. " + year + " has 31 days.");49 }50 input.close(); 51 }52 53 }
练习题,关键词:彩票
1 import java.util.Scanner; 2 public class caipiao { 3 public static void main(String[] args) { 4 int cp = (int)(Math.random() * 100);//获取一个两位数的数字作为彩票号码 5 6 Scanner input = new Scanner(System.in); 7 System.out.println("输入你猜测的彩票号码:"); 8 int guess = input.nextInt(); 9 10 int cp1 = cp / 10;11 int cp2 = cp % 10;12 13 int guess1 = guess / 10;14 int guess2 = guess % 10;15 16 System.out.println("彩票号码是:" + cp);17 18 if (guess == cp)19 System.out.println("恭喜你猜对了,你将获得100元!");20 else if (guess1 == cp2 && guess2 == cp2)21 System.out.println("数字对了,顺序不对,你将获得50元!");22 else if (guess1 == cp1 || guess1 == cp2 || guess2 == cp1 || guess2 == cp2)23 System.out.println("猜对了一个数字,你将获得30元!");24 else25 System.out.println("很遗憾,你没有猜对!");26 input.close();27 28 }29 30 }
赞 (0)