C++ Продвинутый инженерный калькулятор

money++
Разработчик
Статус
Оффлайн
Регистрация
14 Июн 2018
Сообщения
638
Реакции[?]
339
Поинты[?]
22K
Чем тебе это не правильное направление?
Человек дал базовый код с которого уже можно сделать - Продвинутый Инженерный Калькулятор.
В сообщении ниже человек тоже дал "базовый код с которого уже можно сделать - Продвинутый Инженерный Калькулятор". И что?
Вот держи.
На данном примере легко написать калькулятор. Но я не стал писать тебе полный код так как ты ничего сам никогда не научишься смотря на готовый чужой код.
C++:
// Подключение iostream [cout, endl, cin]
#include <iostream>
// Подключение Windows.h Это файл заголовка не библиотека подключаю я его для[DWORD, SetConsoleCP, SetConsoleOutputCP]
#include <Windows.h>

// Использование неймспейсов нужных функций.
using std::cout;
using std::endl;
using std::cin;

// точка входа MainPart.
int main(DWORD first, DWORD second, DWORD resdw, unsigned int switches, unsigned int result) {
    // Использование русского языка для вида.
    setlocale(LC_ALL, "Russian");
    // Кодировка на русский.
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    // Спрашиваем пользователя, что ему нужно.
    cout << "1. +" << endl;
    cout << "Выберете нужный вам пункт, меню: ";
    // вписываем это в switch.
    cin >> switches;
    // result++;
    switch (switches) {
        // Условие в котором что то должно произойти. В нашем случаи. Спрашиванию пользователя и прибавлению введенных им числа
        case 1: {
            cout << "Введите первое число: " << endl; cin >> first;
            cout << "Введите первое число: " << endl; cin >> second;
            resdw = first + second;
            /*
            * У нас нету второго свитча его можно не ставить.
            * (Он перебрасывает нас на 38 строчку кода. Тем самым не давая выполнить другой switch)
            */
            break;
        };
    };
    // Выводим результат.
    cout << "Результат\t" << resdw << endl;
    // result--;
    // Не даем закрыться сразу программе.
    cin.get();
    // Завершаем успешно код.
    return result;
};
 
Начинающий
Статус
Оффлайн
Регистрация
1 Дек 2020
Сообщения
35
Реакции[?]
2
Поинты[?]
0
Нормально посылать результат работы программы сразу в параметры запуска? :roflanEbalo:
И числа там же создавать :roflanEbalo:
Да еще и DWORD'ы... Попробуй посчитать DWORD'ами 1-2 :roflanPominki:
А еще мем с закоменченными result++ и result-- :roflanEbalo:
Короче, складывается впечатление что ты долбоеб (хотел мягче, но не смог).
Реально, зачем ты вообще высрал (снова хотел мягче, и опять не смог) свое сообщение?

Особенно на такой :roflanPominki:
Я обычно не трачу время на тех, кто мол ебать какой ахуенный, тут. И ты не разу не написал в этой теме, код задающему вопрос. Какого хуя ты себе интернет не удалил?
 
money++
Разработчик
Статус
Оффлайн
Регистрация
14 Июн 2018
Сообщения
638
Реакции[?]
339
Поинты[?]
22K
Я обычно не трачу время на тех, кто мол ебать какой ахуенный, тут. И ты не разу не написал в этой теме, код задающему вопрос. Какого хуя ты себе интернет не удалил?
Я несколько раз написал, что как только будет конкретный вопрос я помогу. А не "напишите за меня фулл код". Но если ты таки решил писать человеку что-то в ответ, особенно если человек не очень шарит и не может проанализировать тобой отвеченне, то это не должно быть хрен знает что. Серьезно, все что ты написал это пиздец, а не код. Такая помощь куда хуже ее отсутствия
 
Начинающий
Статус
Оффлайн
Регистрация
1 Дек 2020
Сообщения
35
Реакции[?]
2
Поинты[?]
0
Я несколько раз написал, что как только будет конкретный вопрос я помогу. А не "напишите за меня фулл код". Но если ты таки решил писать человеку что-то в ответ, особенно если человек не очень шарит и не может проанализировать тобой отвеченне, то это не должно быть хрен знает что. Серьезно, все что ты написал это пиздец, а не код. Такая помощь куда хуже ее отсутствия
Напиши лучше какого хуя ты на этом форуме осуждаешь тех, кто помогает. Ты даже не в сили написать простой код который я написал, в этом коде не хуков, нихуя лучше не написать, если такой грамотный, напиши щас ему "Топовый код"
 
