From 0440fd76f94fdc5c4b441485dc24d49f17d2e957 Mon Sep 17 00:00:00 2001 From: mrrrkush Date: 2023年11月24日 22:59:45 +0300 Subject: [PATCH 1/2] =?UTF-8?q?=D0=BC=D0=BE=D0=B9=20=D0=BF=D1=80=D0=BE?= =?UTF-8?q?=D0=B5=D0=BA=D1=82=20-=20=D0=BA=D0=B0=D0=BB=D1=8C=D0=BA=D1=83?= =?UTF-8?q?=D0=BB=D1=8F=D1=82=D0=BE=D1=80=20=D1=81=D1=87=D1=91=D1=82=D0=B0?= =?UTF-8?q?,=20=D1=81=D0=BF=D0=BE=D1=81=D0=BE=D0=B1=D0=B5=D0=BD=20=D0=BE?= =?UTF-8?q?=D0=BF=D1=80=D0=B5=D0=B4=D0=B5=D0=BB=D1=8F=D1=82=D1=8C=20=D0=BD?= =?UTF-8?q?=D0=B5=D0=BA=D0=BE=D1=80=D1=80=D0=B5=D0=BA=D1=82=D0=BD=D1=8B?= =?UTF-8?q?=D0=B5=20=D0=B7=D0=BD=D0=B0=D1=87=D0=B5=D0=BD=D0=B8=D1=8F=20?= =?UTF-8?q?=D0=B2=D0=B2=D0=BE=D0=B4=D0=B0=20=D0=BA=D0=BE=D0=BB=D0=B8=D1=87?= =?UTF-8?q?=D0=B5=D1=81=D1=82=D0=B2=D0=B0=20=D0=BB=D1=8E=D0=B4=D0=B5=D0=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/Main.java | 55 +++++++++++++++++++++++++++++++++++++++-- 1 file changed, 53 insertions(+), 2 deletions(-) diff --git a/src/main/java/Main.java b/src/main/java/Main.java index db9356a08..ed9e265fc 100644 --- a/src/main/java/Main.java +++ b/src/main/java/Main.java @@ -1,6 +1,57 @@ - +import java.util.Locale; +import java.util.Scanner; public class Main { + static int peopleAmount; + static double sum; public static void main(String[] args) { - System.out.println("Hello world!"); + Locale.setDefault(Locale.US); + Scanner scanner = new Scanner(System.in); + + System.out.println("На какое количество человек Вы планируете разделить счёт?"); + peopleAmount = scanner.nextInt(); + if (peopleAmount> 1) { + Calculator.calculator(); + } else { + while (peopleAmount <= 1) { + System.out.println("Некорректное значение! Пожалуйста, повторите ввод"); + peopleAmount = scanner.nextInt(); + } + Calculator.calculator(); + } + } + + public static class Calculator { + public static void calculator() { + Scanner scanner = new Scanner(System.in); + String input = ""; + String products = ""; + sum = 0.0; + while (!input.equalsIgnoreCase("Завершить")) { + System.out.println("Введите название товара"); + String name = scanner.next(); + products += "\n" + name; + System.out.println("Введите стоимость товара с копейками\nНапример, 25.10"); + double price = scanner.nextDouble(); + sum += price; + System.out.println(name + " успешно добавлен!\nХотите добавить ещё один товар?\nДля завершения введите: \"Завершить\""); + input = scanner.next(); + } + scanner.close(); + System.out.println("Добавленные товары:" + products); + Format.format(); + } + } + public static class Format { + public static void format() { + double total = Math.floor(sum / peopleAmount); + double totalPrice = sum / peopleAmount; + if (total == 1) { + System.out.printf("Каждый должен заплатить: %.2f рубль", totalPrice); + } else if (total <=4){ + System.out.printf("Каждый должен заплатить: %.2f рубля", totalPrice); + } else { + System.out.printf("Каждый должен заплатить: %.2f рублей", totalPrice); + } + } } } \ No newline at end of file From e5fa06ab8745bff940ec572d1c196407daae2eb5 Mon Sep 17 00:00:00 2001 From: mrrrkush Date: 2023年11月26日 16:32:45 +0300 Subject: [PATCH 2/2] =?UTF-8?q?=D0=B4=D0=BE=D0=B4=D0=B5=D0=BB=D0=B0=D0=BD?= =?UTF-8?q?=D0=BD=D1=8B=D0=B9=20=D0=BF=D1=80=D0=BE=D0=B5=D0=BA=D1=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/Main.java | 88 +++++++++++++++++++++++++++-------------- 1 file changed, 59 insertions(+), 29 deletions(-) diff --git a/src/main/java/Main.java b/src/main/java/Main.java index ed9e265fc..1e821a456 100644 --- a/src/main/java/Main.java +++ b/src/main/java/Main.java @@ -1,44 +1,46 @@ import java.util.Locale; import java.util.Scanner; public class Main { + public static final Scanner scanner = new Scanner(System.in); static int peopleAmount; - static double sum; + static double sum, price; + static String input = "", totalProducts = "", name, products = ""; public static void main(String[] args) { - Locale.setDefault(Locale.US); - Scanner scanner = new Scanner(System.in); + scanner.useLocale(Locale.ENGLISH); + amount(); + } + public static void amount() { - System.out.println("На какое количество человек Вы планируете разделить счёт?"); - peopleAmount = scanner.nextInt(); - if (peopleAmount> 1) { - Calculator.calculator(); - } else { - while (peopleAmount <= 1) { - System.out.println("Некорректное значение! Пожалуйста, повторите ввод"); - peopleAmount = scanner.nextInt(); + while (true){ + System.out.println("На какое количество человек Вы планируете разделить счёт?"); + try { + peopleAmount = Main.scanner.nextInt(); + break; + } catch (Exception peopleAmount) { + System.out.println("Некорректное значение! Пожалуйста, повторите ввод"); + scanner.nextLine(); + } } - Calculator.calculator(); + biggerThan(); } - } + public static class Calculator { public static void calculator() { - Scanner scanner = new Scanner(System.in); - String input = ""; - String products = ""; sum = 0.0; - while (!input.equalsIgnoreCase("Завершить")) { - System.out.println("Введите название товара"); - String name = scanner.next(); - products += "\n" + name; - System.out.println("Введите стоимость товара с копейками\nНапример, 25.10"); - double price = scanner.nextDouble(); - sum += price; - System.out.println(name + " успешно добавлен!\nХотите добавить ещё один товар?\nДля завершения введите: \"Завершить\""); - input = scanner.next(); - } - scanner.close(); - System.out.println("Добавленные товары:" + products); - Format.format(); + while (true) { + try { + innerLogic(); + totalProducts = products; + break; + } catch (Exception e) { + System.out.println("Некорректное значение! Пожалуйста, повторите ввод"); + scanner.nextLine(); + } + } + scanner.close(); + System.out.println("Добавленные товары:" + totalProducts); + Format.format(); } } public static class Format { @@ -54,4 +56,32 @@ public static void format() { } } } + public static void innerLogic() { + while (!input.equalsIgnoreCase("Завершить")) { + System.out.println("Введите название товара"); + name = scanner.next(); + System.out.println("Введите стоимость товара с копейками\nНапример, 25.10"); + price = scanner.nextDouble(); + + if (price> 0) { + sum += price; + System.out.println(name + " успешно добавлен!\nХотите добавить ещё один товар?\nДля завершения введите: \"Завершить\""); + input = scanner.next(); + products += "\n" + name; + } else { + System.out.println("Некорректное значение! Пожалуйста, повторите ввод"); + } + } + } + public static void biggerThan (){ + if (peopleAmount> 1) { + Calculator.calculator(); + } else { + while (peopleAmount <= 1) { + System.out.println("Некорректное значение! Пожалуйста, повторите ввод"); + peopleAmount = scanner.nextInt(); + } + Calculator.calculator(); + } + } } \ No newline at end of file

AltStyle によって変換されたページ (->オリジナル) /