单位用现金发放工资,计算各种面值的最佳张数

该文探讨了在不找零的情况下,如何通过不同面值(1, 5, 10, 20, 50, 100)的现金发放工资,重点在于寻找使用20、50、100面值的最优策略。" 95865554,8006256,解决Tomcat与MySQL交互时的乱码问题,"['Tomcat配置', 'MySQL配置', '字符编码', '数据库交互', '乱码修复']
摘要由CSDN通过智能技术生成

题目:某单位用现金发放工资,编写程序计算各种面值的最佳张数,

  • 以保证发给职工工资时不需找零。
  • 职工工资与各种面值的张数均要求用数组描述。
    需要的面值有1、5、10、20、50、100
    这里没有明确的说明尽可能少的用钱的张数,所以面值为10的可以当20、50、100用,为了更能体现20、50、100面值的价值,以下中使用20、50、100面值。
public class Demo16 {

	public static void main(String[] args) {
		
		//定义职工工资的数组(假设给6个人发工资,工资数是3位数)
		int [] salary = {543,760,857,329,674,875};
		
		//定义和,记录每一个面值需要的总数
		int sum1 = 0;
		int sum2 = 0;
		int sum3 = 0;
		int sum4 = 0;
		int sum5 = 0;
		int sum6 = 0;
		
		
		//定义面值的数组
		int [] money1 = new int[20];
		int [] money5 = new int[20];
		int [] money10 = new int[20];
		int [] money20 = new int[20];
		int [] money50 = new int[20];
		int [] money100 = new int[40];
		
		//计算每个人工资的个位数,放入面值为1和5的数组中
		for (int i = 0; i < salary.length; i++) {
			 int ge = salary[i]%10;
			 //System.out.println(ge);
			 if(ge==5
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值