money++
Разработчик
Статус
Оффлайн
Регистрация
14 Июн 2018
Сообщения
638
Реакции[?]
339
Поинты[?]
22K
Напиши лучше какого хуя ты на этом форуме осуждаешь тех, кто помогает
Тех кто помогает я не осуждаю, просто твой код ему мог только помешать

Ты даже не в сили написать простой код который я написал
Ты даже не в силе по-русски писать. И откуда такая уверенность в том, что я не смогу написать такой код? (Конкретно твой не смогу разве что из-за т.н. programmers pride, но аналогичный куда более адекватный - легко)

в этом коде не хуков
Какие хуки для инженерного калькулятора, ты чего?

нихуя лучше не написать
Твой калькулятор не сможет в отрицательные числа, ты о чем, как это ничего лучше не написать...

если такой грамотный, напиши щас ему "Топовый код"
Как только он ответит с чем конкретно ему нужна помощь - я ему помогу. И код будет адекватным, в отличие от твоей пародии на код
 
Начинающий
Статус
Оффлайн
Регистрация
1 Дек 2020
Сообщения
35
Реакции[?]
2
Поинты[?]
0
Тех кто помогает я не осуждаю, просто твой код ему мог только помешать


Ты даже не в силе по-русски писать. И откуда такая уверенность в том, что я не смогу написать такой код? (Конкретно твой не смогу разве что из-за т.н. programmers pride, но аналогичный куда более адекватный - легко)


Какие хуки для инженерного калькулятора, ты чего?


Твой калькулятор не сможет в отрицательные числа, ты о чем, как это ничего лучше не написать...


Как только он ответит с чем конкретно ему нужна помощь - я ему помогу. И код будет адекватным, в отличие от твоей пародии на код
Боже, я так ору с тебя. Первое ты осуждаешь. Второе данный человек, который создал данную, тему, не в силе спросить что-то адекватное.
И опять же ты осуждал, просто тебе надо что-бы на твой счет добавилась единичка сообщения, я не удивлен, это твой, стимул.
 
money++
Разработчик
Статус
Оффлайн
Регистрация
14 Июн 2018
Сообщения
638
Реакции[?]
339
Поинты[?]
22K
Боже, я так ору с тебя. Первое ты осуждаешь. Второе данный человек, который создал данную, тему, не в силе спросить что-то адекватное.
И опять же ты осуждал, просто тебе надо что-бы на твой счет добавилась единичка сообщения, я не удивлен, это твой, стимул.
Каво...

Ладно, начнем сначала - я осуждаю людей которые помогают не разбираясь в теме (твой код НЕадекватный - поэтому попытка помочь не засчитана за помощь, а ровно наооборот - я показываю в первую очередь ТСу где твой код полное говно, чтобы он его ни в коем случае не скопировал и не получил двойку)

Да, он не в силах, но это не повод отвечать ему твоим кодом. Пускай учится нормально формулировать вопросы - я сразу же помогу

Про единичку сообщения это вообще пздц, мне куда больше эмпонирует отношение симпатии/сообщения (а сообщения без реакций уменьшают его - пояснил для тебя специально), но и на него мне +/- все равно. Да и зачем мне эти сообщения, скажи? У меня их хватает чтобы смотреть все адекватные хайды, смысла качать бесплатную группу мне нет, так как Gradient Group куда круче в плане лимитов. Тут скорее ты пытаешься своими максимально тупыми сообщениями поднять себе чего-то
 
Начинающий
Статус
Оффлайн
Регистрация
1 Дек 2020
Сообщения
35
Реакции[?]
2
Поинты[?]
0
Каво...

Ладно, начнем сначала - я осуждаю людей которые помогают не разбираясь в теме (твой код НЕадекватный - поэтому попытка помочь не засчитана за помощь, а ровно наооборот - я показываю в первую очередь ТСу где твой код полное говно, чтобы он его ни в коем случае не скопировал и не получил двойку)

Да, он не в силах, но это не повод отвечать ему твоим кодом. Пускай учится нормально формулировать вопросы - я сразу же помогу

Про единичку сообщения это вообще пздц, мне куда больше эмпонирует отношение симпатии/сообщения (а сообщения без реакций уменьшают его - пояснил для тебя специально), но и на него мне +/- все равно. Да и зачем мне эти сообщения, скажи? У меня их хватает чтобы смотреть все адекватные хайды, смысла качать бесплатную группу мне нет, так как Gradient Group куда круче в плане лимитов. Тут скорее ты пытаешься своими максимально тупыми сообщениями поднять себе чего-то
Я в гугле, сам научился хукать что-либо для примера WindowProc, а ты как и он не в силе написать такой же код как и я. Хотя я говорил что код не из лучших но по нему можно вообще что-то понять и написать. На этом точка.
 
