Repository navigation
Expand file tree
/
Copy pathCalculator.java
More file actions
73 lines (63 loc) · 2.98 KB
/
Copy pathCalculator.java
File metadata and controls
73 lines (63 loc) · 2.98 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
import java.util.Scanner;
public class Calculator {
static double totalPrice = 0;
static String listOfProducts = "\nДобавленные товары:";
public static void addProducts(Scanner scanner) {
String nextEnter = "";
while (!nextEnter.equalsIgnoreCase("Завершить")) {
String productName = "";
double price = Integer.MIN_VALUE;
System.out.println("\nВведите название товара:");
while (productName.equals("")){
if(scanner.hasNextInt()){
System.out.println("Название не может быть числом");
scanner.nextInt();
scanner.nextLine();
continue;
} else if (scanner.hasNextDouble()) {
System.out.println("Название не может быть дробью");
scanner.nextDouble();
scanner.nextLine();
continue;
}
productName = scanner.nextLine();
}
System.out.println("\nВведите цену в рублях " +
"или с копейками через \",\" - например: 1010,23");
while (price <= 0) {
if (!scanner.hasNextDouble()) {
System.out.println("Цена должна должна быть числом. Дробная часть через \",\"");
scanner.next();
continue;
}
price = scanner.nextDouble();
if (price <= 0){
System.out.println("Цена должна должна быть больше 0");
}
}
System.out.println("Вы добавили товар: " + productName);
listOfProducts += "\n" + productName;
totalPrice += price;
System.out.println("""
Для ввода следующего товара - введите любой символ или слово.
Для завершения подсчета введите: \"Завершить\"""");
nextEnter = scanner.next();
}
}
public static int getPeopleCount(Scanner scanner) {
int countPeople = Integer.MIN_VALUE;
System.out.println("На сколько человек необходимо разделить счёт?");
while (countPeople <= 1) {
if (!scanner.hasNextInt()) {
System.out.println("Некорректный ввод. Введите целое число.");
scanner.next();
continue;
}
countPeople = scanner.nextInt();
if (countPeople <= 1) {
System.out.println("Число человек должно быть больше 1.");
}
}
return countPeople;
}
}