Предмет: Информатика, автор: Demonboxa2017

JAVA
Создать калькулятор для работы с рациональными и комплексными числами, организовать меню, добавив в неё систему логирования.
Создать телефонный справочник с возможностью импорта и экспорта данных в нескольких форматах.
под форматами понимаем структуру файлов, например:
* в файле на одной строке хранится одна часть записи, пустая строка - разделитель

Создать информационную систему позволяющую работать с сотрудниками некой компании \ студентами вуза \ учениками школы

Ответы

Автор ответа: calyspaev
0

Для реализации калькулятора для работы с рациональными и комплексными числами в Java, вы можете создать следующий код:

```java

import java.util.Scanner;

public class Calculator {

public static void main(String[] args) {

Scanner scanner = new Scanner(System.in);

int choice;

do {

System.out.println("Выберите тип чисел:");

System.out.println("1. Рациональные числа");

System.out.println("2. Комплексные числа");

System.out.println("0. Выход");

choice = scanner.nextInt();

switch (choice) {

case 1:

handleRationalNumbers(scanner);

break;

case 2:

handleComplexNumbers(scanner);

break;

case 0:

System.out.println("Программа завершена.");

break;

default:

System.out.println("Неверный выбор. Попробуйте снова.");

break;

}

} while (choice != 0);

scanner.close();

}

private static void handleRationalNumbers(Scanner scanner) {

System.out.println("Выбраны рациональные числа.");

// Добавьте код для работы с рациональными числами

}

private static void handleComplexNumbers(Scanner scanner) {

System.out.println("Выбраны комплексные числа.");

// Добавьте код для работы с комплексными числами

}

}

```

Это базовый каркас программы, который предлагает выбрать тип чисел (рациональные или комплексные) и вызывает соответствующие методы для их обработки. Вы можете добавить реализацию операций с рациональными и комплексными числами в соответствующие методы `handleRationalNumbers` и `handleComplexNumbers`.

Для добавления системы логирования в ваш калькулятор, вы можете использовать библиотеку log4j, которую нужно добавить в зависимости вашего проекта. Вот пример использования log4j:

1. Установите библиотеку log4j, добавив зависимость в ваш файл `pom.xml` (если вы используете Maven):

```xml

<dependencies>

<dependency>

<groupId>org.apache.logging.log4j</groupId>

<artifactId>log4j-core</artifactId>

<version>2.14.1</version>

</dependency>

</dependencies>

```

2. Создайте файл конфигурации log4j (например, `log4j2.xml`) с настройками логирования. Вот пример:

```xml

<?xml version="1.0" encoding="UTF-8"?>

<Configuration>

<Appenders>

<Console name="Console" target="SYSTEM_OUT">

<PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n" />

</Console>

</Appenders>

<Loggers>

<Root level="info">

<AppenderRef ref="Console" />

</Root>

</Loggers>

</Configuration>

```

3. Измените метод `main` в вашем калькуляторе, чтобы использовать log4j для логирования. Вот пример:

```java

import org.apache.logging.log4j.LogManager;

import org.apache.logging.log4j.Logger;

public class Calculator {

private static final Logger logger = LogManager.getLogger(Calculator.class);

public static void main(String[] args) {

// ...

do {

// ...

switch (choice) {

// ...

case 1:

logger.info("Выбраны рациональные числа.");

handleRationalNumbers(scanner);

break;

case 2:

logger.info("Выбраны комплексные числа.");

handleComplexNumbers(scanner);

break;

// ...

}

} while (choice != 0);

// ...

scanner.close();

}

// ...

}

```

Теперь вы сможете видеть логи в консоли или настроить другие аппендеры для сохранения логов в файл.

Чтобы создать телефонный справочник с возможностью импорта и экспорта данных в разных форматах, вы можете использовать классы для представления контактов и методы для их сохранения и загрузки из разных форматов файлов. Вот пример кода:

```java

import java.io.*;

import java.util.ArrayList;

import java.util.List;

public class Phonebook {

private List<Contact> contacts;

public Phonebook() {

contacts = new ArrayList<>();

}

public void addContact(Contact contact) {

contacts.add(contact);

}

public void exportToCSV(String filename) {

try (PrintWriter writer = new PrintWriter(new FileWriter(filename))) {

for (Contact contact : contacts) {

writer.println(contact.getName() + "," + contact.getPhoneNumber());

}

} catch (IOException e) {

e.printStackTrace();

}

}

public void importFromCSV(String filename) {

try (BufferedReader reader = new BufferedReader(new FileReader(filename))) {

String line;

while ((line = reader.readLine()) != null) {

String[] parts = line.split(",");

if (parts.length == 2) {

String name = parts[0];

String phoneNumber = parts[1];

Contact contact = new Contact(name, phoneNumber);

contacts.add(contact);

}

}

} catch (IOException e) {

e.printStackTrace();

}

}

}

```

В приведенном выше примере используется формат CSV для импорта и экспорта контактов. Вы можете добавить поддержку других форматов, например, JSON или XML, по аналогии с CSV.

Для создания информационной системы для работы с сотрудниками компании, студентами вуза или учениками школы вам нужно определить классы, представляющие соответствующих сотрудников, студентов или учеников, а также методы для выполнения операций с ними (например, добавление, удаление, поиск). Какие классы и методы необходимы зависит от требований вашей информационной системы. Приведенные выше примеры должны дать вам представление о том, как начать

Похожие вопросы