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

Написать функцию возведения в степень - C++

Восстановить пароль Регистрация
 
banan4ik993
 Аватар для banan4ik993
0 / 0 / 0
Регистрация: 26.10.2013
Сообщений: 86
27.01.2014, 20:17     Написать функцию возведения в степень #1
Написать функцию, которая вычисляет значение а^b. Числа а и b могут быть любыми дробными положительными числами.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
_include
Студент
 Аватар для _include
52 / 52 / 12
Регистрация: 17.09.2012
Сообщений: 291
Записей в блоге: 2
Завершенные тесты: 1
27.01.2014, 20:22     Написать функцию возведения в степень #2
Например вот так:
C++
1
2
3
4
5
6
7
8
9
10
11
double func(double a, double b)
{
 double result = 1;
 int i = 0;
 while (i<b)
 {
  result*=a;
    i++;
 }
 return result;
}
banan4ik993
 Аватар для banan4ik993
0 / 0 / 0
Регистрация: 26.10.2013
Сообщений: 86
28.01.2014, 18:23  [ТС]     Написать функцию возведения в степень #3
а как теперь в програме нормально написать типа введите число и степень и вызвать эту функцию что б применялось и считало это число в степени!
zss
Модератор
Эксперт С++
 Аватар для zss
5950 / 5555 / 1787
Регистрация: 18.12.2011
Сообщений: 14,197
Завершенные тесты: 1
28.01.2014, 18:30     Написать функцию возведения в степень #4
C++
1
2
3
4
double func(double a, double b)
{
     return exp(b*log(a));
}
Добавлено через 1 минуту
_include, а почему у Вас результат не зависит от значения дробной части b?
banan4ik993
 Аватар для banan4ik993
0 / 0 / 0
Регистрация: 26.10.2013
Сообщений: 86
28.01.2014, 18:32  [ТС]     Написать функцию возведения в степень #5
напиши тогда полностью что не правильно что нада исправить весь код можеш скинуть
zss
Модератор
Эксперт С++
 Аватар для zss
5950 / 5555 / 1787
Регистрация: 18.12.2011
Сообщений: 14,197
Завершенные тесты: 1
28.01.2014, 18:33     Написать функцию возведения в степень #6
Цитата Сообщение от banan4ik993 Посмотреть сообщение
а как теперь в програме нормально написать типа введите число и степень
Так же, как и всегда
C++
1
2
3
4
5
6
cout<<"введите число:";
cin>>a;
cout<<"введите степень";
cin>>b;
y=func(a,b);
cout<<y;
banan4ik993
 Аватар для banan4ik993
0 / 0 / 0
Регистрация: 26.10.2013
Сообщений: 86
28.01.2014, 18:49  [ТС]     Написать функцию возведения в степень #7
Цитата Сообщение от zss Посмотреть сообщение
C++
1
2
3
4
double func(double a, double b)
{
     return exp(b*log(a));
}
Добавлено через 1 минуту
_include, а почему у Вас результат не зависит от значения дробной части b?
это просто нада реторн поменять я так понял ? а что сейчас неправильно будет считать ?

Добавлено через 6 минут
а как быть с числом например 5 в степени 1/2 как это написать в програме потому что сейчас не правильно в дробной степени считает.
zss
Модератор
Эксперт С++
 Аватар для zss
5950 / 5555 / 1787
Регистрация: 18.12.2011
Сообщений: 14,197
Завершенные тесты: 1
28.01.2014, 18:55     Написать функцию возведения в степень #8
Цитата Сообщение от banan4ik993 Посмотреть сообщение
а как быть с числом например 5 в степени 1/2
exp(b*log(a)) будет считать правильно.
Если такой вариант не подходит,
то тогда только через разложение в ряд Тейлора.
Саир_Крон
1 / 1 / 0
Регистрация: 12.02.2014
Сообщений: 52
12.02.2014, 11:24     Написать функцию возведения в степень #9
Подскажите где ошибка? Я использую библиотеку <<cmath>> код pow(x,y) а программа выдает мне ошибку...

Работаю в программе QT
Код программы:
PHP
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
#include<windows.h>                                                //Системный заголовок файла
#include<iostream>
#include<cmath>
 
using namespace std;                                               //Использовать стандартное пространство имен
 
int main()
{
    system("title Програмирование Работа 1 - Задание № 2.1.4 ");   //Вывести сообщение в заголовок консоли с помощь системной команды title
 
    //руссификация консоли
    SetConsoleOutputCP(1251);                                      //Установить кодовую таблицу для окна консоли
    system("color f1");                                            //Задание свойств консоли (цветовая схема)
 
    system("echo ДЕЙСВТИЕ ВЫПОЛНЯЕМЫЕ ПРОГРАММОЙ ");               //Вывести сообщение с помощью команды есрщ косольного режима Windows
    system("echo . ");
    system("echo Представленную формулу  x^y должны ввестись значения для X и Y: ");
    system("echo . ");
 
 
    double x(0),y(0);                                              //2 Входных переменных X и Y
    double formyla(0);                                             //Вывод результата решении формулы
    double pow (0);
 
    //ВВОД ВХОДНЫХ ДАННЫХ
    cout<<"Пожалуйсто ведите значение для X => ";
    cin>>x;
 
    cout<<"Пожалуйсто ведите значение для Y  => ";
    cin>>y;
 
    //ФОРМУЛА ДЛЯ ВЫЧИСЛЕНИЯ
    formyla=pow(x,y);
 
    //ВЫВОД РЕЗУЛЬТАТА
    system("echo ....................................................... ");
    system("echo ВЫЧИСЛЕНИЕ: ");
 
    cout<<"Результат решение  "<<x<<"^"<<y<<" = " <<formyla<<endl<<endl;
 
 
    system("pause");                                               //Держать консоль на экране до нажатия на любою клавишу
    return 0;                                                      //Вернуть управленеи в ОС и возвратить код норального завершения
 
}
programina
 Аватар для programina
1912 / 597 / 37
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
12.02.2014, 11:50     Написать функцию возведения в степень #10
Цитата Сообщение от Саир_Крон Посмотреть сообщение
C++
23
double pow (0);
Удали эту штуку на 23-й строке. Из-за нее компилятор не видит функции pow() из math.h
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.02.2014, 12:04     Написать функцию возведения в степень
Еще ссылки по теме:

C++ Возведения в степень
C++ Функция возведения в степень.
Перегрузить функцию возведения в степень C++

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

Или воспользуйтесь поиском по форуму:
Саир_Крон
1 / 1 / 0
Регистрация: 12.02.2014
Сообщений: 52
12.02.2014, 12:04     Написать функцию возведения в степень #11
Цитата Сообщение от programina Посмотреть сообщение
Удали эту штуку на 23-й строке. Из-за нее компилятор не видит функции pow() из math.h
мм блин...
Спасибки =)
Yandex
Объявления
12.02.2014, 12:04     Написать функцию возведения в степень
Ответ Создать тему
Опции темы

Текущее время: 16:35. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru