//exercise 4.1 package fourthchapterexercise1; import java.util.Scanner; public class first { public static void main(String[] args) { // TODO Auto-generated method stub int integer=0,sum=0,positive=0,negative=0; Scanner in=new Scanner(System.in); System.out.println("Enter an int value,the program exits if the input is 0:"); while(true){ integer=in.nextInt(); if(integer==0) break; else if(integer>0) positive++; else negative++; sum=sum+integer; } double average=(double)sum/(positive+negative); System.out.println("The number of positives is "+positive); System.out.println("The number of negatives is "+negative); System.out.println("The total is "+sum); System.out.println("The average is "+average); } } //exercise 4.2 package fourthchapterexercise1; import java.util.Scanner; public class second { public static void main(String[] args) { // TODO Auto-generated method stub final int NUMBER_OF_QUESTIONS=10; int correctCount=0; int count=0; long startTime=System.currentTimeMillis(); String output=""; Scanner in=new Scanner(System.in); //The main program while (count<NUMBER_OF_QUESTIONS){ //0-15 random number int number1=(int)(Math.random()*15+1); int number2=(int)(Math.random()*15+1); //input expression System.out.print("What is "+number1+" + "+number2+"? "); //get answer int answer=in.nextInt(); //judge answer if(number1+number2==answer){ System.out.println("You are correct!"); correctCount++; } else System.out.println("Your answer is wrong. "+number1+" + "+number2+" sh" + "ould be "+(number1+number2)); //count count++; output +=" "+number1+" + "+number2+"="+answer+((number1+number2==answer)?" cor" + "rect":" wrong"); } long endTime=System.currentTimeMillis(); long testTime=endTime-startTime; System.out.println("Correct count is "+correctCount+" Test time is "+testTime/1000+" seco" + "nds "+output); } } //exercise 4.3 package fourthchapterexercise1; public class third { public static void main(String[] args) { // TODO Auto-generated method stub System.out.println("千克 英镑"); for(int i=0;i<100;i++){ System.out.println(2*i+1+" "+(2*i+1)*2.2); } } } //exercise 4.4 package fourthchapterexercise1; public class fourth { public static void main(String[] args) { // TODO Auto-generated method stub System.out.println("英里 千米"); for(int i=1;i<=10;i++){ System.out.println(i+" "+i*1.609); } } } //exercise 4.5 package fourthchapterexercise1; public class fifth { public static void main(String[] args) { // TODO Auto-generated method stub System.out.println("千克 镑 磅 千克"); int pound=20; for(int i=0;i<100;i++){ System.out.println(2*i+1+" "+(int)((2*i+1)*2.2*100)/100.0+" " + " "+pound+" "+(int)(pound/2.2*100)/100.0); pound+=5; } } } //exercise 4.6 package fourthchapterexercise1; public class sixth { public static void main(String[] args) { // TODO Auto-generated method stub System.out.println("英里 千米 英里 千米"); int pound=20; for(int i=0;i<10;i++){ System.out.println(i+" "+(int)(i*1.609*1000)/1000.0+" " + " "+pound+" "+(int)(pound/1.609*1000)/1000.0); pound+=5; } } } //exercise 4.7 package fourthchapterexercise1; public class seventh { public static void main(String[] args) { // TODO Auto-generated method stub double tuition=10000; for(int i=0;i<10;i++){ tuition *= (1+0.05); } System.out.println("after ten year,tuition is "+tuition); double sum=0; for(int i=0;i<4;i++){ sum += tuition; tuition *= (1+0.05); } System.out.println("tuition of four year is "+sum); } } //exercise 4.8 package fourthchapterexercise1; import java.util.Scanner; public class eighth { public static void main(String[] args) { // TODO Auto-generated method stub Scanner in=new Scanner(System.in); System.out.print("please input number of students is "); int number =in.nextInt(); String maxname=null; int max=0; for(int i=0;i<number;i++){ System.out.print("please input student's name and score:"); String name =in.next(); int score=in.nextInt(); if(score>max) maxname=name; } System.out.print("The most high score students name is :"+maxname); } } //exercise 4.9 package fourthchapterexercise1; import java.util.Scanner; public class ninth { public static void main(String[] args) { // TODO Auto-generated method stub Scanner in=new Scanner(System.in); System.out.print("please input number of students is: "); int number =in.nextInt(); String maxname=null,secondname=null; int max=0; int secondhigh=0; for(int i=0;i<number;i++){ System.out.print("please input student's name and score:"); String name =in.next(); int score=in.nextInt(); if(score>max){ maxname=name; max=score; } if(score>secondhigh&&score!=max){ secondname=name; secondhigh=score; } } System.out.println("The most high score students name is :"+maxname); System.out.println("The second high score students name is :"+secondname); } } //exercise 4.10 package fourthchapterexercise1; import java.util.Scanner; public class tenth { public static void main(String[] args) { // TODO Auto-generated method stub int count=0; for (int i=100;i<=1000;i++){ if(i%5==0&&i%6==0){ System.out.print(" "+i); count++; if(count%10==0) System.out.println(); } } } } //exercise 4.11 package fourthchapterexercise2; public class first { public static void main(String[] args) { // TODO Auto-generated method stub int count=0; for (int i=100;i<=200;i++){ if(i%5==0^i%6==0){ System.out.print(" "+i); count++; if(count%10==0) System.out.println(); } } } } //exercise 4.12 package fourthchapterexercise2; public class second { public static void main(String[] args) { // TODO Auto-generated method stub int n=1; while(true){ if(n*n>12000){ System.out.println("The smallest integer is "+n); break; } n++; } } } //exercise 4.13 package fourthchapterexercise2; public class third { public static void main(String[] args) { // TODO Auto-generated method stub int n=1; while(true){ if(n*n*n>12000){ System.out.println("The smallest integer is "+(n-1)); break; } n++; } } } //exercise 4.14 package fourthchapterexercise2; public class fourth { public static void main(String[] args) { // TODO Auto-generated method stub int startascii=33; int count=0; while(startascii<=126){ char output=(char)startascii; count++; System.out.print(" "+output); if(count%10==0) System.out.println(); startascii++; } } } //exercise 4.15 package fourthchapterexercise2; import java.util.Scanner; public class fifth { public static void main(String[] args) { // TODO Auto-generated method stub Scanner in=new Scanner(System.in); System.out.print("please input two integer n1 and n2 :"); int n1=in.nextInt(); int n2=in.nextInt(); int min; if(n1>n2) min=n2; else min=n1; while(true){ if(n1%min==0&&n2%min==0){ System.out.println("The greatest common divisor is "+min); break; } min--; } } } //exercise 4.16 package fourthchapterexercise2; import java.util.Scanner; public class sixth { public static void main(String[] args) { // TODO Auto-generated method stub Scanner in=new Scanner(System.in); System.out.print("please input integer:"); int integer=in.nextInt(); System.out.print("The factor is :"); while(true){ for(int i=2;i<=integer;i++){ if(integer%i==0){ System.out.print(i); integer=integer/i; if(integer==1) System.out.print("."); else System.out.print(","); break; } } if(integer==1) break; } } } //exercise 4.17 package fourthchapterexercise2; import java.util.Scanner; public class seventh { public static void main(String[] args) { // TODO Auto-generated method stub Scanner in=new Scanner(System.in); System.out.print("please input integer (0-15):"); int input =in.nextInt(); for(int i=1;i<=input;i++){ for(int j=1;j<=input-i;j++){ if(j==input-i){ System.out.print(" "); break; } System.out.print(" "); } for(int k=i;k>0;k--){ if(k==1){ System.out.print(k); break; } System.out.print(k+" "); } for(int j=2;j<=i;j++){ System.out.print(" "+j); } System.out.println(); } } } //exercise 4.18 package fourthchapterexercise2; public class eighth { public static void main(String[] args) { // TODO Auto-generated method stub //pattern 1 for(int i=1;i<=6;i++){ for(int j=1;j<=i;j++){ System.out.print(j+" "); } System.out.println(); } System.out.println(); System.out.println(); //pattern 2 for(int i=1;i<=6;i++){ for(int j=1;j<=7-i;j++){ System.out.print(j+" "); } System.out.println(); } System.out.println(); System.out.println(); //pattern 3 for(int i=1;i<=6;i++){ for(int j=1;j<=6-i;j++){ System.out.print(" "); } for(int k=i;k>=1;k--){ System.out.print(k+" "); } System.out.println(); } System.out.println(); System.out.println(); //pattern 4 for(int i=1;i<=6;i++){ for(int k=2;k<=i;k++){ System.out.print(" "); } for(int j=1;j<=7-i;j++){ System.out.print(j+" "); } System.out.println(); } } } //exercise 4.19 package fourthchapterexercise2; public class ninth { public static void main(String[] args) { // TODO Auto-generated method stub int integer; for(int i=1;i<=8;i++){ for(int j=1;j<=8-i;j++){ System.out.print(" "); } for(int j=1;j<=i;j++){ integer=(int)Math.pow(2, j-1); System.out.printf("%4d",integer); } for(int k=i-1;k>=1;k--){ integer=(int)Math.pow(2, k-1); System.out.printf("%4d",integer); } System.out.println(); } } } //exercise 4-20 package fourthchapterexercise3; public class first { public static void main(String[] args) { // TODO Auto-generated method stub System.out.println("prime of 2 to 1000 is:"); int count=0; for(int i=2;i<=1000;i++){ boolean isprime=true; for(int j=2;j<=i/2;j++){ if(i%j==0){ isprime=false; break; } } if(isprime){ count++; System.out.printf("%4d",i); } if(count%8==0&&isprime) System.out.println(); } } } //exercise 4.21 package fourthchapterexercise3; import java.util.Scanner; //This function is not a rigorous //The corrected public class second { public static void main(String[] args) { // TODO Auto-generated method stub Scanner in=new Scanner(System.in); System.out.print("please input loan amount:"); int loanamount=in.nextInt(); System.out.print("Number of years:"); int numberofyears=in.nextInt(); double interestrate=0.05; int count; System.out.println("Inerest Rate Monthly payment Total Payment"); //computational for(count=0;count<=24;count++){ double monthlyinterestrate=interestrate/12; //The monthly payment double monthlypayment=(loanamount*monthlyinterestrate)/ (1-1/Math.pow(1+monthlyinterestrate,numberofyears*12)); //total payment double totalpayment=monthlypayment*12*numberofyears; System.out.println((int)(interestrate*100000)/1000.0+"% "+ (int)(monthlypayment*100)/100.0+"0 "+(int)(totalpayment*100)/100.0); interestrate +=0.00125; } } } //exercise 4.22 package fourthchapterexercise3; import java.util.Scanner; public class third { public static void main(String[] args) { // TODO Auto-generated method stub Scanner in=new Scanner(System.in); System.out.print("Loan Amount:"); int loanamount=in.nextInt(); System.out.print("Number of Years:"); int numberofyears=in.nextInt(); System.out.print("Annual Interest rate:"); double annualinterestrate=in.nextDouble(); double monthlyinterestrate=annualinterestrate/12; double monthlypayment=(loanamount*monthlyinterestrate)/ (1-1/Math.pow(1+monthlyinterestrate,numberofyears*12)); double totalpayment=monthlypayment*12*numberofyears; System.out.println(" Monthly Payment:"+monthlypayment); System.out.println("Total Payment"+totalpayment); System.out.println(); double interest=0,principal; double balance=loanamount; System.out.println("Payment Interest Principal Balance"); for(int i=1;i<=numberofyears*12;i++){ interest=monthlyinterestrate*balance; principal=monthlypayment-interest; balance=balance-principal; System.out.println(i+" "+interest+" "+principal+" "+balance); } } } //exercise 4.23 package fourthchapterexercise3; public class fourth { public static void main(String[] args) { // TODO Auto-generated method stub double sum=0; for(int i=1;i<=5000;i++){ sum += 1.0/i; } System.out.println("This is from left to right:"+sum); sum=0; for(int i=5000;i>=1;i--){ sum += 1.0/i; } System.out.println("This is from right to left:"+sum); } } //exercise 4.24 package fourthchapterexercise3; public class fifth { public static void main(String[] args) { // TODO Auto-generated method stub double sum=0; double molecular=1; double denominator=3; for(int i=1;i<=49;i++){ sum += molecular/denominator; molecular += 2; denominator += 2; } System.out.println("result is "+sum); } } //exercise 4.25 package fourthchapterexercise3; public class sixth { public static void main(String[] args) { // TODO Auto-generated method stub for(int i=10000;i<=100000;i += 10000){ double pi=0,sum=0; for (int j=0;j<=i;j++){ sum =sum+Math.pow(-1,j)*(1.0/(2*j+1)); } pi=4*sum; System.out.print("when i="+i+",pi="+pi+" "); } } } //exercise 4.26 package fourthchapterexercise3; //The arithmetic is not good enough public class seventh { public static void main(String[] args) { // TODO Auto-generated method stub for(int i=10000;i<=100000;i +=10000){ double sum=1; double generaltype=1; for(int j=1;j<=i;j++){ for(int k=1;k<=j;k++){ generaltype *= 1.0/k; } sum += generaltype; } System.out.println("When i="+i+",e="+sum); } } } //exercise 4.27 package fourthchapterexercise3; public class eighth { public static void main(String[] args) { // TODO Auto-generated method stub int count=0; System.out.println("A leap year all in twenty-first Century is:"); for(int year=2001;year<=2100;year++){ if(year%4==0&&year%100!=0||year%400==0){ System.out.print(year+" "); count++; if(count%10==0) System.out.println(); } } } } //exercise 4.28 package fourthchapterexercise3; import java.util.Scanner; public class ninth { public static void main(String[] args) { // TODO Auto-generated method stub Scanner in=new Scanner(System.in); System.out.print("please input year and days of week:"); int year=in.nextInt(); int january=in.nextInt(); //The calculation of the first day of the month is the day of the week int february=(january+31)%7; int march=(february+28)%7; if(year%4==0&&year%100!=0||year%400==0) march=(february+29)%7; int april=(march+31)%7; int may=(april+30)%7; int june=(may+31)%7; int july=(june+30)%7; int august=(july+31)%7; int september=(august+31)%7; int october=(september+30)%7; int november=(october+31)%7; int december=(november+30)%7; //matching week String week=null; switch(january){ case 0: week="Sunday"; break; case 1: week="Monday"; break; case 2: week="Tuesday"; break; case 3: week="Wednesday"; break; case 4: week="Thursday"; break; case 5: week="Friday"; break; case 6: week="Saterday"; break; default: break; } System.out.println("January 1, "+year+" is "+week); switch(february){ case 0: week="Sunday"; break; case 1: week="Monday"; break; case 2: week="Tuesday"; break; case 3: week="Wednesday"; break; case 4: week="Thursday"; break; case 5: week="Friday"; break; case 6: week="Saterday"; break; default: break; } System.out.println("february 1, "+year+" is "+week); switch(march){ case 0: week="Sunday"; break; case 1: week="Monday"; break; case 2: week="Tuesday"; break; case 3: week="Wednesday"; break; case 4: week="Thursday"; break; case 5: week="Friday"; break; case 6: week="Saterday"; break; default: break; } System.out.println("march 1, "+year+" is "+week); switch(april){ case 0: week="Sunday"; break; case 1: week="Monday"; break; case 2: week="Tuesday"; break; case 3: week="Wednesday"; break; case 4: week="Thursday"; break; case 5: week="Friday"; break; case 6: week="Saterday"; break; default: break; } System.out.println("april 1, "+year+" is "+week); switch(may){ case 0: week="Sunday"; break; case 1: week="Monday"; break; case 2: week="Tuesday"; break; case 3: week="Wednesday"; break; case 4: week="Thursday"; break; case 5: week="Friday"; break; case 6: week="Saterday"; break; default: break; } System.out.println("may 1, "+year+" is "+week); switch(june){ case 0: week="Sunday"; break; case 1: week="Monday"; break; case 2: week="Tuesday"; break; case 3: week="Wednesday"; break; case 4: week="Thursday"; break; case 5: week="Friday"; break; case 6: week="Saterday"; break; default: break; } System.out.println("june 1, "+year+" is "+week); switch(july){ case 0: week="Sunday"; break; case 1: week="Monday"; break; case 2: week="Tuesday"; break; case 3: week="Wednesday"; break; case 4: week="Thursday"; break; case 5: week="Friday"; break; case 6: week="Saterday"; break; default: break; } System.out.println("july 1, "+year+" is "+week); switch(august){ case 0: week="Sunday"; break; case 1: week="Monday"; break; case 2: week="Tuesday"; break; case 3: week="Wednesday"; break; case 4: week="Thursday"; break; case 5: week="Friday"; break; case 6: week="Saterday"; break; default: break; } System.out.println("august 1, "+year+" is "+week); switch(september){ case 0: week="Sunday"; break; case 1: week="Monday"; break; case 2: week="Tuesday"; break; case 3: week="Wednesday"; break; case 4: week="Thursday"; break; case 5: week="Friday"; break; case 6: week="Saterday"; break; default: break; } System.out.println("september 1, "+year+" is "+week); switch(october){ case 0: week="Sunday"; break; case 1: week="Monday"; break; case 2: week="Tuesday"; break; case 3: week="Wednesday"; break; case 4: week="Thursday"; break; case 5: week="Friday"; break; case 6: week="Saterday"; break; default: break; } System.out.println("october 1, "+year+" is "+week); switch(november){ case 0: week="Sunday"; break; case 1: week="Monday"; break; case 2: week="Tuesday"; break; case 3: week="Wednesday"; break; case 4: week="Thursday"; break; case 5: week="Friday"; break; case 6: week="Saterday"; break; default: break; } System.out.println("november 1, "+year+" is "+week); switch(december){ case 0: week="Sunday"; break; case 1: week="Monday"; break; case 2: week="Tuesday"; break; case 3: week="Wednesday"; break; case 4: week="Thursday"; break; case 5: week="Friday"; break; case 6: week="Saterday"; break; default: break; } System.out.println("december 1, "+year+" is "+week); } } //exercise 4.29 package fourthchapterexercise3; import java.util.Scanner; public class tenth { public static void main(String[] args) { // TODO Auto-generated method stub Scanner in=new Scanner(System.in); System.out.print("please input year and days of week:"); int year=in.nextInt(); int january=in.nextInt(); //The calculation of the first day of the month is the day of the week int february=(january+31)%7; int march=(february+28)%7; if(year%4==0&&year%100!=0||year%400==0) march=(february+29)%7; int april=(march+31)%7; int may=(april+30)%7; int june=(may+31)%7; int july=(june+30)%7; int august=(july+31)%7; int september=(august+31)%7; int october=(september+30)%7; int november=(october+31)%7; int december=(november+30)%7; //January System.out.println(" January"+year+" "); System.out.println("----------------------------------------------------"); System.out.println("Sun Mon Tue Wed Thu Fri Sat"); int count=1; for(int i=0;i<january;i++){ System.out.print(" "); } //wrap int temp=january; //A month has 31 days for(count=1;count<=31;count++){ if(temp%7==0){ System.out.println(); temp=0; } System.out.printf("%3d ",count); temp++; } System.out.println(" "); //February System.out.println(" February"+year+" "); System.out.println("----------------------------------------------------"); System.out.println("Sun Mon Tue Wed Thu Fri Sat"); count=1; for(int i=0;i<february;i++){ System.out.print(" "); } //wrap temp=february; //A month has 28 or 29 days int feb=28; if(year%4==0&&year%100!=0||year%400==0) feb=29; for(count=1;count<=feb;count++){ if(temp%7==0){ System.out.println(); temp=0; } System.out.printf("%3d ",count); temp++; } System.out.println(" "); //March System.out.println(" March"+year+" "); System.out.println("----------------------------------------------------"); System.out.println("Sun Mon Tue Wed Thu Fri Sat"); count=1; for(int i=0;i<march;i++){ System.out.print(" "); } //wrap temp=march; //A month has 31 days for(count=1;count<=31;count++){ if(temp%7==0){ System.out.println(); temp=0; } System.out.printf("%3d ",count); temp++; } System.out.println(" "); //April System.out.println(" April"+year+" "); System.out.println("----------------------------------------------------"); System.out.println("Sun Mon Tue Wed Thu Fri Sat"); count=1; for(int i=0;i<april;i++){ System.out.print(" "); } //wrap temp=april; //A month has 30 days for(count=1;count<=30;count++){ if(temp%7==0){ System.out.println(); temp=0; } System.out.printf("%3d ",count); temp++; } System.out.println(" "); //May System.out.println(" May"+year+" "); System.out.println("----------------------------------------------------"); System.out.println("Sun Mon Tue Wed Thu Fri Sat"); count=1; for(int i=0;i<may;i++){ System.out.print(" "); } //wrap temp=may; //A month has 31 days for(count=1;count<=31;count++){ if(temp%7==0){ System.out.println(); temp=0; } System.out.printf("%3d ",count); temp++; } System.out.println(" "); //June System.out.println(" June"+year+" "); System.out.println("----------------------------------------------------"); System.out.println("Sun Mon Tue Wed Thu Fri Sat"); count=1; for(int i=0;i<june;i++){ System.out.print(" "); } //wrap temp=june; //A month has 30 days for(count=1;count<=30;count++){ if(temp%7==0){ System.out.println(); temp=0; } System.out.printf("%3d ",count); temp++; } System.out.println(" "); //July System.out.println(" July"+year+" "); System.out.println("----------------------------------------------------"); System.out.println("Sun Mon Tue Wed Thu Fri Sat"); count=1; for(int i=0;i<july;i++){ System.out.print(" "); } //wrap temp=july; //A month has 31 days for(count=1;count<=31;count++){ if(temp%7==0){ System.out.println(); temp=0; } System.out.printf("%3d ",count); temp++; } System.out.println(" "); //August System.out.println(" August"+year+" "); System.out.println("----------------------------------------------------"); System.out.println("Sun Mon Tue Wed Thu Fri Sat"); count=1; for(int i=0;i<august;i++){ System.out.print(" "); } //wrap temp=august; //A month has 31 days for(count=1;count<=31;count++){ if(temp%7==0){ System.out.println(); temp=0; } System.out.printf("%3d ",count); temp++; } System.out.println(" "); //September System.out.println(" September"+year+" "); System.out.println("----------------------------------------------------"); System.out.println("Sun Mon Tue Wed Thu Fri Sat"); count=1; for(int i=0;i<september;i++){ System.out.print(" "); } //wrap temp=september; //A month has 30 days for(count=1;count<=30;count++){ if(temp%7==0){ System.out.println(); temp=0; } System.out.printf("%3d ",count); temp++; } System.out.println(" "); //October System.out.println(" October"+year+" "); System.out.println("----------------------------------------------------"); System.out.println("Sun Mon Tue Wed Thu Fri Sat"); count=1; for(int i=0;i<october;i++){ System.out.print(" "); } //wrap temp=october; //A month has 31 days for(count=1;count<=31;count++){ if(temp%7==0){ System.out.println(); temp=0; } System.out.printf("%3d ",count); temp++; } System.out.println(" "); //November System.out.println(" November"+year+" "); System.out.println("----------------------------------------------------"); System.out.println("Sun Mon Tue Wed Thu Fri Sat"); count=1; for(int i=0;i<november;i++){ System.out.print(" "); } //wrap temp=november; //A month has 30 days for(count=1;count<=30;count++){ if(temp%7==0){ System.out.println(); temp=0; } System.out.printf("%3d ",count); temp++; } System.out.println(" "); //December System.out.println(" December"+year+" "); System.out.println("----------------------------------------------------"); System.out.println("Sun Mon Tue Wed Thu Fri Sat"); count=1; for(int i=0;i<december;i++){ System.out.print(" "); } //wrap temp=december; //A month has 31 days for(count=1;count<=31;count++){ if(temp%7==0){ System.out.println(); temp=0; } System.out.printf("%3d ",count); temp++; } System.out.println(" "); } } //exercise 4.30 package fourthchapterexercise4; import java.util.Scanner; public class first { public static void main(String[] args) { // TODO Auto-generated method stub Scanner in=new Scanner(System.in); System.out.print("please input money and annual interest rate and number of month:"); double monthlymoney=in.nextDouble(); double yearlyinterestrate=in.nextDouble(); double numberofmonth=in.nextDouble(); double monthlyinterestrate=yearlyinterestrate/12; double sum=0; for(int i=1;i<=numberofmonth;i++){ sum=(monthlymoney+sum)*(1+monthlyinterestrate); } System.out.print(numberofmonth+"months later,the money on account of "+sum); } } //exercise 4.31 package fourthchapterexercise4; import java.util.Scanner; public class second { public static void main(String[] args) { // TODO Auto-generated method stub Scanner in=new Scanner(System.in); System.out.print("Enter the initial deposit amount:"); double sum=in.nextDouble(); System.out.print("Enter annual percentage yiekd:"); double yearlyinterestrate=in.nextDouble(); System.out.print("Enter maturityperiod(number if months):"); double numberofmonth=in.nextDouble(); double monthlyinterestrate=yearlyinterestrate/1200; System.out.println("Month CD Value"); for(int i=1;i<=numberofmonth;i++){ sum=sum*(1+monthlyinterestrate); System.out.printf("%5d",i); System.out.println(" "+sum); } } } //exercise 4.32 package fourthchapterexercise4; import java.util.Scanner; public class third { public static void main(String[] args) { // TODO Auto-generated method stub int lottery=0; //Generate an integer, the number of two integers is different while (true){ lottery=(int)(Math.random()*90+10); int first=lottery/10; int second=lottery%10; if(first!=second) break; } Scanner in=new Scanner(System.in); System.out.print("Enter your lottery pick (two digits):"); int guess =in.nextInt(); //separation lottery digit int lotteryDigit1=lottery/10; int lotteryDigit2=lottery%10; //separation guess digit int guessDigit1=guess/10; int guessDigit2=guess%10; System.out.println("The lottery number is "+lottery); //judge if (guess == lottery) System.out.println("Exact match:you win $10000"); else if(guessDigit2==lotteryDigit1&&guessDigit1==lotteryDigit2) System.out.println("Match all digits: you win $3000"); else if(guessDigit1==lotteryDigit1 ||guessDigit1==lotteryDigit2 ||guessDigit2==lotteryDigit1 ||guessDigit2==lotteryDigit2) System.out.println("Match one digit:you win $ 1000"); else System.out.println("Sorry,no match"); } } //exercise 4.33 package fourthchapterexercise4; public class fourth { public static void main(String[] args) { // TODO Auto-generated method stub System.out.print("Ten thousand the following numbers,perfect number:"); for(int i=1;i<=10000;i++){ int sum=0; for (int j=1;j<i;j++){ if(i%j==0){ sum=sum+j; } } if(sum==i){ System.out.print(i+" "); } } } } //exercise 4.34 package fourthchapterexercise4; import java.util.Scanner; public class fifth { public static void main(String[] args) { // TODO Auto-generated method stub Scanner in=new Scanner(System.in); int computercount=0; int personcount=0; while (true){ System.out.print("scissor(0),rock(1),paper(2):"); int input=in.nextInt(); int computer=(int)(Math.random()*3); if(computer==0&&input==1){ System.out.println("The computer is scissor.You are rock.You win"); personcount++; computercount=0; } else if (computer==0&&input==2){ System.out.println("The computer is scissor.You are paper.You lost."); computercount++; personcount=0; } else if (computer==0&&input==0){ System.out.println("The computer is scissor.You are scissor.It is a draw."); computercount=0; personcount=0; } else if (computer==1&&input==0){ System.out.println("The computer is rock.You are scissor.You lost."); computercount++; personcount=0; } else if (computer==1&&input==1){ System.out.println("The computer is rock.You are rock.It is a draw."); computercount=0; personcount=0; } else if (computer==1&&input==2){ System.out.println("The computer is rock.You are paper.You win."); personcount++; computer=0; } else if (computer==2&&input==0){ System.out.println("The computer is paper.You are scissor.You win."); personcount++; computercount=0; } else if (computer==2&&input==1){ System.out.println("The computer is paper.You are rock.You lost."); computercount++; personcount=0; } else if (computer==2&&input==2){ System.out.println("The computer is paper.You are paper.It is a draw."); computercount=0; personcount=0; } if(computercount==2){ System.out.println("The computer won two times."); break; } if(personcount==2){ System.out.println("You won two times."); break; } } } } //exercise 4.35 package fourthchapterexercise4; public class sixth { public static void main(String[] args) { // TODO Auto-generated method stub double sum=0; for(int i=1;i<=624;i++){ sum += 1/(Math.pow(i, 0.5)+Math.pow(i+1,0.5)); } System.out.print("sum is "+sum); } } //exercise 4.37 package fourthchapterexercise4; import java.util.Scanner; public class seventh { public static void main(String[] args) { // TODO Auto-generated method stub Scanner in=new Scanner(System.in); System.out.print("input a integer(Decimal system):"); int integer=in.nextInt(); int count=0; int temp=integer; String number=""; //求出字符变成二进制后的长度 while (integer!=0 ){ int remainder=integer%2; integer /=2; number =number+(char)(remainder+48); count++; } //转换在数组中 int newcount=count; char a[]=new char[count]; while (temp!=0 ){ int remainder=temp%2; temp /=2; a[count-1]=(char)(remainder+48); count--; } for(int i=0;i<newcount;i++){ System.out.print(a[i]); } System.out.print(" "+number); } } //exercise 4.38 package fourthchapterexercise4; import java.util.Scanner; public class eight { public static void main(String[] args) { // TODO Auto-generated method stub Scanner in=new Scanner(System.in); System.out.print("please input integer(Decimal system):"); int integer=in.nextInt(); String hexadecimal=""; while(integer!=0){ int temp=integer%16; if(temp<=9&&temp>=0) hexadecimal=(char)(temp+'0')+hexadecimal; else hexadecimal=(char)(temp-10+'A')+hexadecimal; integer=integer/16; } System.out.println("The hexadecimal is "+hexadecimal); } } //exercise 4.39 package fourthchapterexercise4; public class ninth { public static void main(String[] args) { // TODO Auto-generated method stub double sum=0; for(int i=0;i<=5000;i++){ sum=5000+i*0.08; if(sum>=30000){ System.out.println("minimum sales is "+(i-1)); System.exit(0); } } for(int i=5000;i<=10000;i++ ){ sum=5000+5000*0.08+i*0.10; if(sum>30000){ System.out.println("minimum sales is "+(i-1)); System.exit(0); } } int i=10000; while (sum<30000){ sum=5000+5000*0.08+10000*0.10+i*0.12; i++; } System.out.println("minimum sales is "+(i-1)); System.exit(0); } } //exercise 4.40 package fourthchapterexercise4; public class tenth { public static void main(String[] args) { // TODO Auto-generated method stub int positive=0; int negative=0; for(int i=1;i<=1000000;i++){ int temp=(int)(Math.random()*2); if(temp==0) positive++; else negative++; } System.out.println("The positive is "+positive); System.out.println("The negative is "+negative); } } //exercise 4.41 package fourthchapterexercise5; import java.util.Scanner; public class first { public static void main(String[] args) { // TODO Auto-generated method stub Scanner in=new Scanner(System.in); System.out.print("Enter numbers: "); int integer=in.nextInt(); int max=0; int count=0; while (integer!=0){ if(max<integer){ max=integer; count=0; } if(max==integer){ count++; } integer=in.nextInt(); } System.out.println("The large number is "+max); System.out.println("The occurrence count of the largest number is "+count); } } //exercise 4.43 package fourthchapterexercise5; import java.util.Scanner; public class second { public static void main(String[] args) { // TODO Auto-generated method stub Scanner in=new Scanner(System.in); System.out.print("Enter the number of second :"); int seconds=in.nextInt(); while(true){ try { //pause for a second Thread.sleep(1000); if((seconds-1)==0){ System.out.println("Stopped"); break; } if((seconds-1)==1){ System.out.println((seconds-1)+" second remaining"); seconds--; continue; } System.out.println((seconds-1)+" seconds remaining"); seconds--; //format } catch (InterruptedException e) { //If abnormal, the output to the console e.printStackTrace(); } } } } //exercise 4.44 package fourthchapterexercise5; import java.util.Scanner; public class third { public static void main(String[] args) { // TODO Auto-generated method stub Scanner in=new Scanner(System.in); int count=0; for(int i=1;i<=1000000;i++){ double x=Math.random()*2-1; double y=Math.random()*2-1; double distance1=Math.pow((x*x+y*y), 0.5); double distance2=Math.pow((x-1)*(x-1)+(y-1)*(y-1),0.5); if(distance1>distance2&&x>0&&y>0) count++; if(x<0) count++; } double chance=count/1000000.0; System.out.println("The chance is "+(int)(chance*10000)/100.0+"%"); } } //exercise 4.45 package fourthchapterexercise5; public class fourth { public static void main(String[] args) { // TODO Auto-generated method stub int count=0; for(int i=1;i<=7;i++){ for(int j=1;j<=7;j++){ if(i!=j){ System.out.println(i+" "+j); count++; } } } System.out.println("The numbers of combination is "+count); } } //exercise 4.46 package fourthchapterexercise5; import java.util.Scanner; public class fifth { public static void main(String[] args) { // TODO Auto-generated method stub Scanner in=new Scanner(System.in); System.out.print("Enter an integer:"); int integer =in.nextInt(); //Judgment is a positive or negative number boolean judge=false; if(integer<0){ integer=-integer; judge=true; } //Convert decimal number to a binary number int count=0; String decimal=""; while(integer!=0){ int temp=integer%2; decimal=(char)(temp+'0')+decimal; integer=integer/2; count++; } for(int i=1;i<=16-count;i++){ decimal='0'+decimal; } //Judgment is a positive or negative number if(judge){ char []decimalarr=decimal.toCharArray(); for(int i=0;i<decimalarr.length;i++){ if(decimalarr[i]=='0') decimalarr[i]='1'; else decimalarr[i]='0'; } for(int i=decimalarr.length-1;i>=0;i--){ if(decimalarr[i]=='1'){ decimalarr[i]='0'; } else{ decimalarr[i]='1'; break; } } System.out.print("The bits are "); for(int i=0;i<decimalarr.length;i++){ System.out.print(decimalarr[i]); } } else System.out.println("The bits are "+decimal); } }