1. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Посоны помогите с C++ :/

Тема в разделе "Оффтопик", создана пользователем TheMuffin, 8 июн 2013.

  1. Автор темы
    TheMuffin

    TheMuffin Активный участник Пользователь

    Баллы:
    88
    Имя в Minecraft:
    TheMuffin
    В общем, за это лето решил выучить язык программирования. Вчера сделал конвертер из цельсия в фаренгейт.. Это не суть.. Сейчас я написал калькулятор, но проблема в том что он не даёт второй попытки. То есть, он решает пример, предлaгает решить другой пример и закрывается.. Сразу не обьяснишь, но если поняли то прошу помочь. На всякий вот вам ехе' шник.


    Код:
    https://www.dropbox.com/s/kmgf1qcatlbkmya/kalk.cpp
    .exe
    https://www.dropbox.com/s/wsceiqsatzp7ffo/kalk.exe

    Вот вам ВирусТотал если писюкаете :3
    https://www.virustotal.com/en/file/...47b49ebaab75896929402486/analysis/1370639757/
     
  2. hummer

    hummer Старожил Пользователь

    Баллы:
    123
    Skype:
    bond_russia
    Я смотрю ты любишь HardCore:D
     
    DavidShabaev и Randall нравится это.
  3. ptnk

    ptnk Старожил Пользователь

    Баллы:
    173
    Цикла не хватает.
     
    Пароль123456789, slavik123123123 и Klever нравится это.
  4. Автор темы
    TheMuffin

    TheMuffin Активный участник Пользователь

    Баллы:
    88
    Имя в Minecraft:
    TheMuffin

    Не подскажешь как его написать? Или как хоть примерно выглядит?
     
  5. Vova96

    Vova96 Старожил Пользователь

    Баллы:
    173
    А не легче было через case делать?
    Делаешь так:
    Код:
    while(answer != 5)
    {
    cout << "Deleniye (1), ...";
    //Тут case'ом делаешь функции сложения, вычитания, деления и умножения. Выход у тебя будет по условию цикла (если введёшь answer = 5, то выйдет из цикла и конец программы.)
    }
    cout << "Bye!";
    return 0;
     
    

    И зачем подключать библиотеку <string>, если строковые переменные не используете?
     
  6. Автор темы
    TheMuffin

    TheMuffin Активный участник Пользователь

    Баллы:
    88
    Имя в Minecraft:
    TheMuffin


    То есть, что бы получилось, вот так?

    case '+': (ентер) result = x + y; (ентер)break;


    __________

    Просто я пишу коды для теста новых знаний, поверх старых. Думаешь string может чему-то помешать?
     
  7. Vova96

    Vova96 Старожил Пользователь

    Баллы:
    173
    Yep.
    Нет, просто не понял, зачем оно тут нужно.
     
  8. Автор темы
    TheMuffin

    TheMuffin Активный участник Пользователь

    Баллы:
    88
    Имя в Minecraft:
    TheMuffin

    Вот что получилось https://www.dropbox.com/s/27j5svh1p8kl658/KALK2.cpp?m
    Он всёравно закрывается когда решает пример :/
     
  9. Vova96

    Vova96 Старожил Пользователь

    Баллы:
    173
    Я же написал цикл.

    Ну так как, заработало?
     
  10. Автор темы
    TheMuffin

    TheMuffin Активный участник Пользователь

    Баллы:
    88
    Имя в Minecraft:
    TheMuffin

    неа, но я в книге по которой учусь прочитал до комманды goto и всё заработало с ней.
     
  11. Vova96

    Vova96 Старожил Пользователь

    Баллы:
    173
    Фу таким быть, GoTo - плохо!
     
  12. kreved

    kreved Старожил Пользователь

    Баллы:
    103
    Skype:
    kre_ved
    Имя в Minecraft:
    kreved_
    Goto используют только индусские программисты, фу быть таким. :)
    int main()
    {
    WHILE(ANSWER != 5) {
    ТВОЙ КОД;
    }
    cout << "GoodBye!";
    return 0;
    }
     
  13. Vova96

    Vova96 Старожил Пользователь

    Баллы:
    173
    Но... Я же... Я тоже самое писал.
    [​IMG]
     
    kreved нравится это.
  14. D_ART

    D_ART Старожил Девелопер Пользователь

    Баллы:
    173
    Имя в Minecraft:
    Artarious
    Что за ненависть к Goto ? В данном калькуляторе goto лучшее решение, чем ваши "индуские циклы, которые работают только 5 раз (или 4?)".
    Goto проявляет свои гадкие свойства в больших проектах, где он может запутывать множество кодеров своим "макоронным кодом", но тут в самый раз.

    Теперь собственно насчёт программы.
    Код:
    using std::cout;
    using std::cin;
    using namespace std;
    Это что за ужас? Одного using namespace std достаточно
    Код:
    int Zaversitj = 5;
        int Delenie = 4;
        int Umnozenie = 3;
        int Plus = 2;
        int Minus = 1;
        int answer = 5; 
    Используй принятый в С++ стиль именования переменных.
    Установи CP866 кодировку для выводного потока и выводи через wcout
    wcout.invoke( locale(".866") ) - точно не помню, как делать
    Поставь в начале флаг start. Потом уже в конце программы спрашивай, хочет ли, пользователь высчитать ещё раз что-то, если да, то переход к флагу start через goto
     
    caNek нравится это.
  15. Vova96

    Vova96 Старожил Пользователь

    Баллы:
    173
    Што? Какие пять раз? Он выполняется до тех пор, пока пользователь не введёт в переменную ANSWER число 5. Кое-кто даже в циклах не может разобраться, позор.
     
    Dr.Death, xvlad и kreved нравится это.
  16. D_ART

    D_ART Старожил Девелопер Пользователь

    Баллы:
    173
    Имя в Minecraft:
    Artarious
    Я в код НЕ вчитывался
     
  17. vvswarhead

    vvswarhead Старожил Пользователь

    Баллы:
    173


    через goto как то не куул, лучше добавить переменную типа char или булееву, и в цикле проверять пока она не изменить свое значение
     
  18. kreved

    kreved Старожил Пользователь

    Баллы:
    103
    Skype:
    kre_ved
    Имя в Minecraft:
    kreved_
    Мой и ВоВВВВВВВВВВВВВВВВВЫ способ лучше :3
     
  19. Dr.Death

    Dr.Death Старожил Пользователь

    Баллы:
    153
    Skype:
    asn008
    Имя в Minecraft:
    DrDeath
    Поздравляю, вы только что назвали Линуса Торвальдса индусом.
    Окей, зачем тогда нужно было врываться в тред и делать срыв покровов?
     
  20. apiocera

    apiocera Активный участник Пользователь

    Баллы:
    78
    Стоит заметить, что в Linux Kernel goto используется для достаточно узкого спектра задач.
     
    slavik123123123 нравится это.

Поделиться этой страницей