Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Alex1205
6 / 6 / 1
Регистрация: 14.01.2011
Сообщений: 81
#1

Калькулятор с указателем - C++

24.03.2011, 23:58. Просмотров 499. Ответов 1
Метки нет (Все метки)

Доброго всем времени суток! Вот наваял калькулятор,а вот как в нем можно использовать вместо переменных один указатель? Зараннее благодарен за помощь.

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
#include<iostream>
#include<conio.h>
using namespace std;
 
void add(float a,float b)
{
    cout<<a<<"+"<<b<<"="<<a+b<<"\n";
}
void sub(float a,float b)
{
    cout<<a<<"-"<<b<<"="<<a-b<<"\n";
}
void mul(float a,float b)
{
    cout<<a<<"*"<<b<<"="<<a*b<<"\n";
}
void div(float a,float b)
{
    cout<<a<<"/"<<b<<"="<<a/b<<"\n";
}
void main()
{
    float a,b;
    void(*pfunc[4])(float,float);
    pfunc[0] = add;
    pfunc[1] = sub;
    pfunc[2] = mul;
    pfunc[3] = div;
    while(true)
    {
        cout<<" Please,enter a :\n>";
        cin>>a;
        cout<<"\n\n";
        cout<<" Please,enter b :\n>";
        cin>>b;
        cout<<"\n\n";
        cout<<" Please,select : \n\n";
        cout<<"1 for add\n";
        cout<<"2 for sub\n";
        cout<<"3 for mul\n";
        cout<<"4 for div\n";
        cout<<"\n\n";
        char select;
        select = getch();
        if(select==27) break;
        if(select<49||select>52) continue;
        (*pfunc[select - 49])(a,b);
    }
    cout<<" Good bye !!\n";
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.03.2011, 23:58     Калькулятор с указателем
Посмотрите здесь:

Массив с указателем - C++
при формировании выходной строки каждый символ должен дублироваться. Например дана abc, а при выходе aabbcc/ Все это должно быть...

Цикл с указателем - C++
Программу, которая проверяет, сколько раз в строку входит знак ? нужно из такой #include &lt;iostream&gt; #include &lt;string&gt; using...

Работа с указателем - C++
Есть такой указатель: char *s=&quot;n1=1&amp;n2=2&amp;name=test&amp;sername=test2&quot;; Нужно выделить с этой стоки значение name, то есть &quot;test&quot; и...

Работа с указателем. - C++
Доброе время суток. При чтении из файла вроде все нормально, но когда я пытаюсь вручную установить указатель, в нужную позицию, и считать...

Работа с указателем - C++
#include &lt;ntddk.h&gt; NTSTATUS PsLookupProcessByProcessId(__in HANDLE ProcessId, __out PEPROCESS *Process); static VOID...

функция с указателем - C++
Плз, помогите.... :wall::help: надо написать на языке С Написать и протестировать функцию STRP ( str1, str2), которая возвращает...

функция с указателем - C++
насколько я поняла, то нужно с помощью функции(при этом используя указатели) написать код, который заменяет строчные буквы на заглавные ...

Непоняток с указателем - C++
Объясните пожалуйста надпись. Вот простенький пример. include &lt;iostream&gt; using namespace std; int cubeV (int *n) { *n = *n *...

smart pointer с указателем на new[] - C++
Как я понимаю, реализация shared_ptr boost или tr1 подразумевает, что в неё будет передан одиночный объект, который будет удален через...

Работа с указателем на функцию - C++
Пытаюсь сделать указатель, принимающий строку и возвращающий вектор интов, не получается с присвоением результата из указателя в переменную...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
IrineK
Заблокирован
25.03.2011, 10:49     Калькулятор с указателем #2
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
#include<iostream>
#include <conio.h>
#define ESC 27
using namespace std;
 
void add(float n[])
{   cout<<n[0]<<"+"<<n[1]<<"="<<n[0]+n[1]<<"\n";
}
void sub(float n[])
{   cout<<n[0]<<"+"<<n[1]<<"="<<n[0]-n[1]<<"\n";
}
void mul(float n[])
{   cout<<n[0]<<"+"<<n[1]<<"="<<n[0]*n[1]<<"\n";
}
void div(float n[])
{   cout<<n[0]<<"+"<<n[1]<<"="<<n[0]/n[1]<<"\n";
}
int main()
{
float num[2];
char select,cur;
char sign[4]={'+','-','*','/'};
 
void(*pfunc[4])(float[]);
pfunc[0] = add;
pfunc[1] = sub;
pfunc[2] = mul;
pfunc[3] = div;
while(true)
{
cin.sync();
cout<<"\n\nESC to quit. ANYKEY to continue\n\n";
if(getch() == ESC) break;
 
    cout<<"a :\t>";
    cin>>num[0];
    cout<<"b :\t>";
    cin>>num[1];
    cout<<"+,-,* or/: \t";
    cin>>cur;
    for(int i=0;i<4;i++)
        if(cur==sign[i]) (*pfunc[i])(num);
}
cout<<" Good bye !!\n";
cin.get();
}
Yandex
Объявления
25.03.2011, 10:49     Калькулятор с указателем
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru