1. C++ / Говнокод #3539

    +164

    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
    list::list(FILE*f,FILE*f1){
        first=(starosta*)new student;
        rea=first;
        int i=0,j;
        for(j=0;j<5;j++){
            if (i) {
                rea->next=(starosta*)new student;
                rea=rea->next;
            }
            i=1;
            fscanf(f,"%d",&(rea->num));
            fscanf(f,"%s",rea->fam);
            fscanf(f,"%d",&(rea->stip));
            rea->flag=0;
        }
        cur=(starosta*)rea;
        for(j=0;j<3;j++){
            cur->next=new starosta;
            cur=(starosta*)cur->next;
            cur->flag=1;
            fscanf(f1,"%d",&(cur->num));
            fscanf(f1,"%s",cur->fam);
            fscanf(f1,"%d",&(cur->stip));
            fscanf(f1,"%d",&(cur->kolvo));
            cur->next=NULL;
        }
    }

    классный конструктор... тут много приколов

    Запостил: tony, 22 Июня 2010

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

    • *f \ *f1 - уже дальше и смотреть не надо :)
      Ответить
    • это не самое интересное=) обрати внимание на строчки 4 6 10
      Ответить
      • Ну, подумаешь, ума не хватило написать if (j == 0) :)
        Тут list сам по себе весёлый... Кто там студент, кто староста?
        И, кажется, проебали заполнение первого элемента.
        Ответить
        • первого как раз и не проебали...

          причем радует эта строка (starosta*)new student;
          создается студент, а подразумевается староста...
          Ответить
          • студент это разновидность старосты ))
            Ответить
          • "первого как раз и не проебали"
            Угу, теперь дошло и до меня.
            Ответить
      • 6-10 за цикл выносятся, и i не нужна.
        Ответить
        • thanks, Capitan!
          Ответить
        • Каким образом выносить из цикла проход по списку?
          Ответить
          • Всё, понял! Мне сначала показалось обратное условие.
            Всё равно не нравится мне этот цикл. i=1 на каждом проходе, кроме первого выполняется.
            Ответить
            • Ага, мне тоже чуть выше показалось нечто похожее. Однозначно, цикл нехороший ;)
              А if (i) всё-таки легко заменяется на if (j)
              Ответить
              • выделение студента нужно засунуть в цикл и убрать i вообще...
                i тут нужно чтоб убрать первое выделение, так как оно было до цикла...
                Ответить
    • неплохое говнецо
      Ответить
    • Обычный школьный пример. Таким говнецом может похвастаться каждый, если вспомнит первые свои программы. В общем - ничего интересного.
      Ответить

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