package rozwiazania_zadan.r1.z09_kalkulator;

import java.util.Locale;
import java.util.Scanner;

public class Kalkulator3 {

	static double oblicz(double arg1, double arg2, String operacja) {
		switch(operacja) {
		case "+": return arg1 + arg2;
		case "-": return arg1 - arg2;
		case "*": return arg1 * arg2;
		case "/": return arg1 / arg2;
		case "%": return arg1 % arg2;
		case "^": return Math.pow(arg1, arg2);
		default : throw new IllegalArgumentException("Nie ma takiej operacji " + operacja);
		}
	}
	
	public static void main(String[] args) {
		@SuppressWarnings("resource")
		Scanner sc = new Scanner(System.in);
		sc.useLocale(Locale.US);
		
		while (true) {
			System.out.println("Podaj działanie na zasadzie 12 + 15 lub napisz KONIEC");

			if(!sc.hasNextDouble() && sc.nextLine().trim().toLowerCase().equals("koniec")) {
				break;
			}
			
			try {
				double x = sc.nextDouble();
				String znak = sc.next();
				double y = sc.nextDouble();
				
				// Aby Scanner "przeszedł do następnej linii"
				// (czyli wczytał wszystko co jest za tą liczbą i w następnej linii czekał na dalsze polecenia)
				sc.nextLine();
				
				double wynik = oblicz(x, y, znak);
				System.out.println("wynik: " + wynik);
			} catch (Exception e) {
				System.out.println("Błąd: " + e.getMessage());
			}
		}
		
		System.out.println("Dziękujemy, papa");
	}

}
