import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class MoneyCalc {
short qtyOfPeople;
double sumOfMoney;
List- listOfItems;
MoneyCalc(short qty) {
qtyOfPeople = qty;
listOfItems = new ArrayList<>();
}
void addItems() {
do {
String name;
double price;
System.out.println("ÐведиÑе название ÑоваÑа â" + (listOfItems.size() + 1) + ":");
Scanner scName = new Scanner(System.in);
name = scName.next();
System.out.println("ÐведиÑе ÑÐµÐ½Ñ ÑоваÑа â" + (listOfItems.size() + 1) + " в ÑоÑмаÑе \"ÑÑбли.копейки\":");
price = inputItemPrice();
listOfItems.add(new Item(name, price));
sumOfMoney += price;
System.out.println("Ð¢Ð¾Ð²Ð°Ñ \"" + name + "\" ÑÑпеÑно добавлен! ТекÑÑÐ°Ñ ÑÑмма: " + printRoubles(sumOfMoney));
} while (!stopAddingItems());
}
boolean stopAddingItems () {
System.out.println("ЧÑÐ¾Ð±Ñ Ð¿ÑодолжиÑÑ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ðµ, введиÑе лÑбÑе ÑимволÑ. Ðли набеÑиÑе \"ÐавеÑÑиÑÑ\", ÑÑÐ¾Ð±Ñ Ð²ÑйÑи");
Scanner sc = new Scanner(System.in);
return (sc.next().equalsIgnoreCase("завеÑÑиÑÑ"));
}
double inputItemPrice() {
while (true) {
Scanner scPrice = new Scanner(System.in);
if (scPrice.hasNextDouble()) {
double price = scPrice.nextDouble();
if (price > 0) {
return price;
}
}
System.out.println("ÐевеÑное знаÑение ÑÐµÐ½Ñ Ð² ÑоÑмаÑе \"ÑÑбли.копейки\". ÐведиÑе еÑе Ñаз: ");
}
}
void printItems() {
System.out.println("ÐобавленнÑе ÑоваÑÑ:");
for (Item it : listOfItems) {
System.out.println(it.itemName + ": " + String.format("%.2f", it.itemPrice));
}
System.out.println("ÐбÑÐ°Ñ ÑÑмма: " + printRoubles(sumOfMoney));
}
void printDividedSum() {
System.out.println("ÐаждÑй из " + qtyOfPeople + " Ñеловек должен заплаÑиÑÑ " + printRoubles(sumOfMoney / qtyOfPeople));
}
String printRoubles(double rub) {
String ending;
int r = ( (int) Math.floor(rub) ) % 100;
if (r >= 11 && r <= 14) ending = " ÑÑблей";
else {
switch (r % 10) {
case 1:
ending = " ÑÑблÑ";
break;
case 2:
case 3:
case 4:
ending = " ÑÑблÑ";
break;
default:
ending = " ÑÑблей";
}
}
return String.format("%.2f", rub) + ending;
}
}