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

    +3

    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
    #include "stdafx.h"
    int otv;
    int main()
    {
    	int l[10]={1,1,1,1,1,1,1,1,1,1};
    	start://старт
    	std::cout<<"Enter the number of variables < 10\n";
    	int g;
    	std::cin>>g;
            if(g>=10||g<=0) goto start;
    	std::cout<<"please enter "<<g<<" your numbers\n";
    	for(int y=0;y<g;y++){int z;std::cin>>z;l[y]=z;}
    	for(int y=0;y<g;y++){std::cout<<l[y]<<", ";}
    	otv=l[0]*l[1]*l[2]*l[3]*l[4]*l[5]*l[6]*l[7]*l[8]*l[9];
    	std::cout<<"answer is "<< otv <<'\n';
    	return 0;}

    Кальцо еще то.

    Запостил: govnor, 29 Июня 2013

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

    • Опа ! Лаба-стайл.
      Ответить
    • Настолько скучно, что и комментировать неохота. Но меня такими трудностями не остановить, поэтому поехали!

      Во-первых, где здесь C++, кроме cin/cout?

      Во-вторых, нахрена тут goto?

      В-третьих, где проверка ввода?

      В-четвёртых, что за питушня в 14-й строке? А если мне нужно перемножить другое количество чисел?

      Хотя если программа предназначалась для микроконтроллеров, то сойдёт.

      На этом фоне довольно странно выглядит std:: и отсутствие using. Вывод: синтетика.
      Ответить
      • > А если мне нужно перемножить другое количество чисел?
        До 10 чисел вполне будет работать, т.к. массив инициализирован единичками ;)

        > Во-вторых, нахрена тут goto?
        do { ... } while (...) не знает, а через while (...) { ... } не смог, вот и goto.

        Подброшу еще говнеца на вентилятор.

        Во-первых, где пробелы? Почему нубы так ненавидят их, и экономят каждый пробел в своем коде?
        Во-вторых, зачем копетанский комметарий в строке 6?
        В-третьих, какого хрена otv глобальная?
        Ответить
      • > В-четвёртых, что за питушня в 14-й строке?
        Эта питушня вызвана питушнёй в 5й строке, а та, в свою очередь, основана на незнании std::vector или, на крайний случай, new int[g].
        Ответить
      • по чему синтетика? я вообще не люблю using namespace писать, у меня в коде всякие std::cout - норма.

        Когда смотришь сложный код - сразу понятно что откуда берется.
        Ответить
        • @inkanus-gray намекает, что студенты так обычно не делают. 146% студенческого кода содержат using namespace std;
          Ответить
          • У нас using namespace std содержался только с скопипизженом. Хотя да... вы правы на счет 146%.
            Ответить
          • Да, именно на это. Хотя так было не всегда... В старых компиляторах namespace просто не было.
            Ответить
            • > В старых компиляторах namespace просто не было.
              А там и хидеры другие были, с расширением ".h".
              Ответить
              • Значит, компилятор, использующий stdafx.h, старый.
                Ответить
                • Да он скорее всего и правда старый. Какая-нибудь 2003 студия.

                  Но я имел в виду только хидеры стандартной крестолибы.
                  Ответить
    • Это написано на 2010ой экспресс студии.
      В ней при создании консольного проэкта сразу включается эта библиотека.
      Ответить
    • ты говнарь
      Ответить

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