英文名:Introduction to Java Programming and Data Structures, Comprehensive Version, 11th Edition
3.1
import java.util.Scanner;publicclassbook{publicstaticvoidmain(String[] args){
Scanner input =newScanner(System.in);
System.out.print("Enter a, b, c:");double a = input.nextDouble();double b = input.nextDouble();double c = input.nextDouble();double delta = b*b-4*a*c;if(delta<0)
System.out.println("The equation has no real roots");elseif(delta==0)
System.out.println("The equation has one root "+(-1*b/2/a));else{double r1 =(-1*b+Math.pow(delta,0.5))/2/a;double r2 =(-1*b-Math.pow(delta,0.5))/2/a;
System.out.println("The equation has two roots "+r1+" and "+r2);}}}
import java.util.Scanner;publicclassbook{publicstaticvoidmain(String[] args){
Scanner input =newScanner(System.in);
System.out.print("Enter a, b, c, d, e, f:");double a = input.nextDouble();double b = input.nextDouble();double c = input.nextDouble();double d = input.nextDouble();double e = input.nextDouble();double f = input.nextDouble();double jb = a*d-b*c;if(jb==0)
System.out.println("The equation has no solution");else
System.out.println("x is "+(e*d-b*f)/jb+" and y is "+(a*f-e*c)/jb);}}
3.4
publicclassbook{publicstaticvoidmain(String[] args){int month =(int)(Math.random()*12+1);
String[] names={"Feb","Jan","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"};
System.out.println("The number is "+month+", and the month is "+names[month-1]);}}
3.5
import java.util.Scanner;publicclassbook{publicstaticvoidmain(String[] args){
Scanner input =newScanner(System.in);
System.out.print("Enter today's day:");int day = input.nextInt();
System.out.print("Enter the number of days elapsed since today:");int plus = input.nextInt();int result =(day+plus)%7;
String[] days ={"Sun","Mon","Tues","Wed","Thu","Fri","Sat"};
System.out.println("Today is "+days[day]+" and the future day is "+days[result]);}}
import java.util.Scanner;publicclassbook{publicstaticvoidmain(String[] args){int sum =0;
Scanner input =newScanner(System.in);
System.out.print("Enter the first 9 digits of an ISBN as integer: ");int isbnNum = input.nextInt();int old = isbnNum;for(int i=9;i>=1;i--){
sum+=isbnNum%10*i;
isbnNum/=10;}int tail = sum%11;
System.out.printf("The ISBN-10 number is %09d",old);if(tail<10)
System.out.println(tail);else
System.out.println("X");}}
3.10
import java.util.Scanner;publicclassbook{publicstaticvoidmain(String[] args){int number1 =(int)(Math.random()*100);int number2 =(int)(Math.random()*100);
System.out.print("What is "+number1+" + "+number2+"? ");
Scanner input =newScanner(System.in);int answer = input.nextInt();if(number1+number2==answer)
System.out.println("You are correct!");else{
System.out.println("Your answer is wrong.");
System.out.println(number1+" + "+number2+" should be "+(number1+number2));}}}
3.11
import java.util.Scanner;publicclassbook{publicstaticvoidmain(String[] args){
Scanner input =newScanner(System.in);
System.out.print("Enter the month number: ");int month = input.nextInt();
System.out.print("Enter the year number: ");int year = input.nextInt();int[] months={31,28,31,30,31,30,31,31,30,31,30,31};
String[] monthNames={"Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"};boolean isLeapYear =(year%4==0&&year%100!=0)||(year%400==0);if(isLeapYear)
months[1]=29;
System.out.println(monthNames[month-1]+" "+year+" has "+months[month-1]+" days.");}}