Кресты / Говнокод #3126 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
  24. 24
  25. 25
  26. 26
  27. 27
  28. 28
  29. 29
  30. 30
  31. 31
  32. 32
  33. 33
  34. 34
  35. 35
  36. 36
  37. 37
  38. 38
  39. 39
  40. 40
  41. 41
  42. 42
  43. 43
  44. 44
  45. 45
  46. 46
  47. 47
  48. 48
  49. 49
  50. 50
  51. 51
  52. 52
  53. 53
  54. 54
  55. 55
  56. 56
  57. 57
  58. 58
  59. 59
  60. 60
  61. 61
  62. 62
  63. 63
  64. 64
  65. 65
  66. 66
  67. 67
  68. 68
  69. 69
  70. 70
  71. 71
  72. 72
  73. 73
  74. 74
  75. 75
  76. 76
  77. 77
  78. 78
  79. 79
  80. 80
  81. 81
  82. 82
  83. 83
  84. 84
  85. 85
  86. 86
  87. 87
  88. 88
  89. 89
  90. 90
  91. 91
  92. 92
  93. 93
  94. 94
  95. 95
  96. 96
  97. 97
  98. 98
float Chislo(char *a, int i)
  {
   int j=i;
   int k=0;
   int r;
   float chis=0;
   while (a[j-1]!=' ' && a[j-1]!='>' && a[j-1]!='-' && a[j-1]!='+' && a[j-1]!='(')
     {j--;
             //тут перегоняем символ a[j] в цифру r
      if (int(a[j]==48)) r=0;
       else if (int(a[j]==49)) r=1;
        else if (int(a[j]==50)) r=2;
         else if (int(a[j]==51)) r=3;
          else if (int(a[j]==52)) r=4;
           else if (int(a[j]==53)) r=5;
            else if (int(a[j]==54)) r=6;
             else if (int(a[j]==55)) r=7;
              else if (int(a[j]==56)) r=8;
               else if (int(a[j]==57)) r=9;
                 else goto lab8;
      //ShowMessage(a[j]);

      chis=chis + r*pow(10,k);
      k++;
     };
   //j--;            //дальше надо обратно до точки и дольше до пробела
   while (a[j]!='.')
     {if (a[j]==' ' || a[j]==':') goto lab8;
      j++;
     };
   j++;
   r=0;
   k=-1;
   
      k--;
      j++;
     };

   lab8:

   return chis;
  }

// была еще и похощая функция возвращающая результат в виде AnsiString

// вот сколько переменных понадобивлось автору в более чем 700-строчной процедуре

void Progon()
{
 //
  AnsiString TempR1, TempR2, TempR3, Com,Sport,Team1,Team2, Team, URL1, URL2, page,Champ,Date;
  AnsiString day, month, year, Res, temp, otdyh1, otdyh2;
  int dat;
  //TempR1 = NMHTTP1->Body;

   float tot,TM,TB,bol1,bol2,srbol,ver,value,proc;
   AnsiString totS,f1S,ind1S,ind2S, f1ch1S, t_ch1S, f1ch2S, t_ch2S, f1ch3S, t_ch3S, f1ch4S, t_ch4S;
   float fora1,ind1,ind2, f1ch1, t_ch1, f1ch2, t_ch2, f1ch3, t_ch3, f1ch4, t_ch4;
   AnsiString Score1, Score2, s1ch1S, s2ch1S, s1ch2S, s2ch2S, s1ch3S, s2ch3S, s1ch4S, s2ch4S;

   AnsiString FIO, ScoreS, RebS, AstS, MinS, Amplua, BlkS, StlS;
   AnsiString TotalS, RebBookS, AstBookS, StlBookS, BlkBookS;
   float Total, RebBook, AstBook, BlkBook, StlBook;
   float PtssNRebsBook, PtssNAstsBook, RebsNAstsBook, PtssNRebsNAstsBook, Book3ptTeam1, Book3ptTeam2;
   int Score, count;

   int str1, str2, ind, indd, ig_pos;
   bool win;

// В коде куча такого

 while (bukva2[i2]!='/') i2++;
                      i2++;
                      while (bukva2[i2]!='/') i2++;
                      i2++;
                      while (bukva2[i2]!='/') i2++;       // // обошли stl

int *Ptss;
  Ptss = new int[count];

  int *Rebs;
  Rebs = new int[count];

  int *Asts;
  Asts = new int[count];

  int *Blks;


while ( ! ( ((bukva[i]=='H') &&(bukva[i+1]=='o') && (bukva[i+2]=='m') && (bukva[i+3]=='e')) || ((bukva[i]=='R') &&(bukva[i+1]=='o') && (bukva[i+2]=='a') && (bukva[i+3]=='d')))) i--;
         while (bukva[i]!='a') i--;
         while ((bukva[i-1]!='>') && (bukva[i-1]!=' ')) i--;

// Внутри циклов всюду работа с экселем
 else
                             {Form1->App.OlePropertyGet("ActiveSheet").OlePropertyGet("Cells", str1, str2+14).OlePropertyGet("Font").OlePropertySet("Color", -16777216);
                              Form1->App.OlePropertyGet("ActiveSheet").OlePropertyGet("Cells", str1, str2+15).OlePropertyGet("Font").OlePropertySet("Color", -16777216);
                             };

Как -то по фрилансу заказчик хотел доработать то ли парсер, то ли еще что-то (по предоставленным исходникам я так и не смог понять что это за прога, названная "Автониггер" и написанная каким -то студентом толи специально ради выноса мозгов, то ли по еще каким-то причинам вышеобозначенными выкладками, которые вполне возможно содержат в себе какойто гипнотический смысл).

Запостил: fenryr fenryr, (Updated )

Комментарии (17) RSS

Добавить комментарий

Переведи на "PHP", guest!

    А не использовать ли нам bbcode?


    8