我正在嘗試創建一個Android應用程序來幫助計算拆分賬單,如果假設您在2人以上的聚會中外出就餐。Bill Splitter Calculator Android應用程序邏輯
您應該輸入賬單的小計,輸入派對中的人數,輸入適用的折扣(如果有的話),有7個稅的複選框和10%的服務費(如果沒有)已被納入該法案。最後,您只需點擊應用程序的「計算按鈕」即可計算每個人需要支付的金額。
該方案需要小計金額,當用戶輸入它, 計算額外折扣,如果有任何,採取折扣後的金額, 計算附加7%消費稅的稅收,如果該複選框被選中,或者什麼都不做如果取消選中 ,則計算額外的10%提示(如果選中該複選框,或者未選中則不執行任何操作)。
我不確定我是否執行該程序的邏輯,如果有人可以檢查並提供反饋,也會很感激。應用程序的邏輯應該是:
下面是我寫的代碼:
gst = (CheckBox) findViewById(R.id.cbCheck1);
gst.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if (gst.isChecked()) {
result = result + (0.07 * result);
}
else {
result = result;
}
}
});
tips = (CheckBox) findViewById(R.id.cbCheck2);
tips.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if (tips.isChecked()) {
result = result + (0.1 * result);
}
else {
result = result;
}
}
});
}
//Initialize EditTexts
String amount = enterAmount.getText().toString();
double subtotal = Double.valueOf(amount).doubleValue();
String diners = numberDiners.getText().toString();
int people = Integer.parseInt(diners);
String disc = enterDiscount.getText().toString();
int discount = Integer.parseInt(disc);
double discounted = discount/100;
result = (1 - discounted) * (subtotal/people);
預先感謝您爲您的所有類型的反饋的。
嗯 - 爲什麼硬編碼稅?或任何酬金或服務費用?這些事情各不相同 – jkhouw1
它看起來像結果將繼續增加,如果用戶一直在切換gst複選框 –
有沒有關於我該如何處理這個問題的建議,以便在用戶保持切換複選框時不會繼續增加? 硬編碼的原因是,因爲在我居住的國家,稅收和服務費用是固定的。 :) –