import java.util.Locale; import java.util.Scanner; public class Calculator { String listOfProducts; double productPrice; public Calculator() { listOfProducts = ""; productPrice = 0.0; } public void addProduct() { //меÑод Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñ ÑоваÑов while (true) { Scanner in = new Scanner(System.in).useLocale(Locale.US); System.out.println("ÐведиÑе название ÑоваÑа: "); String productName = in.nextLine(); if (productName.equalsIgnoreCase("ÐавеÑÑиÑÑ")) { break; } listOfProducts = productName + "\n"; System.out.println("ÐведиÑе ÑÑоимоÑÑÑ Ð² ÑоÑмаÑе: 'ÑÑбли.копейки' [10.45, 11.40]"); double price = inputPrice(); productPrice += price; System.out.println("Ð¢Ð¾Ð²Ð°Ñ ÑÑпеÑно добавлен! ХоÑиÑе добавиÑÑ ÐµÑÑ Ð¾Ð´Ð¸Ð½ ÑоваÑ? ÐÑли да, Ñо пÑодолжайÑе пиÑаÑÑ Ð²Ð°Ñ ÑпиÑок. ÐÑли неÑ, Ñо напиÑиÑе \"ÐавеÑÑиÑÑ\""); } } public double inputPrice() { while (true) { Scanner in = new Scanner(System.in).useLocale(Locale.US); if (in.hasNextDouble()) { double price = in.nextDouble(); if (price >= 0) { return price; } else { System.out.println("СÑоимоÑÑÑ Ð½Ðµ Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð¾ÑÑиÑаÑелÑнаÑ"); } } else { System.out.println("ÐекоÑÑекÑнÑй ввод"); } } } public static String getRubleAddition(double price) { int num = (int)Math.floor(price); int preLastDigit = num % 100 / 10; if (preLastDigit == 1) { return "ÑÑблей"; } switch (num % 10) { case 1: return "ÑÑблÑ"; case 2: case 3: case 4: return "ÑÑблÑ"; default: return "ÑÑблей"; } } public void printInfo(int persona) { System.out.println("ÐобавленнÑе ÑоваÑÑ: \n" + listOfProducts); System.out.printf("СÑоимоÑÑÑ ÑоваÑов Ð´Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð³Ð¾ по оÑделÑноÑÑи: %.2f %s \n", productPrice / persona, getRubleAddition(productPrice / persona)); System.out.printf("ÐбÑÐ°Ñ ÑÑоимоÑÑÑ ÑоваÑов: %.2f %s \n" , productPrice, getRubleAddition(productPrice)); } }