money++
Разработчик
Статус
Оффлайн
Регистрация
14 Июн 2018
Сообщения
638
Реакции[?]
339
Поинты[?]
22K
Я в гугле, сам научился хукать что-либо для примера WindowProc, а ты как и он не в силе написать такой же код как и я. Хотя я говорил что код не из лучших но по нему можно вообще что-то понять и написать. На этом точка.
Вот и видно, что ты учился в гугле. Твой код - гавно, то, что из него можно забрать, можно написать самому (условный switch ты или знаешь, или забрать не сможешь). Тебе не стоило что-то рекомендовать, потому что ты этим только помешал. Хочешь научится нормальному коду? Иди в универ или на курсы. Потому что в гугле можно легко напороться на совет такого как ты.

А про в силе/не в силе это вообще отдельная тема - я пишу много чего под заказ, я поступил в универ (в универы на самом деле, мог сам выбирать куда пойти, меня звали в тоже МФТИ и ИТМО) через олимпиаду по информатике, я умею писать красивый и безопасный код и т.д. - написать тот калькулятор для меня дело 3х минут. Но куда полезнее для ТСа (и даже для тебя, если ты все-таки достанешь мозги из места под спиной) будет если я объясню почему твой код лучше бы никогда не был написан
 
ставь чайник, зажигай плиту
Эксперт
Статус
Оффлайн
Регистрация
22 Май 2020
Сообщения
1,444
Реакции[?]
1,092
Поинты[?]
10K
C++:
#include <iostream>
#include <Windows.h>
using namespace std;

float operation(int cmd) {
    float res = 0.f;

    return res;
}

float conversion(int type, bool length) {
    float from = 0.f;
    float res = 0.f;

    cout << "Введите количество " << (length ? "см" : "кг") << ": ";
    cin >> from;
    
    switch (type)
    {
    case 1: {
        res = length ? (from * 10) : (from * 1000000);
        break;
    }
    case 2: {
        res = length ? (from / 10) : (from * 1000);
        break;
    }
    case 3: {
        res = length ? (from / 100) : (from / 1000);
        break;
    }
    case 4: {
        res = from / 100000;
    }
    default: break;
    }

    return res;
}

int main()
{
    setlocale(LC_ALL, "Russian");
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);

    while (true)
    {
    START:

        cout << "Здравствуй, дорогой пользователь." << endl;
        cout << "Если хотите произвести действие, то введите: 1" << endl;
        cout << "Если хотите произвести перевод единиц, то введите: 2 \n" << endl;       

        int cmd = 0;
        cout << "Ваш выбор: ";
        cin >> cmd;

        cout << "\n-----------------------------------------------------------------------------------------\n" << endl;
        cout << "Вы выбрали цифру №" << cmd << ". ";

        switch (cmd) {
        case 1: {
            cout << "Прошу, выберите действие, которое хотите произвести: \n" << endl;

            cout << "1. Сложение" << endl;
            cout << "2. Вычитание" << endl;
            cout << "3. Умножение" << endl;
            cout << "4. Деление" << endl;
            cout << "5. Вовезедение в степень" << endl;
            cout << "6. Корень" << endl;
            cout << "7. Логарифм" << endl;
            cout << "8. Факториал\n" << endl;

            cout << "Ваш выбор: ";
            cin >> cmd;

            if (cmd > 8 || cmd < 1)
                break;

            cout << "\n" << endl;
            operation(cmd);

            break;
        }
        case 2: {
            cout << "Прошу, выберите единицу измерения: \n" << endl;

            cout << "1. Единица изменерия длины" << endl;
            cout << "2. Единица изменерия массы\n" << endl;
          
            cout << "Ваш выбор: ";
            cin >> cmd;
            
            if (cmd > 2 || cmd < 1)
                break;

            bool length = cmd == 1;

            cout << "\n" << endl;

            // Следующий этап - выбор типа перевода
            cout << "Прошу, выберите единицу перевода: \n" << endl;
            switch (cmd) {
            case 1: {
                cout << "1. См - Мм" << endl;
                cout << "2. См - Дц" << endl;
                cout << "3. См - М" << endl;
                cout << "4. См - Км" << endl;

                break;
            }
            case 2:
            {
                cout << "1. Кг - Мг" << endl;
                cout << "2. Кг - Г" << endl;
                cout << "3. Кг - Т" << endl;

                break;
            }
            default: break;
            }
            
            int type = 0;
            cout << "Ваш выбор: ";
            cin >> type;

            if ((cmd == 1 && type > 4) || (cmd == 2 && type > 3) || type < 1)
                break;

            cout << "\nВаш ответ = " << conversion(type, length);

            break;
        }
        default: break;
        }

        cout << "\n-----------------------------------------------------------------------------------------\n" << endl;
    }

    return 0;
}
С математическими операциями сам разберёшься
 
