将用户输入的美元转换为100美元的账单和1000美元的账单

时间:2014-02-13 17:51:05

标签: c# visual-studio-2010 valueconverter

我正在做一个学校项目,我需要知道如何将用户输入的美元转换成100美元的账单和1000美元的账单和剩余的美元。 让我们说你在商店,你想要尽可能高的账单支付你的物品,所以假设你必须支付9853美元。我如何打印多少10美元,5美元钞票,10美元钞票,50美元钞票,100美元钞票和1000美元钞票?

尽可能支付高额费用。没有变化。

$ 9853将是: 9x $ 1000账单,8x $ 100账单,1x $ 50账单和3x $ 1账单。

如果有人对此有答案,请回答,任何答案都非常有帮助。 感谢。

3 个答案:

答案 0 :(得分:5)

  $ 9853将是:9x $ 1000票据,8x $ 100票据,1x $ 50票据和3x $ 1票据。

你是怎么做到这一点的?让我们考虑一下:

你可能从一千美元的钞票开始。你想尽可能多地使用。那是多少?将$ 9853除以1000,然后丢掉其余部分。

int thousands = amount / 1000;

我们还需要支付多少钱?我们刚刚完成的剩余部分,即853美元。

amount %= 1000;

现在,我们希望尽可能多地使用数百个。多少? 8,因为$ 853/100是8(丢掉其余的)。

int hundreds = amount / 100;

现在还剩下多少钱?其余的:

amount %= 100;

这是否向您提出算法?你认为你可以从这里填写其余的代码吗?

答案 1 :(得分:0)

您可以使用余数(% - 模数)

让我们考虑金额为9853美元

`第一:
9853/1000给出9(这意味着9 - 1000美元的钞票)

9853%1000给出853

853/100给出8(这意味着8 - 100美元的钞票)

853%100给出53

53/10给出5(如果答案是5或大于5,请检查答案然后使用50美元的账单和剩余的10美元账单。如果答案是30则那么你得到3 - 10美元的账单,如果是6则那么50美元的账单和1 - 10美元的账单)

53%10给3(这里再次检查你的答案,如果大于5使用5美元的账单,然后是左边的1美元账单)

希望这可能会有所帮助

答案 2 :(得分:0)

试试这个。这很简单.....

 public void CountDollers(int number) {
            int[] values = new int[] { 1000, 100, 50,1 }; // declare here your counter serise            
            int i = 0 ,rem = 0;
            do
            {
                rem = number / values[i];
                Console.WriteLine("Number of "+values[i]+"$ "+ rem);
                number = number % values[i];                             
                i++;
            } while (number > values[values.Length-1]-1);            
        }

用法:

CountDollers(9853);