fork download
  1. using System;
  2.  
  3. class Program
  4. {
  5. static void Main()
  6. {
  7. Console.Write("Введите x: ");
  8. if (!double.TryParse(Console.ReadLine(), out double x))
  9. {
  10. Console.WriteLine("Неверный ввод для x.");
  11. return;
  12. }
  13.  
  14. Console.Write("Введите y: ");
  15. if (!double.TryParse(Console.ReadLine(), out double y))
  16. {
  17. Console.WriteLine("Неверный ввод для y.");
  18. return;
  19. }
  20.  
  21. Console.Write("Введите z: ");
  22. if (!double.TryParse(Console.ReadLine(), out double z))
  23. {
  24. Console.WriteLine("Неверный ввод для z.");
  25. return;
  26. }
  27.  
  28. double d = y - x;
  29.  
  30. // Упрощённая (безопасная) форма
  31. double W_simplified = d * y - z / (1.0 + d * d);
  32. Console.WriteLine($"W (упрощённо) = {W_simplified}");
  33.  
  34. // Если нужно строго вычислять исходную форму — проверяем деление на ноль
  35. if (Math.Abs(d) < 1e-12)
  36. {
  37. Console.WriteLine("Исходная форма содержит деление на (y - x) = 0 — вычисление не определено.");
  38. }
  39. else
  40. {
  41. double W_original = d * (y - (z / d) / (1.0 + d * d));
  42. Console.WriteLine($"W (исходная форма) = {W_original}");
  43. }
  44. }
  45. }
  46.  
Success #stdin #stdout 0.05s 28568KB
stdin
1.82
18
-3.29
stdout
Введите x: Введите y: Введите z: W (упрощённо) = 291.2525193879275
W (исходная форма) = 291.25251938792746