public class Calculator { static String listProduct = ""; double priceProduct; static double sumPriceProduct = 0.00; static int payer; //колиÑеÑÑво Ñеловек на Ñек (пеÑвÑй ÑпоÑоб пÑовеÑки ввода Ñимволов) void addPeople(){ System.out.println("Ðа ÑколÑÐºÐ¸Ñ Ñеловек Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ð¾ ÑазделиÑÑ ÑÑÑÑ?"); while (true) { try { payer = Main.scanner.nextInt(); if (payer <= 1) { System.out.println("ÐолиÑеÑÑво Ñеловек менÑÑе или Ñавно одномÑ.\nÐведиÑе ÑиÑло заново:"); break; } } catch (Exception e) { System.out.println("ÐÑ Ð²Ð²ÐµÐ»Ð¸ Ñимвол, а не ÑиÑло.\nÐопÑобÑйÑе еÑÑ Ñаз ввеÑÑи колиÑеÑÑво Ñеловек"); Main.scanner.next(); } } } //колиÑеÑÑво Ñеловек на Ñек (вÑоÑой ÑпоÑоб пÑовеÑки ввода Ñимволов) void addPeople2(){ System.out.println("Ðа ÑколÑÐºÐ¸Ñ Ñеловек Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ð¾ ÑазделиÑÑ ÑÑÑÑ?"); while (true) { //внаÑале пÑовеÑим ÑиÑло ли ввели вовÑе if (Main.scanner.hasNextInt()) { payer = Main.scanner.nextInt(); if (payer <= 1) { System.out.println("ÐолиÑеÑÑво Ñеловек менÑÑе или Ñавно одномÑ.\nÐведиÑе ÑиÑло заново:"); break; } } else { System.out.println("ÐÑ Ð²Ð²ÐµÐ»Ð¸ Ñимвол, а не ÑиÑло.\nÐопÑобÑйÑе еÑÑ Ñаз ввеÑÑи колиÑеÑÑво Ñеловек"); Main.scanner.next(); } } } //ввод ÑоваÑа void addProduct() { while (true) { System.out.println("Ðаименование ÑоваÑа"); String product = Main.scanner.next(); //пÑовеÑка на завеÑÑение Ñикла добавление ÑоваÑа if (product.equalsIgnoreCase("ÐавеÑÑиÑÑ")) { break; } //вводим ÑÑоимоÑÑÑ ÑоваÑа System.out.println("ÐведиÑе ÑÑоимоÑÑÑ ÑоваÑа в ÑÑб."); //внаÑале пÑовеÑим ÑиÑло ли ввели вовÑе if (Main.scanner.hasNextDouble()) { priceProduct = Main.scanner.nextDouble(); //пÑовеÑÑем оÑÑиÑаÑелÑнÑÑ ÑÑоимоÑÑÑ while (priceProduct < 0) { System.out.println("У ÑоваÑа не Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð¾ÑÑиÑаÑелÑÐ½Ð°Ñ ÑÑоимÑÑÑ.\nÐведиÑе ÑÑоимоÑÑÑ ÑоваÑа заново:"); priceProduct = Main.scanner.nextDouble(); } //ÑÐ¾Ñ ÑанÑем ÑпиÑок ÑоваÑов Ñ Ñеной в виде ÑекÑÑа ÑÑÐ¾Ð±Ñ Ð¿Ð¾Ñом вÑвеÑÑи ÑпиÑок listProduct = listProduct + (product + (String.format(" - %.2f", priceProduct)) + " ÑÑб.\n"); //ÑÑммиÑÑем ÑÑоимоÑÑÑ ÑоваÑа sumPriceProduct = sumPriceProduct + priceProduct; System.out.println("Ð¢Ð¾Ð²Ð°Ñ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½ ÑÑпеÑно.\nÐведиÑе новÑй ÑÐ¾Ð²Ð°Ñ Ð¸Ð»Ð¸ введиÑе \"ÐавеÑÑиÑÑ\", ÑÑÐ¾Ð±Ñ Ð¿ÑекÑаÑиÑÑ Ð²Ð²Ð¾Ð´ ÑоваÑа.\n"); } else { System.out.println("ÐекоÑÑекÑнÑй ввод ÑиÑла.\nÐопÑобÑйÑе еÑÑ Ñаз.\n"); Main.scanner.next(); } } } //вÑвод Ñека void viewListProduct() { System.out.println("ÐобавленнÑе ÑоваÑÑ:"); System.out.println(listProduct); System.out.println(String.format("ÐбÑÐ°Ñ ÑÑмма Ñека - %.2f", sumPriceProduct) + GetRubleAddition() + "\n"); //вÑводим ÑезÑлÑÑаÑÑ ÑаÑÑÑÑÑа ÑÑÑÑа на каждого System.out.println("ÐаждÑй должен заплаÑиÑÑ - " + Math.floor(Calculator.sumPriceProduct / Calculator.payer) + GetRubleAddition()); } //меÑод опÑÐµÐ´ÐµÐ»ÐµÐ½Ð¸Ñ ÑÐºÐ»Ð¾Ð½ÐµÐ½Ð¸Ñ Ð¿Ð°Ð´ÐµÐ¶Ð° public static String GetRubleAddition() { double amountForEach = Math.floor(Calculator.sumPriceProduct / Calculator.payer); //Ñ 10 по 19 вÑегда "ÑÑблей" if (amountForEach % 100 >= 10 || amountForEach % 100 < 20) { return " ÑÑблей"; } //оÑÑалÑнÑе ÑÐºÐ»Ð¾Ð½ÐµÐ½Ð¸Ñ Ð¿Ð¾ поÑледней ÑиÑÑе switch ((int) (amountForEach % 10)) { case 1: return " ÑÑблÑ"; case 2: case 3: case 4: return " ÑÑблÑ"; default: return " ÑÑблей"; } } }