Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/57: Рейтинг темы: голосов - 57, средняя оценка - 4.88
0 / 0 / 0
Регистрация: 01.04.2010
Сообщений: 6

Калькулятор на С++

01.04.2010, 12:22. Показов 11669. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
нужен калькулятор из 10-13 операций... На С++ ... Плиз.. описание на сколько можно просто... В граф оболочке... На курсовую...
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
01.04.2010, 12:22
Ответы с готовыми решениями:

Как преобразовать обычный калькулятор в калькулятор использующий класс стек?
#include <iostream> int main(){ int a = 0; int b = 0; char operation; std::cout << "Enter first number: "; ...

Простой калькулятор и калькулятор с парсингом
Ребят я совсем не давно только начал изучать сишку, решил написать простенький калькулятор который работает с 2 числами. Возник вопрос, как...

Калькулятор
Доброго времени суток! Ребята, у меня проблема вот в чем, хочу сделать калькулятор. Пример, есть какая-то строка с двумя числами и...

9
 Аватар для Elstan
212 / 105 / 34
Регистрация: 17.10.2009
Сообщений: 174
01.04.2010, 12:45
Держи:
Вложения
Тип файла: rar Калькулятор.rar (354.9 Кб, 2142 просмотров)
1
0 / 0 / 0
Регистрация: 01.04.2010
Сообщений: 6
01.04.2010, 12:48  [ТС]
спасибо... Но вот в коде :


C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
#include "Calc.h"
#include <math.h>
 
//---------------------------------------------------------------------------
 
#pragma package(smart_init)
  
 
//***************************   ADD  *********************
float CCalc::Add(float operand_1, float operand_2)
{
  return (operand_1+operand_2);
}
//************************end   ADD  *********************
 
 
//***************************   MUL  *********************
float CCalc::Mul(float operand_1, float operand_2)
{
  return (operand_1*operand_2);
}
//************************end   MUL  *********************
 
//***************************   VID  *********************
float CCalc::Vid(float operand_1, float operand_2)
{
  return (operand_1-operand_2);
}
//************************end   VID  *********************
 
//***************************   DIL  *********************
float CCalc::Dil(float operand_1, float operand_2)
{
  if (operand_2!=0)
    return (operand_1/operand_2);
  else
    return 0;
}
//************************end   DIL  *********************
 
 
//***************************   Sqrt *********************
float CSuperCalc::Sqrt(float operand_1)
{
  return (sqrt(operand_1));
}
//************************end   Sqrt *********************
 
//***************************   PlusMinus  *********************
float CSuperCalc::PlusMinus(float operand_1)
{
  return (PlusMinus(operand_1));
}
//************************end   PlusMinus  *********************
 
//***************************   Sqr  *********************
float CSuperCalc::Sqr(float operand_1)
{
  return (operand_1*operand_1);
}
//************************end   Sqr  *********************
 
//***************************   Sqr  *********************
float CSuperCalc::Sqrw(float operand_1)
{
  return (operand_1*operand_1*operand_1);
}
//************************end   Sqr  ********************



не пойму что и откуда... Создаем класс получается.??
0
 Аватар для Elstan
