Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
klyuka
0 / 0 / 0
Регистрация: 21.01.2014
Сообщений: 5
#1

Выполнить одно из указанных пользователем арифметических действий над двумя числами - C++

21.01.2014, 14:26. Просмотров 417. Ответов 5
Метки нет (Все метки)

Всем доброго дня! Помогите пожалуйста решить задачу.
Задача: Разработайте программу, которая бы выполняла одно из указанных пользователем арифметических действий над двумя числовыми значениями.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.01.2014, 14:26
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Выполнить одно из указанных пользователем арифметических действий над двумя числами (C++):

Программа выполнения арифметических действий с очень большим целыми числами - C++
Программа выполнения арифметических действий с очень большим целыми числами. Примерно с такими числами: 457332896548547 1.Вивести...

Создайте класс с именем Complex для выполнения арифметических действий с комплексными числами - C++
В Общем программу написал, складывает-вычитает, но преподаватель требует в нее добавить класс комплексных чисел, не знаю как #include...

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

Выполнить над прямоугольной матрицей последовательность действий - C++
Доброго времени суток, помогите написать программу, ибо уже отчаялся... Выполнить над прямоугольной матрицей B с размером m x n...

Выполнить над квадратной матрицей А порядка n последовательность действий, указанную в задании - C++
Нужна помощь народ ! Мне задали в универе такую батву аш волосы дыбом . В С++ я полный нуль так что если можно прокомментируте прогу ...

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

5
TSed
20 / 20 / 1
Регистрация: 22.01.2013
Сообщений: 76
21.01.2014, 17:07 #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
#include <iostream>
template <class T>
struct func{
    T add(T fNum, T sNum){
        return fNum + sNum;
    }
    T sub(T fNum, T sNum){
        return fNum - sNum;
    }
    T mul(T fNum, T sNum){
        return fNum * sNum;
    }
    T div(T fNum, T sNum){
        if (sNum == 0) {
            std::count<<"Error! Division by zero!"<<std::endl;
            exit(1);
        }
        return fNum / sNum;
    }
};
int main(){
    func<int> f;
    std::cout<<f.add(1,2)<<std::endl;
    system ("pause");
    return 0;
}
0
Extrim88
50 / 50 / 11
Регистрация: 08.02.2013
Сообщений: 189
21.01.2014, 17:11 #3
TSed, программа должна выполнять действие, выбираемое пользователем, а не жестко зашитое в коде...
Т.е. нужно организовать еще диалог по выбору одной из арифметических операций и ввода двух числовых значений.
0
TSed
20 / 20 / 1
Регистрация: 22.01.2013
Сообщений: 76
21.01.2014, 17:13 #4
Extrim88, знаю, читал. Это просто пример шаблонных функций, диалог написать не трудно, надеялся что автор это сам сможет сделать.
1
klyuka
0 / 0 / 0
Регистрация: 21.01.2014
Сообщений: 5
21.01.2014, 17:35  [ТС] #5
Цитата Сообщение от TSed Посмотреть сообщение
Extrim88, знаю, читал. Это просто пример шаблонных функций, диалог написать не трудно, надеялся что автор это сам сможет сделать.
Спасибо большое, дописал. Все работает
0
Kastaneda
Jesus loves me
Эксперт С++
4703 / 2907 / 239
Регистрация: 12.12.2009
Сообщений: 7,405
Записей в блоге: 2
Завершенные тесты: 1
21.01.2014, 18:11 #6
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Вот немного извращения
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
#include <iostream>
#include <map>
 
#define OPS_TO_FUNC(name) name##func
 
#define CREATE_FUNCTION(name, op) \
    template <class T> \
    T OPS_TO_FUNC(name) (T left, T right) \
    { \
        return left op right; \
    }
 
enum Ops {Begin, Add, Sub, Mul, Div, End};
 
CREATE_FUNCTION (Add, +)
CREATE_FUNCTION (Sub, -)
CREATE_FUNCTION (Mul, *)
CREATE_FUNCTION (Div, /)
 
template <class T>
void init (std::map<Ops, T(*)(T, T)> &functions)
{
    functions[Add] = OPS_TO_FUNC(Add);
    functions[Sub] = OPS_TO_FUNC(Sub);
    functions[Mul] = OPS_TO_FUNC(Mul);
    functions[Div] = OPS_TO_FUNC(Div);
}
 
int main ()
{
    std::map<Ops, int(*)(int, int)> functions;
    init (functions);
 
    int left, right;
    std::cout << "Enter first operand: ";
    std::cin >> left;
    std::cout << "Enter second operand: ";
    std::cin >> right;
 
    std::cout << "Enter operation:\n\t1: +\n\t2: -\n\t3: *\n\t4: /\n";
 
    int operation = (int)Begin;
    do {
        std::cin >> operation;
    } while (!(operation > (int)Begin && operation < (int)End) &&
           std::cout << "Invalid input, repeat" << std::endl);
 
    std::cout << "Answer: " << functions[(Ops)operation](left, right) << std::endl;
}
0
21.01.2014, 18:11
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.01.2014, 18:11
Привет! Вот еще темы с ответами:

Выполнить над числами указанное действие - C++
С++ начал только вот учить, еще очень мало что знаю, помогите плззз!!! Арифметические действия над числами пронумерованы следующим...

Выполнить над числами указанное действие и вывести результат. - C++
Арифметические действия над числами пронумерованны следующим образом: 1-сложение, 2- вычитание, 3- умножение, 4-деление. Дан номер...

Выполнить над числами указанное действие и вывести результат - C++
14 Арифметические действия над числами пронумерованы следующим образом: 1 — сложение, 2 — вычитание, 3 — умножение, 4 — деление. Дан номер...

Swich: реализовать все возможные операции над двумя целыми числами - C++
Составить программу, которая бы реализовала все возможные операции над двумя целыми числами (умножение, сложение, вычитание, деление,...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

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