计算要使用多少不同的物品
Calculating how many different items to use
用户输入他们需要的水量,我需要计算使用哪瓶水,是10l瓶还是20l瓶。所以如果他们要求67l,脚本会弹出3x20l和1x10l
我尝试了以下两种解决方案
var resinAm = rsize*1.1*2.5
var resTin = '';
if(resinAm<10){
resTin = 1;
} else {
resTin = resinAm/20;
resTin = Math.ceil(resTin);
}
和
var resAm = resinAm;
var resAm10 = (resAm/10)+0.001;
var resAm20 = (resAm/20)*2;
if(resAm10>resAm20){
resTin10 = 1;
resTin20 = Math.floor(resAm/20);
} else {
resTin20 = Math.ceil(resAm/20);
}
我也尝试过使用模,但它总是以额外的20l瓶出来,70.5l出来为5x20l和1x10l
如何修复
查看代码:https://jsfiddle.net/a4k2cyoy/2/
var resAm = 70.5;
var resAm20 = parseInt(resAm / 20);
var resAm10 = 0;
if(resAm % 20 > 10) {
resAm20++;
}
if(resAm % 20 <= 10 && resAm > 0) {
resAm10++;
}
alert(resAm + " will go into " + resAm20 + " x 20 bottles and " + resAm10 + " x 10 bottles");
就这么简单
var value = 67;
var tenLBottles = Math.ceil(value % 20 /10);
var twentyLBottles = (value - value%20)/20
你可以这样做,用你想要的填充瓶子数组
var water = 67;
var bottles = [20, 10, 3]; // bottles in desc order
var currentBottleIndex = 0
while(water > 0 && currentBottleIndex < bottles.length) {
console.log(Math.floor(water / bottles[currentBottleIndex]) + ' bottles of ' + bottles[currentBottleIndex])
water = water % bottles[currentBottleIndex]
currentBottleIndex ++;
}
console.log('rest water', water)
这是一道数学题,简单来说,你可以这样理解:
var bottles=[20,10];
function choose_bottle(water) {
var bottle1_num,bottle2_num;
if(water<=10) {
return "1*"+bottles[1];
}
else if(water>10&&water<=20) {
return "1*"+bottles[0];
}
else {
bottle1_num = Math.floor(water/bottles[0]);
bottle2_num = Math.ceil((water -bottle1_num*bottles[0])/bottles[1]);
return bottle1_num+"*"+bottles[0]+" "+bottle2_num+"*"+bottles[1];
}
}
这应该可以完成工作:
var amount = 67;
var bottle20 = Math.floor(amount / 20);
var bottle10 = Math.ceil((amount - bottle20 * 20) / 10);
相关文章:
- 计算输入中有多少逗号分隔的字符串
- 如何计算一个对象中五个属性中有多少是非null的
- (角度.js)如何通过过滤器计算数组中有多少项目
- 计算一篇文章中有多少节
- 我将如何创建一个javaScript函数来计算选中了多少复选框
- 可以计算使用 AJAX 加载了多少数据
- 计算屏幕上特定位置存在多少层
- 如何在不排序的情况下使用JavaScript计算数组中有多少重复字符串
- 如何计算需要多少行和列
- 计算立方体侧面有多少是可见的
- 我如何计算需要多少位来表示任何负值
- 我如何计算屏幕上可以容纳多少个字符
- 计算在JavaScript中同时按下了多少个键
- Localstorage:使用stringify时,计算key中有多少个值
- 计算有多少个车库有carmake1
- 用Javascript计算一个Div中有多少个UL元素
- JS时间计算-一个日期在两个日期之间发生了多少次
- 计算两次约会之间有多少工作日和周末
- 计算一个数字的倍数是多少
- 如何使用lodash来计算这个容器中有多少个标签对象