Advertisement

第三章第七题(金融应用:整钱兑零)(Financial application: monetary units)

阅读量:

3.7(金融应用:整钱兑零)修改程序清单2-10,使之只显示非零的币值单位,用单词的单数形式显示一个单位,例如1dollar and 1 penny(1美元和1美分);用单词的复数形式显示多于一个单位的值,例如2dollars and 3 pennies(2美元和3美分)。

3.7(Financial application: monetary units) Modify Listing 2.10, ComputeChange.java, to display the nonzero denominations only, using singular words for single units such as 1 dollar and 1 penny, and plural words for more than one unit such as 2 dollars and 3 pennies.

下面是参考答案代码:

复制代码
    import java.util.*;
    
    public class MonetaryUnitsQuestion7 {
    	public static void main(String[] args) {
    		Scanner input = new Scanner(System.in);
    
    		// Receive the amount
    		System.out.print("Enter an amount in double, for example 11.56: ");
    		double amount = input.nextDouble();
     
    		int remainingAmount = (int)(amount * 100);
    		
    		// Find the number of one dollars
    		int numberOfOneDollars = remainingAmount / 100;
    		remainingAmount = remainingAmount % 100;
    
    		// Find the number of quarters in the remaining amount
    		int numberOfQuarters = remainingAmount / 25;
    		remainingAmount = remainingAmount % 25;
    		 
    		// Find the number of dimes in the remaining amount
    		int numberOfDimes = remainingAmount / 10;
    		remainingAmount = remainingAmount % 10;
    		 
    		// Find the number of nickels in the remaining amount
    		int numberOfNickels = remainingAmount / 5;
    		remainingAmount = remainingAmount % 5;
    	
    		// Find the number of pennies in the remaining amount
    		int numberOfPennies = remainingAmount;
    		
    
    		// Display results
    		System.out.println("Your amount " + amount + " consists of");
    		
    		if(numberOfOneDollars > 0)
    		{
    			if(numberOfOneDollars == 1)
    				System.out.print(numberOfOneDollars + " dollar");
    			else
    				System.out.print(numberOfOneDollars + " dollars");
    		}
    		
    		if(numberOfQuarters > 0)
    		{
    			if(numberOfQuarters == 1)
    				System.out.print(" and " + numberOfQuarters + " quarter");
    			else
    				System.out.print(" and " + numberOfQuarters + " quarters");
    		}
    		
    		if(numberOfDimes > 0)
    		{
    			if(numberOfDimes == 1)
    				System.out.print(" and " + numberOfDimes + " dime");
    			else
    				System.out.print(" and " + numberOfDimes + " dimes");
    		}
    		
    		if(numberOfNickels > 0)
    		{
    			if(numberOfNickels == 1)
    				System.out.print(" and " + numberOfNickels + " dime");
    			else
    				System.out.print(" and " + numberOfNickels + " dimes");
    		}
    		
    		if(numberOfPennies > 0)
    		{
    			if(numberOfPennies == 1)
    				System.out.print(" and " + numberOfPennies + " penny");
    			else
    				System.out.print(" and " + numberOfPennies + " pennies");
    		}
    		
    		input.close();
    	}
    }

运行效果:
在这里插入图片描述

注:编写程序要养成良好习惯
如:1.文件名要用英文,具体一点
2.注释要英文
3.变量命名要具体,不要抽象(如:a,b,c等等),形式要驼峰化
4.整体书写风格要统一(不要这里是驼峰,那里是下划线,这里的逻辑段落空三行,那里相同的逻辑段落空5行等等)

全部评论 (0)

还没有任何评论哟~