212 / 105 / 34
Регистрация: 17.10.2009
Сообщений: 174
01.04.2010, 13:01
Что здесь непонятного?
Add - сложение
Mul - умножение
Vid - отнимание
Dil - деление, деление на 0
Sqrt - корень квадратный
PlusMinus - плюс/минус
Sqr - x*2
Sqrw - x*3
0
0 / 0 / 0
Регистрация: 01.04.2010
Сообщений: 6
01.04.2010, 13:03  [ТС]
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
#include "stdafx.h"
#include <windows.h>
LRESULT CALLBACK HelloWorldWndProc(HWND, UNIT, UNIT, LONG);
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR IpszCmdParam, int nCmdShow)
{
    HWND hWND;
    WNDCLASS WndClass;
    MSG Msg;
    char szClassName[] = "Hello World!!";
    /*Регистрируем создаваемый класс*/
    /*заполняем структуру типа класс*/
    WndClass.style=CS_HREDRAW|CS_VREDRAW;
    WndClass.lpfnWndProc=HelloWorldWndProc;
    WndClass.cbClsExtra=0;
    WndClass.cbWndExtra=0;
    WndClass.hInstance=hInstance;
    WndClass.hIcon=LoadIcon(NULL, IDI_APPLICATION);
    WndCLass.hCursor=LoadCursor(NULL, IDC_ARROW);
    WndClass.hbrBackground=(HBRUSH) GetStockObject(WHITE_BRUSH);
    WndClass.lpszMenuName=NULL;
    WndClass.lpszClassName=szClassName;
 
    if (!RegisterClass(&WndClass))
    {
        MessageBox(NULL,"Cannot register class","Error",MB_OK);
        return 0;
    }
    hWnd=CreateWindow(szClassName, "Program No 1", WS_OVERLAPPEDWINDOW, CW_USEDEFAULT,CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDDEFAULT,NULL,NULL,hInstance,NULL);
    if (!hWnd)
    {
        MessageBox(NULL,"Cannot create window", "Error",MB_OK);
        return 0;
    }
        /*Show our window*/
        ShowWindow(hWnd,nCmdShow);
        UpdateWindow(hWnd);
 
        /*Beginning of messages cycle*/
        while (GetMessage(&Msg, NULL,0,0))
        {
            TranseteMessage(&Msg);
            DispatchMessage(&Msg);
        }
        return Msg.wParam;
}
    LRESULT CALLBACK HelloWorldWndProc(HWND hWnd, UNIT Message, UNIT wParam, LONG IParam)
    {
        HDC hDC;
        PAINTSTRUCT PaintStruct;
        RECT Rect;
        switch(Message)
        {
        case WM_PAINT:
                hDC=BeginPaint(hWnd, &PaintStruct);
                GetClientRect(hWnd, &Rect);
                WrawText(hDC,"Hello World!!", -1, &Rect, DT_SINGLELINE|DT_CENTER|DT_VCENTER);
                EndPaint(hWnd,&PaintStruct);
                return 0;
        case WM_DESTROY:
                PostQuitMessage(0);
                return 0;
        }
        return DefWindowProc(hWnd,Message,wParam,IParam);

можешь посмотреть что в коде не так.??..
0
 Аватар для Elstan
212 / 105 / 34
Регистрация: 17.10.2009
Сообщений: 174
01.04.2010, 13:11
А где у тебя ошибка?
0
0 / 0 / 0
Регистрация: 01.04.2010
Сообщений: 6
01.04.2010, 13:13  [ТС]
1>c:\users\павелитель\desktop\asd\asd\as d.cpp(5) : error C2061: синтаксическая ошибка: идентификатор "UNIT"
1>c:\users\павелитель\desktop\asd\asd\as d.cpp(15) : error C2440: =: невозможно преобразовать 'LRESULT (__stdcall *)(HWND)' в 'WNDPROC'
1> Для преобразования требуется reinterpret_cast, приведение в стиле С или приведение в стиле функции
1>c:\users\павелитель\desktop\asd\asd\as d.cpp(20) : error C2065: WndCLass: необъявленный идентификатор
1>c:\users\павелитель\desktop\asd\asd\as d.cpp(20) : error C2228: выражение слева от ".hCursor" должно представлять класс, структуру или объединение
1> тип: 'unknown-type'
1>c:\users\павелитель\desktop\asd\asd\as d.cpp(23) : error C2440: =: невозможно преобразовать 'char [14]' в 'LPCWSTR'
1> Типы, на которые указывают указатели, не связаны; для преобразования требуется reinterpret_cast, приведение в стиле С или приведение в стиле функции
1>c:\users\павелитель\desktop\asd\asd\as d.cpp(27) : error C2664: MessageBoxW: невозможно преобразовать параметр 2 из 'const char [22]' в 'LPCWSTR'
1> Типы, на которые указывают указатели, не связаны; для преобразования требуется reinterpret_cast, приведение в стиле С или приведение в стиле функции
1>c:\users\павелитель\desktop\asd\asd\as d.cpp(30) : error C2065: hWnd: необъявленный идентификатор
1>c:\users\павелитель\desktop\asd\asd\as d.cpp(30) : error C2065: CW_USEDDEFAULT: необъявленный идентификатор
1>c:\users\павелитель\desktop\asd\asd\as d.cpp(31) : error C2065: hWnd: необъявленный идентификатор
1>c:\users\павелитель\desktop\asd\asd\as d.cpp(33) : error C2664: MessageBoxW: невозможно преобразовать параметр 2 из 'const char [21]' в 'LPCWSTR'
1> Типы, на которые указывают указатели, не связаны; для преобразования требуется reinterpret_cast, приведение в стиле С или приведение в стиле функции
1>c:\users\павелитель\desktop\asd\asd\as d.cpp(37) : error C2065: hWnd: необъявленный идентификатор
1>c:\users\павелитель\desktop\asd\asd\as d.cpp(38) : error C2065: hWnd: необъявленный идентификатор
1>c:\users\павелитель\desktop\asd\asd\as d.cpp(43) : error C3861: TranseteMessage: идентификатор не найден
1>c:\users\павелитель\desktop\asd\asd\as d.cpp(48) : error C2061: синтаксическая ошибка: идентификатор "UNIT"
1>c:\users\павелитель\desktop\asd\asd\as d.cpp(53) : error C2065: Message: необъявленный идентификатор
1>c:\users\павелитель\desktop\asd\asd\as d.cpp(53) : error C2050: значение выражения для варианта выбора не является целым
1>c:\users\павелитель\desktop\asd\asd\as d.cpp(58) : error C3861: WrawText: идентификатор не найден
1>c:\users\павелитель\desktop\asd\asd\as d.cpp(65) : error C2065: Message: необъявленный идентификатор
1>c:\users\павелитель\desktop\asd\asd\as d.cpp(65) : error C2065: wParam: необъявленный идентификатор
1>c:\users\павелитель\desktop\asd\asd\as d.cpp(65) : error C2065: IParam: необъявленный идентификатор
1>Журнал построения был сохранен в "file://c:\Users\Павелитель\Desktop\asd\asd\Debu g\BuildLog.htm"
1>asd - ошибок 20, предупреждений 0
========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========



вот ошибки...
0
1 / 1 / 1
Регистрация: 03.03.2010
Сообщений: 124
09.04.2010, 18:27
Ну тебе надо и косинус и синус и так далее?
0
0 / 0 / 0
Регистрация: 01.04.2010
Сообщений: 6
10.04.2010, 15:48  [ТС]
C++
1
2
3
4
5
6
private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
             
             Display->Text=Display->Text+"1";
            float a;
            a=(float)atof(Display->Text);
}


