這可能是容易一些,但作爲我學習我有點困惑在這裏,你會看到:循環定位和乘以
int mult[]={1,2,3,4,5,6,7,8,9,10};
changeA.get(changeA.size()-1);
for (int i = 0; i < mult.length; i++) {
int fullChange=((changeA.size()-1)*mult[i]);
System.out.println("changeA: "+ (changeA.size()-1) +".");
System.out.println("fullChange: "+fullChange);}
這是我一直在做的代碼的一部分,我在這裏的問題是在我的ArrayList。我想要做的是:
抓住從列表中的最後一個項目,我在這裏做的:
INT fullChange =((changeA.size() - 1)* MULT [1]);
然後由上部陣列其中我也做在同一行相乘。
打印(我會抓住輸出做一些其他的東西,一路上但我有解決這個問題的問題,我無法前進)。
問題是當問題明確地說:在硬幣/計費量最少。所以我的代碼必須抓取列表中的最後一項,這是根據填充ArrayList的上層決定確定的。但是我的代碼並沒有這樣做,我的代碼所做的就是獲取列表中的第二個最新項目,並將它乘以給出正確的答案,但不是適量的硬幣。 下面是一個例子
假設您購買可樂5美元,您用10美元的賬單支付。因此,這個變化將是最少數量的硬幣/賬單5美元的賬單。如果他們沒有5美元的賬單,他們會給你5美元1美元的賬單。等等等等。
下面是一個輸出: Code output
我也必須說,最後兩行上的代碼是用於測試和保證我的觀點。在此先感謝
編輯: 這是上面的代碼後,會發生什麼:
if (fullChange==change) {
System.out.println("El cambio es: "+fullChange+" en monedas de: "+changeA.get(changeA.size()-1)+" con un total de: "+mult[i]+" monedas");
break;
}
所以MULT [I],而不是給我1它給了我5(使用上面的例子)
難道我理解你的問題的權利: 1.你是問量例如72歐元。 2.您支付80 3.您找回8,但在硬幣的量最少? 你必須編寫執行第3步的代碼嗎? – rinormaloku
如何抓住數組中的最新值,並以正確的方式在其他陣列乘它,因爲我的代碼不獲取最新的,但第二個最新 – sarquamon
@rinormaloku肯定的,但如果你看到的畫面一點也沒有」牛逼給我硬幣的量最少,但第二次量最少 – sarquamon