fork download
  1. import java.util.*;
  2. import java.lang.*;
  3.  
  4. public class Main {
  5. public static void main(String[] args) {
  6. final double K = 3.0;
  7. final double L = 12.48;
  8.  
  9. for (int i = 1; i <= 3; i++) {
  10. double x;
  11. switch (i) {
  12. case 1: x = 2.005; break;
  13. case 2: x = -0.437; break;
  14. case 3: x = -2.47; break;
  15. default: continue;
  16. }
  17.  
  18. try {
  19. if (x == 0) throw new ArithmeticException("Division by zero (1/2x)");
  20.  
  21. double a = Math.tan(Math.pow(Math.sqrt(K), Math.pow(K, 1.0/3.0))) - 1.0/(2.0*x);
  22.  
  23. double denomB = Math.pow(0.842, 4) * Math.sqrt(8 * K) * Math.cos(4 * x);
  24. if (Math.abs(denomB) < 1e-12) throw new ArithmeticException("Division by zero in b");
  25.  
  26. double b = (Math.sin(2 * x) * L * Math.pow(5.75, 1.0/3.0)) / denomB;
  27. double ab = a * b;
  28. double y;
  29.  
  30. if (ab < 0) {
  31. double denomY = 2 * a + 5 * b;
  32. if (Math.abs(denomY) < 1e-12) throw new ArithmeticException("Division by zero in y");
  33. y = (a - 2 * b) / denomY;
  34. } else {
  35. y = Math.sqrt(ab);
  36. }
  37.  
  38. System.out.println("ARGUMENT X = " + x);
  39. System.out.println("INTERMEDIATE a = " + a);
  40. System.out.println("INTERMEDIATE b = " + b);
  41. System.out.println("RESULT Y = " + y);
  42. System.out.println("---------------------------------");
  43.  
  44. } catch (Exception e) {
  45. System.out.println("X = " + x + " | ERROR: " + e.getMessage());
  46. System.out.println("---------------------------------");
  47. }
  48. }
  49. }
  50. }
Success #stdin #stdout 0.18s 57820KB
stdin
Standard input is empty
stdout
ARGUMENT X = 2.005
INTERMEDIATE a = -1.599419393813499
INTERMEDIATE b = 41.93916186546928
RESULT Y = -0.4139418747952554
---------------------------------
ARGUMENT X = -0.437
INTERMEDIATE a = -0.20587807548460724
INTERMEDIATE b = 39.502602341591086
RESULT Y = -0.4018801530960575
---------------------------------
ARGUMENT X = -2.47
INTERMEDIATE a = -1.147613685412437
INTERMEDIATE b = -9.848716790808494
RESULT Y = 3.3619223924539194
---------------------------------