Начинающий
Статус
Оффлайн
Регистрация
1 Дек 2020
Сообщения
35
Реакции[?]
2
Поинты[?]
0
C++:
#include <iostream>
#include <Windows.h>
using namespace std;

float operation(int cmd) {
    float res = 0.f;

    return res;
}

float conversion(int type, bool length) {
    float from = 0.f;
    float res = 0.f;

    cout << "Введите количество " << (length ? "см" : "кг") << ": ";
    cin >> from;
   
    switch (type)
    {
    case 1: {
        res = length ? (from * 10) : (from * 1000000);
        break;
    }
    case 2: {
        res = length ? (from / 10) : (from * 1000);
        break;
    }
    case 3: {
        res = length ? (from / 100) : (from / 1000);
        break;
    }
    case 4: {
        res = from / 100000;
    }
    default: break;
    }

    return res;
}

int main()
{
    setlocale(LC_ALL, "Russian");
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);

    while (true)
    {
    START:

        cout << "Здравствуй, дорогой пользователь." << endl;
        cout << "Если хотите произвести действие, то введите: 1" << endl;
        cout << "Если хотите произвести перевод единиц, то введите: 2 \n" << endl;      

        int cmd = 0;
        cout << "Ваш выбор: ";
        cin >> cmd;

        cout << "\n-----------------------------------------------------------------------------------------\n" << endl;
        cout << "Вы выбрали цифру №" << cmd << ". ";

        switch (cmd) {
        case 1: {
            cout << "Прошу, выберите действие, которое хотите произвести: \n" << endl;

            cout << "1. Сложение" << endl;
            cout << "2. Вычитание" << endl;
            cout << "3. Умножение" << endl;
            cout << "4. Деление" << endl;
            cout << "5. Вовезедение в степень" << endl;
            cout << "6. Корень" << endl;
            cout << "7. Логарифм" << endl;
            cout << "8. Факториал\n" << endl;

            cout << "Ваш выбор: ";
            cin >> cmd;

            if (cmd > 8 || cmd < 1)
                break;

            cout << "\n" << endl;
            operation(cmd);

            break;
        }
        case 2: {
            cout << "Прошу, выберите единицу измерения: \n" << endl;

            cout << "1. Единица изменерия длины" << endl;
            cout << "2. Единица изменерия массы\n" << endl;
         
            cout << "Ваш выбор: ";
            cin >> cmd;
           
            if (cmd > 2 || cmd < 1)
                break;

            bool length = cmd == 1;

            cout << "\n" << endl;

            // Следующий этап - выбор типа перевода
            cout << "Прошу, выберите единицу перевода: \n" << endl;
            switch (cmd) {
            case 1: {
                cout << "1. См - Мм" << endl;
                cout << "2. См - Дц" << endl;
                cout << "3. См - М" << endl;
                cout << "4. См - Км" << endl;

                break;
            }
            case 2:
            {
                cout << "1. Кг - Мг" << endl;
                cout << "2. Кг - Г" << endl;
                cout << "3. Кг - Т" << endl;

                break;
            }
            default: break;
            }
           
            int type = 0;
            cout << "Ваш выбор: ";
            cin >> type;

            if ((cmd == 1 && type > 4) || (cmd == 2 && type > 3) || type < 1)
                break;

            cout << "\nВаш ответ = " << conversion(type, length);

            break;
        }
        default: break;
        }

        cout << "\n-----------------------------------------------------------------------------------------\n" << endl;
    }

    return 0;
}
С математическими операциями сам разберёшься
Бля чел красава, сразу видно не майнкрафтер и у тебя нету стимула на сообщения

)
 
