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)

相关推荐