#java
#java
Вопрос:
Извините, если это неподходящее место для этого вопроса. Я начинающий программист, и мне только что удалось создать этот простой калькулятор, который может вычислять сложение, вычитание, умножение и деление:
import java.util.Scanner;
public class Calculator {
public static void main(String[] args) {
while(true){
System.out.println("Format a 'tegn' b");
System.out.println("tegn: ,-,*,/?");
Scanner input = new Scanner(System.in);
double a = input.nextDouble();
String valgttegn;
valgttegn = input.next();
double b = input.nextDouble();
if (valgttegn.equals(" ")) {
System.out.println("Resultat = " (a b));
} else if (valgttegn.equals("-")) {
System.out.println("Resultat = " (a - b));
} else if (valgttegn.equals("*")) {
System.out.println("Resultat = " (a * b));
} else if (valgttegn.equals("/")) {
System.out.println("Resultat = " (a / b));
}
}
}
}
Мой вопрос заключается в том, что я должен начать исследовать, чтобы я мог расширить функциональность калькулятора для предоставления более продвинутых функций, таких как квадратный корень из числа.
Комментарии:
1. Все это будет зависеть от того, как вы хотите усовершенствовать калькулятор. Вы хотите иметь несколько воспоминаний, чтобы иметь возможность вспоминать? Всегда удобно разобраться с коллекциями Java — знать разницу между массивами, списками, картами, наборами (кортежи для других языков). Это сослужит вам хорошую службу для любого языка программирования. Также попытайтесь разобраться в дженериках.
2.Исследование:
expression parsing
— Логично (верно?), Учитывая, что что-то вроде5 (7 * 9)
называется выражением и что вам нужно было бы его проанализировать, прежде чем вы сможете его оценить.
Ответ №1:
Если вы готовы реализовать более продвинутые функции вручную (например, потому что вы хотите попрактиковаться), вы могли бы поискать алгоритмы в Интернете и реализовать их самостоятельно. Например, здесь есть первый результат, который я извлек из поиска в Google алгоритмов вычисления квадратного корня из числа .
В противном случае для этого есть библиотека Java.
Если вы уверены в своих объектно-ориентированных навыках и вас интересует, как расширить функциональные возможности вашей программы простым и доступным способом, я предлагаю вам ознакомиться с шаблонами проектирования.