bousaid

C# IRG 2022

May 12th, 2022 (edited)
1,019
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.84 KB | None | 0 0
  1.  //C# IRG 2022 By BOUSSAID Mustafa 2022
  2.         public static double IRG2022New(int TypeIRG, double Soumis)
  3.         {
  4.             //Variables
  5.             const int T00 = 20000;
  6.             const int T01 = 4600;
  7.             const int T02 = 10800;
  8.             const int T03 = 24000;
  9.             const int T04 = 52800;
  10.             double Irg = 0;
  11.  
  12.             double P = Math.Floor(Soumis / 10) * 10;          
  13.             if (Soumis <= 30009)
  14.             {
  15.                 Irg = 0;
  16.             }
  17.             else
  18.             {
  19.                 if (Soumis >= 30010 && Soumis <= 40000) { Irg = (P - T00) * 0.23; }
  20.                 else if (Soumis > 40000 && Soumis <= 80000) { Irg = (P - 40000) * 0.27 + T01; }
  21.                 else if (Soumis > 80001 && Soumis <= 160000) { Irg = (P - 80000) * 0.30 + T01 + T02; }
  22.                 else if (Soumis > 160001 && Soumis <= 320000) { Irg = (P - 160000) * 0.33 + T01 + T02 + T03; }
  23.                 else if (Soumis > 320000) { Irg = (P - 320000) * 0.35  + T01 + T02 + T03 + T04; }
  24.  
  25.                 double Abat = Irg * 0.4;
  26.                 if (Abat < 1000) { Abat = 1000; }
  27.                 else if (Abat > 1500) { Abat = 1500; }
  28.                 Irg -= Abat;
  29.  
  30.                 // 1= Normal 2= Handicape
  31.                 switch (TypeIRG)
  32.                 {
  33.                     case 1: //---->Normal
  34.                         if (Soumis < 35000) { Irg = (Irg * 137d / 51d) - (27925d / 8d); }
  35.                         break;
  36.                     case 2: //---->Handicape
  37.                         if (Soumis < 42500) { Irg = (Irg * 93d / 61d) - (81213d / 41d); }
  38.                         break;
  39.                     default:
  40.                         //Irg = Math.Round(Irg, 1);
  41.                         break;
  42.                 }
  43.                 Irg = Math.Round(Irg, 1);
  44.             }
  45.             return Irg;
  46.         }
Add Comment
Please, Sign In to add comment