import java.lang.NumberFormatException; import java.util.Scanner; public class Main { private static final Scanner scanner = new Scanner(System.in); private static String getRoubleWordWithCorrectEnding(int number) { if (number % 100 > 9 && number % 100 < 20) { return "ÑÑблей"; } switch (number % 10) { case 1: return "ÑÑблÑ"; case 2: case 3: case 4: return "ÑÑблÑ"; default: return "ÑÑблей"; } } public static void main(String[] args) { System.out.println("Ðа ÑколÑÐºÐ¸Ñ Ñеловек Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ð¾ ÑазделиÑÑ ÑÑеÑ?"); String amountOfUsersAsString; int amountOfUsers; while (true) { amountOfUsersAsString = scanner.nextLine(); try { amountOfUsers = Integer.parseInt(amountOfUsersAsString); if (amountOfUsers > 1) { break; } System.out.println("Ðолжно бÑÑÑ ÐºÐ°Ðº минимÑм два Ñеловека, ÑÑÐ¾Ð±Ñ ÑазделиÑÑ ÑÑеÑ!\nÐовÑоÑиÑе ввод еÑе Ñаз!"); } catch (NumberFormatException exception) { System.out.println("Ðведен недопÑÑÑимÑй паÑамеÑÑ Ð² каÑеÑÑве колиÑеÑÑва Ñеловек! ÐжидалоÑÑ Ñелое ÑиÑло.\nÐовÑоÑиÑе ввод еÑе Ñаз!"); } } ProductCalculator calculator = new ProductCalculator(); double productPrice; String productPriceAsString; String productName; System.out.println("ÐведиÑе ÑÐ¾Ð²Ð°Ñ Ð¸ его ÑÑоимоÑÑÑ ÑеÑез пÑобел:"); while (!(productName = scanner.next()).equalsIgnoreCase("завеÑÑиÑÑ")) { productPriceAsString = scanner.nextLine(); try { productPrice = Double.parseDouble(productPriceAsString); if (productPrice < 0) { System.out.println("У ÑоваÑа не Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð¾ÑÑиÑаÑелÑÐ½Ð°Ñ Ñена!\nÐ¢Ð¾Ð²Ð°Ñ Ð½Ðµ добавлен. ÐовÑоÑиÑе ввод."); continue; } calculator.addProduct(productName, productPrice); System.out.println("Ð¢Ð¾Ð²Ð°Ñ Ð±Ñл ÑÑпеÑно добавлен! ХоÑиÑе добавиÑÑ ÐµÑе?\nÐÑли да, Ñо введиÑе название ÑоваÑа и ÑенÑ, инаÑе напиÑиÑе Ñлово \"завеÑÑиÑÑ\":"); } catch (NumberFormatException exception) { System.out.println("Ðе Ñказана допÑÑÑÐ¸Ð¼Ð°Ñ Ñена ÑоваÑа! ÐжидалоÑÑ Ð²ÐµÑеÑÑвенное ÑиÑло.\nÐ¢Ð¾Ð²Ð°Ñ Ð½Ðµ бÑл добавлен! ÐовÑоÑиÑе коÑÑекÑнÑй ввод заново."); } } System.out.println("ÐобавленнÑе ÑоваÑÑ:"); for (Product product : calculator.getProductsList()) { System.out.println(product.getProductName()); } double sumForEachToPay = calculator.getSumOfProducts() / amountOfUsers; System.out.printf("СÑмма, коÑоÑÑÑ Ð´Ð¾Ð»Ð¶ÐµÐ½ заплаÑиÑÑ ÐºÐ°Ð¶Ð´Ñй: %.2f %s%n", sumForEachToPay, getRoubleWordWithCorrectEnding((int) sumForEachToPay)); } }