Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Алиисаа
0 / 0 / 0
Регистрация: 05.02.2019
Сообщений: 3
1

Перегрузка функций в Си++

05.02.2019, 12:09. Просмотров 498. Ответов 10

Написать программу, в которой применяется механизм перегруженных функций, для решения поставленных задач.
а) целые числа возводит в степень n;
б) из десятичных чисел извлекает корень степени n.
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.02.2019, 12:09
Ответы с готовыми решениями:

Множественное наследование, Перегрузка функций, Перегрузка операторов, Использование дружественных функций и классов, Использование шаблонов классов
Здравствуйте!!! Я бы хотел попросить помоч решить...ну или скинуть примеры таких задач, если вдруг...

Перегрузка функций. Реализация функций
Разработать функцию f(x) , которая возвращает младшую цифру натурального числа x . Вычислить с ее...

Перегрузка функций
Помогите написать программу: Перегрузка функций. Написать перегруженные функции и основную...

C ++ Перегрузка функций
Определить класс-строку. В класс включить два конструктора: для определения класса строки строкой...

Перегрузка функций с++
Прошу помочь в решении задачи: Написать перегруженные функции и основную программу, которая их...

10
nemo19
4 / 3 / 1
Регистрация: 22.04.2018
Сообщений: 21
Завершенные тесты: 2
05.02.2019, 14:52 2
Почитайте Роберта Лафоре "Объектно-ориентированное программирование в С++". Там все подробно описано.
0
SomniPhobia
352 / 256 / 101
Регистрация: 22.11.2017
Сообщений: 707
05.02.2019, 17:26 3
Алиисаа, привет!
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
#include <iostream>
#include <cmath>
 
using namespace std;
 
long long f(const int &a, const double &n);
 
double f(const double &a, const double &n);
 
int main()
{
    system("color 0A");
    
    cout << f(5, 4.) << " " << f(27., 3.) << endl;
    
    system("pause");
    return 0;
}
 
long long f(const int &a, const double &n)
{
    return pow(a, n);
}
 
double f(const double &a, const double &n)
{
    return pow(a, 1. / n);
}
0
zss
05.02.2019, 17:38
  #4
 Комментарий модератора 
nemo19,
П.5.24. Правил
Запрещено давать ответы в виде одной ссылки или списка ссылок. В этом случае необходимо привести ответ полностью и оставить ссылку на источник. Исключением являются ссылки на страницы самого форума.

Приведите цитату и полную ссылку с указанием номеров страниц.
0
Azazel-San
Mental handicap
1076 / 535 / 153
Регистрация: 24.11.2015
Сообщений: 2,186
Завершенные тесты: 1
05.02.2019, 17:40 5
Цитата Сообщение от SomniPhobia Посмотреть сообщение
return pow(a, n);
Так лучше не делать.
0
SomniPhobia
352 / 256 / 101
Регистрация: 22.11.2017
Сообщений: 707
05.02.2019, 17:41 6
Цитата Сообщение от Azazel-San Посмотреть сообщение
Так лучше не делать.
Как лучше это записать?
0
Azazel-San
Mental handicap
1076 / 535 / 153
Регистрация: 24.11.2015
Сообщений: 2,186
Завершенные тесты: 1
05.02.2019, 17:44 7
Цитата Сообщение от SomniPhobia Посмотреть сообщение
Как лучше это записать?
std::pow - перегружен только для чисел с плавающей точкой https://en.cppreference.com/w/cpp/numeric/math/pow
Я бы сделал что-то типо
C++
1
2
3
int constexpr ipow(int const b, int const e) {
    return (e == 0) ? 1 : b * ipow(b, e - 1);
}
не тестил
0
SomniPhobia
352 / 256 / 101
Регистрация: 22.11.2017
Сообщений: 707
05.02.2019, 17:47 8
Azazel-San, спасибо за уточнение.
Может можно тогда было явно привести тип к double, чтобы соответствовать сигнатуре перегрузки?
0
Azazel-San
Mental handicap
1076 / 535 / 153
Регистрация: 24.11.2015
Сообщений: 2,186
Завершенные тесты: 1
05.02.2019, 17:58 9
Цитата Сообщение от SomniPhobia Посмотреть сообщение
Может можно тогда было явно привести тип к double, чтобы соответствовать сигнатуре перегрузки?
А что это изменит, он и так будет приведен, только неявно. В задании же просили целые числа возводить, ваши обертки просто пустышки, с таким успехом можно было сразу pow вызывать.
0
SomniPhobia
352 / 256 / 101
Регистрация: 22.11.2017
Сообщений: 707
05.02.2019, 18:21 10
Цитата Сообщение от Azazel-San Посмотреть сообщение
ваши обертки просто пустышки, с таким успехом можно было сразу pow вызывать.
Надо было показать механизм перегруженных функций. По Вашему, надо написать что - то сложнее? А так да, сразу pow() вызывать лучше, чем их оборачивать в функции.
0
Azazel-San
Mental handicap
1076 / 535 / 153
Регистрация: 24.11.2015
Сообщений: 2,186
Завершенные тесты: 1
05.02.2019, 18:27 11
Цитата Сообщение от SomniPhobia Посмотреть сообщение
Надо было показать механизм перегруженных функций. По Вашему, надо написать что - то сложнее? А так да, сразу pow() вызывать лучше, чем их оборачивать в функции.
Это не единственное условие. Раз уж взялись будьте добры придерживатся ТЗ.
0
05.02.2019, 18:27
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.02.2019, 18:27

перегрузка функций
Написать реализацию перегруженных функций: long func (long * arr, int length); float func (float...

Перегрузка функций
Есть функция Message которую я пытаюсь перегрузить. Вроде все правильно, но не работает:cry: ....

Перегрузка функций
Задача такая: перегрузить * так чтобы время умножалось на число, и так чтобы число умножалось на...


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

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

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