用 JavaScript 找出最少钞票数量来计算总金额


假设我们有一个货币体系,其中面值为 1000、500、100、50、20、10、5、2 和 1 个单位。

给定一个特定金额,我们需要编写一个函数来计算总面值中求和等于该金额的最小数量。

例如,如果金额为 512,

The least number of notes that will add up to it will be:
1 unit of 500, 1 unit of 10 and 1 unit of 2.

因此,对于 512,我们的函数应返回 3,即钞票的总数

让我们编写此函数的代码 -

以下为代码 -

const sum = 512;
const countNotes = sum => {
   let count = 0;
   while(sum){
      if(sum >= 1000){
         sum -= 1000;
         count++;
         continue;
      }else if(sum >= 500){
         sum -= 500;
         count++;
         continue;
      }else if(sum >= 100){
         sum -= 100;
         count++;
         continue;
      }else if(sum >= 50){
         sum -= 50;
         count++;
         continue;
      }else if(sum >= 20){
         sum -= 20;
         count++;
         continue;
      }else if(sum >= 10){
         sum -= 10;
         count++;
         continue;
      }else if(sum >= 5){
         sum -= 5;
         count++;
         continue;
      }else if(sum >= 2){
         sum -= 2;
         count++;
         continue;
      }else{
         sum -= 1;
         count++;
         continue;
      }
   };
   return count;
};
console.log(countNotes(sum));

输出

以下是控制台中的输出 -

3

更新时间:14-Sep-2020

686 次浏览

开启您的职业生涯

完成后获得证书

开始
广告