import java.util.Scanner; // dev branch for Y.Practicum public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int amt = 0; System.out.println("ÐÑивеÑÑÑвÑÑ!\nÐведиÑе колиÑеÑÑво гоÑÑей: "); while (true){ if (scanner.hasNextInt()){ amt = scanner.nextInt(); if (amt > 1) { break; } else if (amt == 1){ System.out.println("ÐелиÑÑ ÑÑÑÑ Ð½Ðµ Ð¸Ð¼ÐµÐµÑ ÑмÑÑла :)"); } else { System.out.println("ÐведиÑе коÑÑекÑное знаÑение"); } } else { System.out.println("ÐведиÑе ÑиÑло"); scanner.next(); } } Calc calc = new Calc();// ÑоздаÑм калÑкÑлÑÑÐ¾Ñ double price; while (true) { System.out.println("ХоÑиÑе добавиÑÑ ÑÐ¾Ð²Ð°Ñ - введиÑе название ÑоваÑа.\nЧÑÐ¾Ð±Ñ Ð·Ð°Ð²ÐµÑÑиÑÑ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ðµ ÑоваÑа и наÑаÑÑ Ð¿Ð¾ÑÑÑÑ - ÐавеÑÑиÑÑ"); String name = scanner.next(); if (name.equalsIgnoreCase("ÐавеÑÑиÑÑ")) { System.out.println("ÐаÑинаем подÑÑÑÑ..."); break; } else{ System.out.println("ÐведиÑе ÑÑоимоÑÑÑ ÑоваÑа в ÑоÑмаÑе < ÑÑб,коп > \n"); } while (true){ if (scanner.hasNextDouble()) { price = scanner.nextDouble(); if (price > 0){ break; } else if (price < 0) { System.out.println("СÑоимоÑÑÑ Ð½Ðµ Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð¾ÑÑиÑаÑелÑной."); } else { System.out.println("ÐекоÑÑекÑное знаÑение"); } } else { System.out.println("ÐведиÑе ÑиÑло"); scanner.next(); } } calc.add(price, name); calc.showPrice(); } calc.showGoods(); System.out.printf("ÐаждÑй должен заплаÑиÑÑ: %.2f %s", calc.price / amt, calc.valid(calc.price / amt)); } } class Calc {// ÐлаÑÑ ÐºÐ°Ð»ÑкÑлÑÑÐ¾Ñ double price = 0; String name = "\n"; public void add(double addPrice, String addName) { name += addName + "\n"; price += addPrice; System.out.println("Ð¢Ð¾Ð²Ð°Ñ ÑÑпеÑно добавлен!"); } public void showGoods() {// покзаÑÑ Ð²Ñе занеÑÑннÑе даннÑе System.out.println("ÐобавленнÑе ÑоваÑÑ:" + name); } public void showPrice(){// ÐоказаÑÑ ÑÐµÐ½Ñ System.out.printf("СÑмма вÑÐµÑ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð½ÑÑ ÑоваÑов: %.2f %s\n", price, valid(price)); } public String valid(double lign) {// пÑовеÑка на пÑавилÑное напиÑание Ñлова "ÑÑблÑ" if ((lign % 10 == 1) && !(lign % 100 > 10 && lign % 100 < 20)) {// 1 кÑоме Ð¾Ñ 10 до 20 Ð ÑÐ±Ð»Ñ return " Ð ÑблÑ"; } else if ((lign % 10 >= 2 && lign % 10 < 5) && !(lign % 100 > 10 && lign % 100 < 20)) {// 2 - 4 кÑоме Ð¾Ñ 10 до 20 Ð ÑÐ±Ð»Ñ return " Ð ÑблÑ"; } else if ((lign % 10 >= 5 && lign % 10 < 10) && !(lign % 100 > 10 && lign % 100 < 20)) {// 5 - 9 кÑоме Ð¾Ñ 10 до 20 Ð Ñблей return " Ð Ñблей"; } else if (lign % 100 >= 10 && lign % 100 <= 20) {// 10 - 19 иÑклÑÑение return " Ð Ñблей"; } return " Ð ÑблÑ"; } }