Разработчик
Статус
Оффлайн
Регистрация
1 Сен 2018
Сообщения
1,598
Реакции[?]
880
Поинты[?]
114K
Написан плохо сразу говорю.
C++:
#include<cmath>
#include <iostream>
using namespace std;
int main()
{
    int type, number0, number1,rsc,result = 1;
    setlocale(LC_ALL, "Russian");
   cout << "Прошу выбрать режим калькулятора" << endl;
   cout << "0. Робота с числами" << endl;
   cout << "1.Робота с длиной" << endl;
   cout << "2.Робота с массой" << endl;
   cout << "Режим: ";
   cin >> type;

   switch (type){
   default:
       cout << "Ошибка!";
       break;

   case 0:
       cout << "Прошу выбрать операцию\n" << endl;
       cout << "0. Сложение (+)" << endl;
       cout << "1.Вычитание (-)" << endl;
       cout << "2.Умножение (*)" << endl;
       cout << "3. Деление (/)" << endl;
       cout << "4. Возведение в степень." << endl;
       cout << "5. Корень." << endl;
       cout << "6. Логарифм." << endl;
       cout << "7. Факториал" << endl;
       cout << "Операция :";
       cin >> rsc;

       switch (rsc)
       {
       default: cout << "Ошибка!"; break;


       case 0:
           cout << "Введите первое число: ";
           cin >> number0;
           cout << endl;
           cout << "Введите второе число: ";
           cin >> number1;
           cout << endl;
           result = number0 + number1;
           cout << "Результат: " << result << endl;
           break;

       case 1:
           cout << "Введите первое число: ";
           cin >> number0;
           cout << endl;
           cout << "Введите второе число: ";
           cin >> number1;
           cout << endl;
           result = number0 - number1;
           cout << "Результат: " << result << endl;
           break;
       case 2:
           cout << "Введите первое число: ";
           cin >> number0;
           cout << endl;
           cout << "Введите второе число: ";
           cin >> number1;
           cout << endl;
           result = number0 * number1;
           cout << "Результат: " << result << endl;
           break;

       case 3:
           cout << "Введите первое число: ";
           cin >> number0;
           cout << endl;
           cout << "Введите второе число: ";
           cin >> number1;
           cout << endl;
           result = number0 / number1;
           cout << "Результат: " << result << endl;
           break;

       case 4:
           cout << "Введите  число: ";
           cin >> number0;
           cout << endl;
           result = number0 * number0;
           cout << "Результат: " << result << endl;
           break;

       case 5:
           cout << "Введите  число: ";
           cin >> number0;
           cout << endl;
           result = sqrt(number0);
           cout << "Результат: " << result << endl;
           break;

       case 6:
           cout << "Введите  число: ";
           cin >> number0;
           cout << endl;
           result = log(number0);
           cout << "Результат: " << result << endl;
           break;

       case 7:
           cout << "Введите  число: ";
           cin >> number0;
           cout << endl;
           for (int i = 1; i < number0; i++)
           {
               result *= i;
           }
           result *= number0;
           cout << "Результат: " << result << endl;
           break;
       }
       break;

   case 1:
       cout << "Прошу выбрать операцию\n" << endl;
       cout << "0. Из сантиметров в миллиметры." << endl;
       cout << "1. Из сантиметров в дециметры." << endl;
       cout << "2. Из сантиметров в метры." << endl;
       cout << "3. Из сантиметров в километры." << endl;
       cout << "Операция :";
       cin >> rsc;
       cout << endl;
       switch (rsc)
       {
       default: cout << "Ошибка!"; break;


       case 0:
           cout << "Введите число: ";
           cin >> number0;
           cout << endl;
           result = number0 * 10;
           cout << "Результат: " << result << endl;
           break;

       case 1:
           cout << "Введите число: ";
           cin >> number0;
           cout << endl;
           result = number0 * 0.1;
           cout << "Результат: " << result << endl;
           break;

       case 2:
           cout << "Введите число: ";
           cin >> number0;
           cout << endl;
           result = number0 * 0.01;
           cout << "Результат: " << result << endl;
           break;

       case 3:
           cout << "Введите число: ";
           cin >> number0;
           cout << endl;
           double result2 = number0 * 0.00001;
           cout << "Результат: " << result2 << endl;
           break;
       }

   case 2:
       cout << "Прошу выбрать операцию\n" << endl;
       cout << "0. Из килограммов в миллиграммы.." << endl;
       cout << "1. Из Из килограммов в граммы." << endl;
       cout << "2. Из килограммов в тонны." << endl;
       cout << "Операция :";
       cin >> rsc;
       cout << endl;
       switch (rsc)
       {
       default: cout << "Ошибка!"; break;


       case 0:
           cout << "Введите число: ";
           cin >> number0;
           cout << endl;
           result = number0 * 1000000;
           cout << "Результат: " << result << endl;
           break;

       case 1:
           cout << "Введите число: ";
           cin >> number0;
           cout << endl;
           result = number0 * 1000;
           cout << "Результат: " << result << endl;
           break;

       case 2:
           cout << "Введите число: ";
           cin >> number0;
           cout << endl;
           result = number0 * 0.001;
           cout << "Результат: " << result << endl;
           break;
   }




}
 
Сверху Снизу