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

Создать массив указателей на функции. Функции выполняют арифметические действия

07.06.2020, 17:24. Показов 1188. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Создать массив указателей на функции. Функции выполняют арифметические действия. Как это можно реализовать?
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
07.06.2020, 17:24
Ответы с готовыми решениями:

Различные функции, для которых можно создать массив указателей на функции
Придумайте не менее 3-х различных функций, для которых можно создать массив указателей на функции.

Создать специфицированный шаблон функции, принимающей массив указателей на char и количество самих указателей
Задача: создать специфицированный шаблон функции, принимающей массив указателей на char и количество самих указателей. Вернуть адрес...

Создать функции для вычисления n! и a^b , используя только только арифметические действия
Создать функции для вычисления n! и a^b ,используя только только арифметические действия (+, –, :, ). Вычислить выражения, используя...

3
 Аватар для FFPowerMan
2158 / 1238 / 509
Регистрация: 11.10.2018
Сообщений: 6,280
07.06.2020, 17:34
Лучший ответ Сообщение было отмечено RadioPhysik как решение

Решение

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
#include <iostream>
#include <stdio.h>
using namespace std;
 
void add(int x, int y)
{
    printf("x+y=%d \n", x+y);
}
void subtract(int x, int y)
{
    printf("x-y=%d \n", x-y);
}
void multiply(int x, int y)
{
    printf("x*y=%d \n", x*y);
}
 
int main()
{
    int a = 10;
    int b = 5;
    void (*operations[3])(int, int) = {add, subtract, multiply};
     
    //получаем длину массива
    int length = sizeof(operations)/sizeof(operations[0]);
     
    for(int i = 0; i < length; i++)
    {
        operations[i](a, b);    // вызов функции по указателю
    } 
    
    return 0;
}
1
264 / 183 / 87
Регистрация: 03.05.2020
Сообщений: 790
07.06.2020, 17:45
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
double sum(double a,double b)
{
    return a+b;
}
double sub(double a,double b)
{
    return a-b;
}
double mul(double a,double b)
{
    return a*b;
}
double div(double a,double b)
{
    return a/b;
}
void main()
{
    double a,b;
    cout<<"a b: ";
    cin>>a>>b;
    double (*f[])(double,double)={sum,sub,mul,div};
    string s="+-*/";
    for(int i=0; i<(int)s.length(); i++)
        cout<<a<<s[i]<<b<<"="<<f[i](a,b)<<endl;
    system("pause");
}
1
75 / 48 / 28
Регистрация: 07.01.2019
Сообщений: 168
07.06.2020, 20:10
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
#include <iostream>
#include <string>
#include <vector>
#include <functional>
using namespace std;
 
int add(const int x, const int y){
    return x + y;
}
int subtract(const int x, const int y){
    return x - y;
}
int multiply(const int x, const int y){
    return x * y;
}
int division(const int x, const int y) {
    return x / y; //вернется не вещественное число
}
int main()
{
    vector<std::function<int(int, int)>> arr{ add, subtract, multiply, division };
    int x, y;
    cin >> x >> y;
    for (auto i : arr) {
        cout << i(x, y) << " ";
    }
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
07.06.2020, 20:10
Помогаю со студенческими работами здесь

Создать функции для вычисления n! и a^b, используя только только арифметические действия
Создать функцию для вычисления n! и ab, используя только только арифметические действия (+, –, :, ·). Вычислить выражения, используя...

Как создать массив из указателей на функции?
#include &lt;iostream&gt; using namespace std; const int SLEN = 30; struct student { char fullname; char hobby; int ooplevel; ...

Создать массив из указателей которые указывают на функции
Как можно создать массив из указателей которые указывают на функции?

Создать массив заданной размерности с помощью функции и указателей
#include &lt;iostream&gt; #include &lt;conio.h&gt; using namespace std; void z(int *p){ int a; for (int p=a;p&lt;a+*(p-1);p++){ ...

Виртуальные функции (создать массив указателей на объекты трех классов)
Задание: создать массив указателей на объекты трех классов. Метод Show почему-то не переопределяется. В данном коде вводится 3 элемента в...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru