/
itokar98
/
HomeWorkHash
Обзор
Документация
Войти
/
itokar98
/
HomeWorkHash
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
src/Main.java
54 строки
3 KB
Ilya Tokar
first commint
22 июл 2025, 23:16
22 июл 2025, 23:16
8d98f64
Код
Авторство
О чём код?
import java.util.*; public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); Map<Address, Double> costPerAddress = new HashMap<>(); // Заполняем мапу несколькими примерами costPerAddress.put(new Address("Россия", "Москва"), 150.0); costPerAddress.put(new Address("Россия", "Казань"), 200.0); costPerAddress.put(new Address("США", "Нью-Йорк"), 800.0); costPerAddress.put(new Address("Франция", "Париж"), 500.0); double totalCost = 0.0; // Общая сумма всех доставок Set<String> uniqueCountries = new HashSet<>(); // Набор уникальных стран while(true) { System.out.println("\nЗаполнение нового заказа."); System.out.print("Введите страну: "); String country = scanner.nextLine(); System.out.print("Введите город: "); String city = scanner.nextLine(); System.out.print("Введите вес (кг): "); double weight = scanner.nextDouble(); // Вес груза scanner.nextLine(); // Читаем оставшуюся строку после числа Address address = new Address(country, city); if(costPerAddress.containsKey(address)) { // Проверяем, есть ли доставка по данному адресу double pricePerKg = costPerAddress.get(address); double deliveryCost = pricePerKg * weight; System.out.printf("Стоимость доставки составит: %.2f руб.\n", deliveryCost); totalCost += deliveryCost; System.out.printf("Общая стоимость всех доставок: %.2f руб.\n", totalCost); // Добавляем страну в список уникальных стран uniqueCountries.add(country); System.out.printf("Количество уникальных стран доставки: %d\n", uniqueCountries.size()); } else { System.out.println("Доставки по этому адресу нет"); } System.out.print("Продолжить оформление новых заказов (end - завершение заказов)? "); String answer = scanner.nextLine(); if(answer.equalsIgnoreCase("end")) break; } scanner.close(); } }