1. Куча / Говнокод #1177

    +129.6

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    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
    TYPE
       Numbers=RECORD
         a:ARRAY 1000 OF INTEGER;
         N:INTEGER;
       END;
    
    ........
    
    PROCEDURE Summ(OUT res:Numbers;IN a,b:Numbers); (*Проверена*)
     VAR
       max,i,sum:INTEGER;
    BEGIN (*Суммирование*)
      IF a.N>b.N THEN 
       max:=a.N;
      ELSE
       max:=b.N;
      END;
      i:=0;
      sum:=0;
      WHILE i<=max DO
       IF i<=a.N THEN
         sum:=sum+a.a[i];
       END;
       IF i<=b.N THEN
         sum:=sum+b.a[i];
       END;
       res.a[i]:=sum MOD 10;
       sum:=sum DIV 10;
       i:=i+1;
      END;
      IF sum>0 THEN
        res.N:=max+1;
        res.a[max+1]:=sum;
      ELSE
        res.N:=max;
      END;
    END Summ;

    Кусок из написанной одним энтузиастом-программером реализации длинной арифметики (комментарии сохранены)
    4 байта под каждую десятичную цифру. Много? Зато все понятно, как в школе ;)
    шесть + семь = три, единица на ум пошла...

    P.S. язык оберон - наследник паскаля

    Запостил: guest, 10 Июня 2009

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

    • Дык. А в чем говнокод? В том, что человек писал понятный даже начинающему код? Так на паскале и иже с ними только такой код писать и надо - простой и понятный.
      Ответить
    • Не, школьные поделки не доставляют. Вот если бы он на паскале в школе писал веб-фреймворк, тогда да.
      Ответить
    • Дело то в том, что это не школьная поделка. Чувак хочет соорудить новый алгоритм факторизации чисел, вот для этого этот код и был написан.
      Ответить
    • Keeper:
      Use gmplib.org, Luke.
      Ответить
    • А для алгоритма факторизации, значит, в этом веке самым главным является численная арифметика?
      Ответить
    • Не особо-то и говнокод
      Ответить
    • Оберон - какбы скукожен из паскаля и си, на нем софт для отечественных спутников пишут
      Ответить
      • Из паскаля и модулы, си там, слава богу, нет.
        Ответить

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