import java.util.Locale; import java.util.Scanner; public class Main { public static void main(String[] args) { final String MSG_INPUT_GOOD = "ÐведиÑе название ÑоваÑа:"; final String MSG_GOODS_ADDED = "Ð¢Ð¾Ð²Ð°Ñ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½."; final String MSG_REQUEST_CONTINUE = "ÐÑ Ñ Ð¾ÑиÑе добавиÑÑ ÐµÑе ÑоваÑ? (введиÑе лÑбое Ñлово ÑÑÐ¾Ð±Ñ Ð¿ÑодолжÑÑ Ð¸Ð»Ð¸ введиÑе 'ÐавеÑÑиÑÑ' ÑÑÐ¾Ð±Ñ Ð·Ð°ÐºÐ¾Ð½ÑиÑÑ."; final String COMMAND_FINISH = "ÐавеÑÑиÑÑ"; int payersCount = getPayersCount(); MyBuscket myBuscket = new MyBuscket(payersCount); Scanner scanner = new Scanner(System.in); while (true) { System.out.println(MSG_INPUT_GOOD); String itemName = scanner.next(); myBuscket.addItem(itemName, getItemPrice()); System.out.println(MSG_GOODS_ADDED); System.out.println(MSG_REQUEST_CONTINUE); if (scanner.next().equalsIgnoreCase(COMMAND_FINISH)) { break; } } myBuscket.printItems(); myBuscket.countPayments(); } static int getPayersCount() { final String MSG_INPUT_COUNT_PAYERS = "Ðа ÑколÑко Ñеловек ÑазделиÑÑ ÑÑеÑ? (введиÑе Ñелое ÑиÑло болÑÑе 1)"; final String ERR_ONE_PAYER = "ÐÑибка! ÐÐµÑ ÑмÑÑла делиÑÑ ÑÑÐµÑ Ð½Ð° одного Ñеловека."; final String ERR_NO_PAYERS = "ÐÑибка! ÐÑ Ð²Ð²ÐµÐ»Ð¸ менÑÑе одного Ñеловека."; final String ERR_INCORRECT_INPUT = "ÐÑибка! ТÑебÑеÑÑÑ Ð²Ð²ÐµÑÑи Ñелое ÑиÑло."; Scanner scanner = new Scanner(System.in); while (true) { try { System.out.println(MSG_INPUT_COUNT_PAYERS); int payersCount = scanner.nextInt(); if (payersCount > 1) { return payersCount; } else if (payersCount == 1) { System.out.println(ERR_ONE_PAYER); } else { System.out.println(ERR_NO_PAYERS); } } catch (Exception e) { scanner.next(); System.out.println(ERR_INCORRECT_INPUT); } } } static double getItemPrice() { final String MSG_INPUT_PRICE = "ÐведиÑе ÑÑоимоÑÑÑ ÑоваÑа:"; final String ERR_NEGATIVE_PRICE = "ÐÑибка! СÑоимоÑÑÑ Ð´Ð¾Ð»Ð¶Ð½Ð° бÑÑÑ Ð±Ð¾Ð»ÑÑе нÑлÑ."; final String ERR_INCORRECT_INPUT = "ÐÑибка! ТÑебÑеÑÑÑ Ð²Ð²ÐµÑÑи ÑиÑло."; Scanner scanner = new Scanner(System.in).useLocale(Locale.US); while (true) { try { System.out.println(MSG_INPUT_PRICE); double itemPrice = scanner.nextDouble(); if (itemPrice > 0) { return itemPrice; } else { System.out.println(ERR_NEGATIVE_PRICE); } } catch (Exception e) { scanner.next(); System.out.println(ERR_INCORRECT_INPUT); } } } }