Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
37 changes: 37 additions & 0 deletions src/main/java/Calculator.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
import java.util.ArrayList;
import java.util.Locale;
import java.util.Scanner;

public class Calculator {
ArrayList<Product> products = new ArrayList<>(); // Создаем объект содержащий список продуктов.
float total;

public void calculate() {
Scanner scanner = new Scanner(System.in); // Создаём новый объект класса Scanner
scanner.useLocale(Locale.US); // Настраиваем объект Scanner на американскую локаль.

while (true) {
System.out.println("Введите наименование товара.");
String name = scanner.next(); // Присваиваем переменной ввод с клавиатуры.
System.out.println("Введите стоимость товара ХХ руб. ХХ коп.");
if (scanner.hasNextFloat()) { // Проверяем ввод с клавиатуры. Должен быть Float.
float cost = scanner.nextFloat(); // Присваиваем переменной ввод с клавиатуры.
if (cost < 0) { // Проверяем введеную стоимость товара на отрицательное значение.
System.out.println("Стоимость товара не может быть отрицательной");
continue; // Если условие if выполнено то отправляет в начало цикла.
}

Product product = new Product(cost, name); // Создал новый объект класса Product с двуя параметрами.
products.add(product); // Добавляем продукт в список продуктов.
total = total + cost; // Суммируем стоимость введенных товаров
System.out.println("Товар добавлен");
System.out.println("Вы хотите добавит еще один продукт ? Да или Завершить");
String addName = scanner.next(); // Присваиваем переменной ввод с клавиатуры.
if (addName.equalsIgnoreCase("завершить")) break;
} else {
System.out.println(String.format("Вы сделали не корректный ввод %s", scanner.next()));
}
}
}

}
23 changes: 20 additions & 3 deletions src/main/java/Main.java
Original file line number Diff line number Diff line change
@@ -1,8 +1,25 @@
import java.util.Locale;

public class Main {

public static void main(String[] args) {
// ваш код начнется здесь
// вы не должны ограничиваться только классом Main и можете создавать свои классы по необходимости
System.out.println("Привет Мир");
Persons persons = new Persons(); // Создаём новый объект класса Persons
persons.read(); // Вызываем метод read класса Persons.

Calculator calculator = new Calculator(); // Создаём новый объект класса Persons
calculator.calculate(); // Вызываем метод calculate класса Calculator.

for (Product product : calculator.products) { // Из объекта calculator класса Calсulator в вытаскиваем список продуктов.
System.out.println(String.format(Locale.US, "Добавленные товары: %s - %.2f Руб.", product.name, product.cost)); // Для каждого продукта из списка печатаем его имя и цену.
}
float averageCheck = (float) (calculator.total / persons.count); // Подсчитываем средний чек
String rub = "ру";
if (averageCheck < 2 && averageCheck >= 1) {
rub = rub + "бль";
} else {
rub = rub + "бля";
}
System.out.println(String.format(Locale.US, "%.2f %s с каждого гостя.", averageCheck, rub));
}

}
17 changes: 17 additions & 0 deletions src/main/java/Persons.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
import java.util.Scanner;

public class Persons {
int count;

public void read() {
System.out.println("Сколько гостей за столом ?");
Scanner scanner = new Scanner(System.in); // Создаём новый объект класса Scanner
int count = scanner.nextInt(); // Присваиваем переменной ввод с клавиатуры (Колличество гостей).
while (count <= 1) { // Цикл проверки колличества гостей.
System.out.println("Вы ввели не корректное колличество гостей. Введите значение больше 1");
count = scanner.nextInt();
}
this.count = count;

}
}
9 changes: 9 additions & 0 deletions src/main/java/Product.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
public class Product {
float cost;
String name;

public Product(float cost, String name) {
this.cost = cost;
this.name = name;
}
}