fork download
  1. using System;
  2. using System.Linq;
  3.  
  4. public class Test
  5. {
  6. private static double Convert(double a)
  7. {
  8. return ((a + 360) % 360 + 360) % 360 - (int)(((a + 360) % 360 + 360) % 360 / 180 - 1e-12) * 360;
  9. }
  10.  
  11. public static void Main()
  12. {
  13. double[] a = { 0, 32, 70, 90, 150, 179, 180, 186, 190, 270, 350, 360, 400, -45, -90, -179, -180, -181, -270, -359, -360 };
  14. Console.WriteLine(String.Join("\n", a.Select(x => new { Original=x, Result=Convert(x) })));
  15. }
  16. }
Success #stdin #stdout 0.06s 24064KB
stdin
Standard input is empty
stdout
{ Original = 0, Result = 0 }
{ Original = 32, Result = 32 }
{ Original = 70, Result = 70 }
{ Original = 90, Result = 90 }
{ Original = 150, Result = 150 }
{ Original = 179, Result = 179 }
{ Original = 180, Result = 180 }
{ Original = 186, Result = -174 }
{ Original = 190, Result = -170 }
{ Original = 270, Result = -90 }
{ Original = 350, Result = -10 }
{ Original = 360, Result = 0 }
{ Original = 400, Result = 40 }
{ Original = -45, Result = -45 }
{ Original = -90, Result = -90 }
{ Original = -179, Result = -179 }
{ Original = -180, Result = 180 }
{ Original = -181, Result = 179 }
{ Original = -270, Result = 90 }
{ Original = -359, Result = 1 }
{ Original = -360, Result = 0 }