Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Математички израз Problem 8 (1 / 5)
- Да се напише алгоритам кој ќе пресметува (евалуира) математички израз составен од броеви и операциите за собирање (+) и множење (*).
- Забелешка: Операцијата множење има предност пред операцијата собирање.
- Име на класата: ExpressionEvaluator
- import java.io.BufferedReader;
- import java.io.IOException;
- import java.io.InputStreamReader;
- import java.util.Stack;
- public class ExpressionEvaluator {
- public static int evaluateExpression(String expression){
- // Vasiot kod tuka
- String str[] = expression.split("\\+");
- int arr[] = new int[str.length];
- for(int i = 0; i < str.length; i++){
- int mul = 1;
- int operand = 0;
- String string = str[i];
- for(int j = 0; j < string.length(); j++){
- if(string.charAt(j) == '*'){
- mul = mul * operand;
- operand = 0;
- }else{
- operand = operand*10 + Character.digit(string.charAt(j), 10);
- }
- }
- mul = mul * operand;
- arr[i] = mul;
- mul = 1;
- operand = 1;
- }
- int sum = 0;
- for(int i = 0; i < arr.length; i++){
- sum += arr[i];
- }
- return sum;
- }
- public static void main(String[] args) throws IOException {
- BufferedReader input=new BufferedReader(new InputStreamReader(System.in));
- System.out.println( evaluateExpression(input.readLine()));
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement