import java.util.Scanner; //import java.math.MathContext; public class Counter { public static int pers() { // ввод колиÑеÑÑва лÑдей Scanner scanner = new Scanner(System.in); int persons = 0; System.out.println("ÐведиÑе колиÑеÑÑво Ñеловек"); while (persons <= 1) { if (scanner.hasNextInt()) { persons = scanner.nextInt(); if (persons <= 1) { System.out.println("ÐолиÑеÑÑво Ñеловек должно бÑÑÑ Ð±Ð¾Ð»ÑÑе одного"); System.out.println("--------------------------------------------\n"); return pers(); } } else { System.out.println("ÐекоÑÑекÑное ÑиÑло, пожалÑйÑÑа повÑоÑиÑе ввод"); System.out.println("----------------------------------------------\n"); return pers(); } } return persons; } public static String enterName() { // ввод Ð½Ð°Ð·Ð²Ð°Ð½Ð¸Ñ ÑоваÑа Scanner scanner = new Scanner(System.in); //while (true) { // ÑбÑал лиÑний Ñикл System.out.println("ÐведиÑе название ÑоваÑа или 'завеÑÑиÑÑ' Ð´Ð»Ñ Ð²ÑÑ Ð¾Ð´Ð°:"); String shopAdd = scanner.next(); String end = "завеÑÑиÑÑ"; if (shopAdd.equalsIgnoreCase(end)) { System.out.println("\n-------------"); System.out.println("ÐакÑÑÑие пÑогÑаммÑ"); System.exit(0); } System.out.printf("%s добавлено в коÑзинÑ\n", shopAdd); System.out.println("-----------------------------\n"); return shopAdd; //} //return enterName(); } public static double enterPrice() { // ввод ÑÑоимоÑÑи ÑоваÑа Scanner scanner = new Scanner(System.in); System.out.println("ÐÐедиÑе ÑÑоимоÑÑÑ ÑоваÑа:"); if (scanner.hasNextDouble()) { double price = scanner.nextDouble(); if (price > 0) { // добавлено ÑÑловие пÑовеÑки оÑÑиÑаÑелÑнÑÑ ÑиÑел и Ð½Ð¾Ð»Ñ Ð² Ñене System.out.printf("СÑоимоÑÑÑ ÑоваÑа: %.2f\n", price); System.out.println("-----------------------------\n"); return price; } } System.out.println("ÐÑ Ð²Ð²ÐµÐ»Ð¸ невеÑнÑе даннÑе, повÑоÑиÑе ввод\n"); return enterPrice(); } public static void shopCalc() { // калÑкÑлÑÑÐ¾Ñ ÑÑÐ¼Ð¼Ñ Ð²ÑбÑаннÑÑ ÑоваÑов int persons = pers(); String basket = ""; // коÑзина String rubleySumma; // оконÑание в СÑмме String rubleyOtvet; // оконÑание в ÐÑвеÑе double sum = 0; while (true) { String shopAdd = enterName(); double price = enterPrice(); sum = sum + price; basket = (shopAdd.trim() + "\n" + basket.trim()); double otvet = sum / persons; // никогда Ð±Ñ Ð½Ðµ подÑмал, ÑÑо Ñак Ñложно запилиÑÑ Ð¾ÐºÐ¾Ð½ÑÐ°Ð½Ð¸Ñ Ñлова "ÑÑблÑ" -_- // англоговоÑÑÑим пÑогеÑам, оказÑваеÑÑÑ, жиÑÑ-Ñо намного пÑоÑе D: // болÑÑое Ðам ÑпаÑибо за помоÑÑ Ð² алгоÑиÑме, пÑо 5-19 иÑд :) Ñам Ð±Ñ Ñ Ñен догадалÑÑ // пÑовеÑка оконÑÐ°Ð½Ð¸Ñ Ð² СÑмме // наÑало int rublSum = (int) Math.floor(sum); String rublStr = String.valueOf(rublSum); int rublSumTwoD = rublSum%100; if ((rublSumTwoD >= 5) && (rublSumTwoD <= 19)) { rubleySumma = "ÑÑблей"; } else if (rublStr.endsWith("0")) { rubleySumma = "ÑÑблей"; } else if (rublStr.endsWith("1")) { rubleySumma = "ÑÑблÑ"; } else if ((rublStr.endsWith("2")) || (rublStr.endsWith("3")) || (rublStr.endsWith("4"))) { rubleySumma = "ÑÑблÑ"; } else { rubleySumma = "ÑÑблей"; } // ÐºÐ¾Ð½ÐµÑ // пÑовеÑка оконÑÐ°Ð½Ð¸Ñ Ð² ÐÑвеÑе // наÑало int rublOtv = (int) Math.floor(otvet); String otvetStr = String.valueOf(rublOtv); int rublOtvTwoD = rublOtv%100; if ((rublOtvTwoD >= 5) && (rublOtvTwoD <= 19)) { rubleyOtvet = "ÑÑблей"; } else if (otvetStr.endsWith("0")) { rubleyOtvet = "ÑÑблей"; } else if (otvetStr.endsWith("1")) { rubleyOtvet = "ÑÑблÑ"; } else if ((otvetStr.endsWith("2")) || (otvetStr.endsWith("3")) || (otvetStr.endsWith("4"))) { rubleyOtvet = "ÑÑблÑ"; } else { rubleyOtvet = "ÑÑблей"; } // ÐºÐ¾Ð½ÐµÑ System.out.printf("\nÐÑого\n------------------------\nÐÐ¾Ð±Ð°Ð²Ð»ÐµÐ½Ñ ÑоваÑÑ:\n%s\nÐÑего Ñеловек: %d\nÐÑего ÑоваÑов на ÑÑммÑ: %.2f %s\nÐаждÑй из Ð²Ð°Ñ Ð´Ð¾Ð»Ð¶ÐµÐ½ заплаÑиÑÑ: %.2f %s\n------------------------\n", basket, persons, sum, rubleySumma, otvet, rubleyOtvet); System.out.println("\nХоÑиÑе пÑиобÑеÑÑи ÑÑо-нибÑÐ´Ñ ÐµÑе?"); System.out.println("----------------------------------\n"); } } }