import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int peopleCount = -1; while(peopleCount <= 1) { print("Ðа ÑколÑÐºÐ¸Ñ Ñеловек Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ð¾ ÑазделиÑÑ ÑÑÑÑ"); peopleCount = scanner.nextInt(); if (peopleCount <= 1) { print("Ðол-во Ñеловек должно бÑÑÑ Ð±Ð¾Ð»ÑÑе 1"); } } Calc calc = new Calc(peopleCount); while(true) { print("ÐведиÑе инÑоÑмаÑÐ¸Ñ Ð¾ ÑоваÑе"); print("Ðазвание:"); String inputName = scanner.next(); if (inputName.trim().equalsIgnoreCase("завеÑÑиÑÑ")) { break; } print("Цена:"); double inputPrice; try { inputPrice = scanner.nextDouble(); } catch (Exception e) { print("Цена должна бÑÑÑ ÑиÑлом, попÑобÑйÑе Ñнова."); continue; } if (inputPrice <= 0) { print("Цена не Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð¼ÐµÐ½ÑÑе или Ñавной нÑлÑ, попÑобÑйÑе Ñнова."); continue; } Product product = new Product(inputName, inputPrice); calc.add(product); double total = calc.getTotalPrice(); String end = getRubEnd(total); print(String.format("Ð¢Ð¾Ð²Ð°Ñ '%s' ÑÑпеÑно добавлен! ÐбÑÐ°Ñ ÑÑоимоÑÑÑ: %.2f %s", product.name, total, end)); } print(String.format("ÐобавленнÑе ÑоваÑÑ: %s", calc.getAllProductNames())); print(String.format( "ÐаждÑй должен по: %.2f %s", calc.getPricePerPerson(), getRubEnd(calc.getPricePerPerson()) )); } public static void print(String text) { System.out.println(text); } public static String getRubEnd(double d) { int num = (int) Math.floor(d); int preLastDigit = num % 100 / 10; if (preLastDigit == 1) { return "ÑÑблей"; } switch (num % 10) { case 1: return "ÑÑблÑ"; case 2: case 3: case 4: return "ÑÑблÑ"; default: return "ÑÑблей"; } } }