Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.12.2011, 17:56   #1
lady.ulumba
Пользователь
 
Регистрация: 08.09.2011
Сообщений: 39
По умолчанию Функция.Возведение в степень

Написать функцию, которая вычисляет значение а в степени b. Числа а и b могут быть любыми дробными положительными числами.
Цитата:
#include <vcl.h>
#pragma hdrstop
#include <iostream.h>
#include <conio.h>
//---------------------------------------------------------------------------

#pragma argsused
float fun(float step,float a,float b);
int main(int argc, char* argv[])
{ float a,b,step=1;
cout<<"Vvedite a:";
cin>>a;
cout<<"Vvedite b:";
cin>>b;
step=fun(step,a,b);
cout<<"Otvet:"<<step;
getch();
return 0;
}
float fun(float step,float a,float b)
{
while(b>0)
{ step*=a; b--; continue; }
return(step);
}
У меня получается,что число возводится только в целую степень.Подскажите,как сделать с дробной степенью?
lady.ulumba вне форума Ответить с цитированием
Старый 02.12.2011, 17:59   #2
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

Код:
x^y= exp(y*ln(x)).
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"
Mad_Cat вне форума Ответить с цитированием
Старый 02.12.2011, 18:24   #3
lady.ulumba
Пользователь
 
Регистрация: 08.09.2011
Сообщений: 39
По умолчанию

Код:
#include <vcl.h>
#pragma hdrstop
#include <iostream.h>
#include <math.h>
#include <conio.h>
//---------------------------------------------------------------------------

#pragma argsused
float fun(float step,float a,float b);
int main(int argc, char* argv[])
{ float a,b,step;
  cout<<"Vvedite a:";
  cin>>a;
  cout<<"Vvedite b:";
  cin>>b;
  step=fun(step,a,b);
  cout<<"Otvet:"<<step;
  getch();
       return 0;
}
 float fun(float step,float a,float b)
 {
   step=exp(b*log(a));
   return(step);
  }
Исправила,все работает.Спасибо.
lady.ulumba вне форума Ответить с цитированием
Старый 02.12.2011, 18:27   #4
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

Цитата:
Исправила,все работает
вот и чудненько
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"

Последний раз редактировалось Mad_Cat; 02.12.2011 в 18:30.
Mad_Cat вне форума Ответить с цитированием
Старый 02.12.2011, 18:30   #5
lady.ulumba
Пользователь
 
Регистрация: 08.09.2011
Сообщений: 39
По умолчанию

Числа а и b могут быть любыми дробными положительными числами.
lady.ulumba вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
возведение в степень [CODER] Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 6 14.04.2014 10:18
Возведение в степень. Drakulov Свободное общение 30 01.03.2011 16:35
Возведение в степень Mambakremen Помощь студентам 1 14.11.2010 08:54
возведение в степень Lissisa Помощь студентам 1 21.03.2009 22:34
Возведение в степень Stanislav Общие вопросы Delphi 10 05.12.2007 23:34