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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
MustangWSR
3 / 3 / 0
Регистрация: 16.09.2013
Сообщений: 17
#1

Вычислить значение функции - C++

17.09.2013, 17:59. Просмотров 604. Ответов 7
Метки нет (Все метки)

Вычислить значение функции в зависимости от интервала, в который попадает вводимый с клавиатуры аргумент.
Миниатюры
Вычислить значение функции  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.09.2013, 17:59     Вычислить значение функции
Посмотрите здесь:

Вычислить значение функции C++
Функции: вычислить значение сложной (составной) функции C++
Вычислить значение функции a = b ^2 sin (b), причем b изменяется от 0,9 до 1,7 с шагом 0,2. Найти среднее значение разности между элементами C++
В главной функции main () ввести входные данные, и вызвав собственные функции, вычислить значение выражения и вывести результаты C++
Дано разложение функции в ряд Тейлора. Вычислить для значения x и точности Eps точное значение функции C++
Вычислить значение функции C++
C++ Вычислить значение функции
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Пёс
228 / 76 / 4
Регистрация: 03.02.2013
Сообщений: 311
17.09.2013, 18:56     Вычислить значение функции #2
MustangWSR,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <math.h>
using namespace std;
 
const double a = 1.5;
 
double f(double x)
{
    if(x < 1.3)
        return pow(x,2) - 7/pow(x,2);
    else if(x >= 1.3 && x < 3)
        return a*pow(x,3) + pow(7, sqrt(x));
    else if(x >= 3)
        return log10(x+pow(7,sqrt(x)));
}
 
int main()
{
    double x;
    cin >> x;
    cout << f(x);
    system("pause");
}
Добавлено через 8 минут
MustangWSR, я только не понял, что там за маленькое "пи", слева от икса, при x<1.3 (на фото)
UranFlex
131 / 129 / 21
Регистрация: 25.05.2013
Сообщений: 233
17.09.2013, 19:32     Вычислить значение функции #3
Пёс, MustangWSR,
скорее всего корень из x не является степенью, а является множителем.
Пи тоже является множителем.
Думаю так потому что степени 2 и 3 намного выше чем Пи и корень из x
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
#include <iostream>
#include <cmath>
using namespace std;
 
int main() {
 
    double x, y;
    const double a = 1.5;
    cout << "Введитте x в интервале [ 0.9, 5 ]" << endl;
    cin >> x;
 
    if ( x < 0.9 || x > 5.0 ) {
        cerr << "Значение x должно быть в интервале [ 0.9, 5 ]";
        return -1;
    } else if ( x < 1.3 )
        y = M_PI * x * x - 7 / ( x * x );
    else if ( x >= 1.3 && x < 3.0 )
        y = a * pow( x, 3.0 ) + 7 * sqrt( x );
    else
        y = log10( x + 7.0 * sqrt( x ) );
 
    cout << "y = " << y << endl;
 
    return 0;
}
Пёс
228 / 76 / 4
Регистрация: 03.02.2013
Сообщений: 311
17.09.2013, 20:15     Вычислить значение функции #4
UranFlex, думаю что Вы правы, действительно, форматирование текста на бумаге ужасное, и всё таки Пи - множитель и корень из х тоже.
zss
Модератор
Эксперт С++
6239 / 5842 / 1890
Регистрация: 18.12.2011
Сообщений: 14,959
Завершенные тесты: 1
17.09.2013, 20:26     Вычислить значение функции #5
Цитата Сообщение от Пёс Посмотреть сообщение
pow(x,2)
пишите x*x
Зачем издеваться над процессором.
Пёс
228 / 76 / 4
Регистрация: 03.02.2013
Сообщений: 311
17.09.2013, 23:36     Вычислить значение функции #6
zss, хм, думаю что разработчики этой функции уже сделали все возможные оптимизации... И мне кажется она выполнится быстрее, даже с учетом потерь на передачу аргументов.
zss
Модератор
Эксперт С++
6239 / 5842 / 1890
Регистрация: 18.12.2011
Сообщений: 14,959
Завершенные тесты: 1
18.09.2013, 20:07     Вычислить значение функции #7
Цитата Сообщение от Пёс Посмотреть сообщение
думаю что разработчики этой функции уже сделали все возможные оптимизации
Пример программы
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
#include <stdio.h>
#include <conio.h>
#include <time.h>
#include <math.h>
 
int main( void )
{
   long    i = 100000000L;
   clock_t start, finish;
   double  duration;
   double x=0.99,y;
   start = clock();
   i = 100000000L;while( i-- )y=x*x; 
   finish = clock();
   duration = (double)(finish - start) / CLOCKS_PER_SEC;
   printf( "time x*x=%lf seconds\n", duration );
   start = clock();
   i = 100000000L;while( i-- )y=pow(x,2); 
   finish = clock();
   duration = (double)(finish - start) / CLOCKS_PER_SEC;
   printf( "time pow(x,2)=%lf seconds\n", duration );
   getch();
   return 1;
}
выводит:
time x*x=0.188000 seconds
time pow(x,2)=5.218000 seconds
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.09.2013, 00:45     Вычислить значение функции
Еще ссылки по теме:

Вычислить значение функции C++
Вычислить значение аргумента x, значение функции y, max и min функций C++
C++ Вычислить значение функции
Вычислить значение функции C++
Вычислить значение функции аргумент которой вычисляется из другой кусочно заданной функции C++

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

Или воспользуйтесь поиском по форуму:
Пёс
228 / 76 / 4
Регистрация: 03.02.2013
Сообщений: 311
19.09.2013, 00:45     Вычислить значение функции #8
zss, убедительно!
Yandex
Объявления
19.09.2013, 00:45     Вычислить значение функции
Ответ Создать тему
Опции темы

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