вот код кнопки.... Почему то говорит вот такое.:
error C2664: atof: невозможно преобразовать параметр 1 из 'System::String ^' в 'const char *'

Добавлено через 20 часов 16 минут
Плиз кто нибудь опишите кнопку BackSpace... На основе предыдущего кода... Последняя осталась...)

Добавлено через 52 минуты
Как связать между собой 2 формы.???
0
0 / 0 / 0
Регистрация: 01.04.2010
Сообщений: 6
20.04.2010, 20:51  [ТС]
Всем спасибо за помощь!! )) Написал, сдал.)))
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
20.04.2010, 20:51
Помогаю со студенческими работами здесь

Калькулятор
Решил написать калькулятор с графическим интерфейсом, который будет реагировать на мышь. Основу интерфейса сделал, а вот как соединить его...

Калькулятор
Здравствуйте! Задача такая: написать калькулятор, но не простой, а читающий пример из файла. Узнал, что надо привести пример в другую...

Калькулятор
Калькулятор хотел создать на Дельфи не получается я новичок еще помагите пожалуйста

Калькулятор
Не могу понять как работает javascript в коде HTML может чего- то забыл написать... А точнее не работает кнопка Back Space в...

Калькулятор
проблема с калькулятором на виндовс 7. на калькуляторе видно пол рабочей облости, а цифры накладываются ода на одну. в чем дела?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru