Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Помогите разобратся с алгоритмом (c++)

4.7K
23 ноября 2007 года
bobik02
140 / / 11.09.2007
вот задали такую задачку:
Задано Два действительных числа x и y (y<>x) Обчислить: (<<на картинки ниже)

Проблема заключается в том, что я не понимаю как сделать это задание
из за: a=min(x,y) и a=max(x,y) , что єто такое ? и как его найти ?
а все остальное вроде понятно:)

все что нужно есть math.h
только вот корень кубический как найти ?
360
23 ноября 2007 года
P*t*
474 / / 15.02.2007
не понимаю в чём проблема.
не можешь найти минимум от x и y ?
a = x < y ? x : y;
b = x > y ? x : y;
245
23 ноября 2007 года
~ArchimeD~
1.4K / / 24.07.2006
вычисление кубического корня - это есть возведение в степень (1/3), соответственно

 
Код:
y = pow ( x, ( 1.0 / 3.0 ) );


а для min max, макросы можно написать
 
Код:
#define min ( x, y ) ( (x) <= (y) ? (x) : (y) )
#define max ( x, y ) ( (x) >= (y) ? (x) : (y) )
4.7K
23 ноября 2007 года
bobik02
140 / / 11.09.2007
~ArchimeD~ спасибо! :)
320
23 ноября 2007 года
m_Valery
1.0K / / 08.01.2007
Цитата: bobik02
~ArchimeD~ спасибо! :)


Если хочешь сказать спасибо ~ArchimeD~ использую репутацию,не будем захламлять раздел этими благодарностями.

4.7K
23 ноября 2007 года
bobik02
140 / / 11.09.2007
Цитата: m_Valery
Если хочешь сказать спасибо ~ArchimeD~ использую репутацию,не будем захламлять раздел этими благодарностями.



понял, больше не буду ! :)
~
но мне что то кажется что макросы - плохой тон .
я использовал min & max с algorithm.h

вот так решил:

Код:
#include <iostream>
#include <conio>
#include <math>
#include <algorithm> // for min ,max

using namespace std;

#pragma hdrstop
#pragma argsused

// Корень Кубический
 double Koren(double k)
 {
   double Result;
   Result = pow ( k, ( 1.0 / 3.0 ) );
   return Result;
 }


 double first1(double x,double y)
 {
   double Result;
   Result = log ( x * x ) + atan (x) ;
   return Result;
 }

 double second1(double x, double y)
 {
   double Result,tmp;
   tmp = exp (x) + log ( y - 4.7 );
   Result = Koren (tmp);
   return Result;
 }

 double first2 (double x, double y)
 {
   double Result,a,b;

   a = min ( x, y );
   b = max ( x, y );

   Result = exp (a) - exp (b);

   return Result;
 }

 double second2 (double x, double y)
 {
   double Result, a, tmp;
   a = min ( x, y );
   tmp = sin(a);

   Result = pow( tmp, 2 ) ;

   return Result;
 }

int main(int argc, char* argv[])
{
  clrscr();

  double x , y ;
  cout << " Enter x : " ;
  cin  >> x;
  cout << " Enter y : " ;
  cin  >> y;
  if (x == y)
  {cout << "Error, X = Y (x must don't = y), press any key to Exit" ;}
  else
  {
    double Z;
    Z = first1(x, y) / second1(x, y) + first2(x, y) / second2(x, y);

    cout << "*********************************" << endl;
    cout << "Result: " << Z << endl;
  }
  getch();
  return 0; // ok
}
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог