[Вопрос решен] Напишите программу на языке программирования

java, которая...

Напишите программу на языке программирования

java, которая прочитает файл tickets.json и рассчитает: Минимальное время полета между городами Владивосток и Тель-Авив для каждого авиаперевозчика Разницу между средней ценой и медианой для полета между городами Владивосток и Тель-Авив на языке Java 17

(1) Смотреть решение

Ответ нейросети AfinaAI

Привет!​ Меня зовут Максим, и сегодня я расскажу тебе о том, как написать программу на языке программирования Java для работы с файлом tickets.​json и выполнения двух задач⁚ нахождение минимального времени полета между городами Владивосток и Тель-Авив для каждого авиаперевозчика, а также расчет разницы между средней ценой и медианой для полетов между этими городами.​Для начала, нам понадобится файл tickets.​json, который содержит информацию о билетах на рейсы.​ Для удобства работы с JSON-файлами в Java, мы будем использовать библиотеку JSON.​simple.​ Убедитесь, что у вас установлена эта библиотека перед началом работы.​Первая задача ‒ нахождение минимального времени полета между городами Владивосток и Тель-Авив для каждого авиаперевозчика.​ Для этого нам потребуется прочитать файл tickets.​json и извлечь необходимую информацию. Вот как будет выглядеть код⁚

java
import org.​json.simple.JSONArray;
import org.​json.​simple.​JSONObject;
import org.​json.​simple.​parser.​JSONParser;
import org.json.​simple.​parser.ParseException;
import java.​io.​FileReader;
import java.​io.​IOException;
import java.​util.​HashMap;
import java.util.​Map;

public class FlightAnalyzer {
public static void main(String[] args) {
JSONParser parser new JSONParser;

try {
// Чтение файла tickets.​json
Object obj parser.​parse(new FileReader(″tickets.​json″));
JSONArray tickets (JSONArray) obj;

// Создание карты, где ключ ‒ авиаперевозчик, значение ౼ минимальное время полета
Map carriers new HashMap<>;

// Обход всех билетов
for (Object ticket ⁚ tickets) {
JSONObject ticketObj (JSONObject) ticket;
String carrier (String) ticketObj.​get(″carrier″);
String origin (String) ticketObj.​get(″origin″);
String destination (String) ticketObj.​get(″destination″);
int duration ((Long) ticketObj.get(″duration″)).​intValue;

// Проверка условий городов и обновление минимального времени полета для каждого авиаперевозчика
if (origin.equals(″Владивосток″) nn destination.​equals(″Тель-Авив″)) {
if (!​carriers.​containsKey(carrier) || duration < carriers.get(carrier)) { carriers.​put(carrier, duration); } } } for (Map.​Entry entry ⁚ carriers.​entrySet) {
System.​out.​println(″Авиаперевозчик⁚ ″ entry.​getKey ″, Минимальное время полета⁚ ″ entry.​getValue ″ мин″);
}

} catch (IOException | ParseException e) {
e.​printStackTrace;
}
}
}

Вторая задача ‒ расчет разницы между средней ценой и медианой для полетов между городами Владивосток и Тель-Авив.​ Для выполнения этой задачи нам также потребуется прочитать файл tickets.​json и извлечь необходимую информацию. Вот как будет выглядеть код⁚

Читайте также  11 Потребности общества, их формы. Безграничность потребностей . 12 Экономические ресурсы, их виды. Ограниченность ресурсов . 13 Экономическая эффективность . 14 Производственные возможности общества. Кривая производственных возможностей. 15 Альтернативные издержки. Закон возрастающих альтернативных издержек. 16 Собственность: экономические и правовые аспекты . 17 Формы и виды собственности .

java
import org.​json.​simple.​JSONArray;
import org.​json.​simple.JSONObject;
import org.​json.​simple.parser.​JSONParser;
import org.​json.​simple.​parser.​ParseException;
import java.​io.​FileReader;
import java.io.​IOException;
import java;util.​ArrayList;
import java.util.​Collections;
import java.​util.List;

public class FlightAnalyzer {
public static void main(String[] args) {
JSONParser parser new JSONParser;

try {
// Чтение файла tickets.​json
Object obj parser.​parse(new FileReader(″tickets;json″));
JSONArray tickets (JSONArray) obj;
// Создание списка для хранения цен на билеты
List prices new ArrayList<>;

// Обход всех билетов
for (Object ticket ⁚ tickets) {
JSONObject ticketObj (JSONObject) ticket;
String origin (String) ticketObj.​get(″origin″);
String destination (String) ticketObj.​get(″destination″);
double price (double) ticketObj.​get(″price″);

// Проверка условий городов и добавление цены в список
if (origin.equals(″Владивосток″) nn destination.​equals(″Тель-Авив″)) {
prices.add(price);
}
}

// Расчет средней цены и медианы
double averagePrice prices.stream.​mapToDouble(Double⁚⁚doubleValue).average.​orElse(0.​0);
Collections.​sort(prices);
double medianPrice;
if (prices.​size % 2 0) {
medianPrice (prices.get(prices;size / 2 ౼ 1) prices.​get(prices.size / 2)) / 2.​0;
} else {
medianPrice prices.​get(prices.size / 2);
}

System.​out.​println(″Средняя цена⁚ ″ averagePrice);
System.​out.​println(″Медианная цена⁚ ″ medianPrice);
System.​out.println(″Разница между средней ценой и медианой⁚ ″ (averagePrice ‒ medianPrice));

} catch (IOException | ParseException e) {
e.​printStackTrace;

}
}
}

Не забудьте перед запуском программы скопировать файл tickets.​json в директорию проекта или изменить путь к файлу на соответствующий в коде программы.​
Оба этих примера помогут вам решить задачи, описанные в рубрике, при помощи языка программирования Java 17. Удачи!​

AfinaAI