Мини-проект: консольный калькулятор
Создайте небольшую функцию калькулятора с использованием switch без ввода из консоли. Обработайте операции +, -, *, /, проверьте деление на ноль и разработайте понятные тесты.
«Мини-проект: консольный калькулятор» — бесплатный урок Java Academy на CoddyKit. Это урок 3 из 3. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Java Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Java Academy содержит 3 уроков всего.
Описание проекта
Цель: реализовать повторно используемый метод калькулятора без ввода из консоли. Метод принимает два числа и оператор, возвращает результат и проверяет деление на ноль.
Проектирование программного интерфейса
Программный интерфейс
static double calc(double a, double b, char op)- op:
'+','-','*'/'x','/' - Недопустимый оператор: выбросить
IllegalArgumentException - Внутри метода не должно быть пользовательского ввода
Логика оператора выбора
Логика оператора выбора
- Объедините метки умножения:
*,x,X - Используйте
defaultдля неизвестных операторов - Возвращайте результат в каждом варианте
Деление на ноль
Деление на ноль
- Проверяйте
b == 0, еслиop == '/' - Выбрасывайте
IllegalArgumentException("Division by zero") - Не полагайтесь на значение бесконечности IEEE, если Вы только начинаете
План тестирования
Тестирование
- Основные сценарии:
calc(7, 8, '+'),calc(9, 3, '/') - Граничный случай:
calc(5, 0, '/')должен вызвать исключение - Недопустимый оператор:
calc(1, 2, '?')должен вызвать исключение
Демонстрация калькулятора
Запустите: демонстрация напрямую вызывает calc с примерами значений и выводит результаты. Ввод из консоли не требуется.
public class Main {
static double calc(double a, double b, char op) {
switch (op) {
case '+':
return a + b;
case '-':
return a - b;
case '*':
case 'x':
case 'X':
return a * b;
case '/':
if (b == 0) throw new IllegalArgumentException("Division by zero");
return a / b;
default:
throw new IllegalArgumentException("Unknown operator: " + op);
}
}
public static void main(String[] args) {
System.out.println("7 + 8 = " + calc(7, 8, '+'));
System.out.println("10 / 2 = " + calc(10, 2, '/'));
try {
System.out.println("10 / 0 = " + calc(10, 0, '/'));
} catch (IllegalArgumentException e) {
System.out.println("Error: " + e.getMessage());
}
System.out.println("6 * 3 = " + calc(6, 3, '*'));
System.out.println("6 x 3 = " + calc(6, 3, 'x'));
}
}
Правило обработки деления на ноль
Быстрая проверка: что должно произойти при вызове calc(10, 0, '/' )?
Повторение и далее
Повторение: Вы спроектировали понятный программный интерфейс, реализовали калькулятор на основе оператора выбора, проверили деление на ноль и выполнили тестирование без ввода из консоли.
Далее: перейдите к циклам для повторяющихся вычислений и шаблонов.
Часто задаваемые вопросы
Урок «Мини-проект: консольный калькулятор» бесплатный?
Да — полный текст урока «Мини-проект: консольный калькулятор» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Java Academy, подпишись на CoddyKit PRO. Курс Java Academy содержит 3 уроков всего.
Чему я научусь в уроке «Мини-проект: консольный калькулятор»?
Создайте небольшую функцию калькулятора с использованием switch без ввода из консоли. Обработайте операции +, -, *, /, проверьте деление на ноль и разработайте понятные тесты. Ты практикуешь Java Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Java Academy?
Предыдущий опыт не требуется. Java Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 3 из 3.
Сколько времени занимает урок «Мини-проект: консольный калькулятор»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Java Academy?
Да. Каждый урок Java Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Подробно о сравнительных и логических операторах
- Оператор switch
- Мини-проект: консольный калькулятор