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

Вычислить значение y в зависимости от выбранной функции f(x), аргумент которой определяется из поставленного условия. - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 17, средняя оценка - 4.59
Alex_Radn
0 / 0 / 0
Регистрация: 08.01.2014
Сообщений: 11
08.01.2014, 15:28     Вычислить значение y в зависимости от выбранной функции f(x), аргумент которой определяется из поставленного условия. #1
Вычислить значение y в зависимости от выбранной функции f(x), аргумент которой определяется из поставленного условия. Возможные значения функции f(x): 2x, x2, х/3. Предусмотреть вывод сообщений, показывающих, при каком условии и с какой функцией производились вычисления у.
Миниатюры
Вычислить значение y в зависимости от выбранной функции f(x), аргумент которой определяется из поставленного условия.  
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.01.2014, 15:28     Вычислить значение y в зависимости от выбранной функции f(x), аргумент которой определяется из поставленного условия.
Посмотрите здесь:

Вычислить значение y в зависимости от выбранной функции f(x) C++
Составить программу для вычисления значения rez в зависимости от поставленного условия C++
Найти значение функции в зависимости от условия C++
Найти значение функции в зависимости от условия C++
Найти значение функции в зависимости от условия C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Alex_Radn
0 / 0 / 0
Регистрация: 08.01.2014
Сообщений: 11
08.01.2014, 15:30  [ТС]     Вычислить значение y в зависимости от выбранной функции f(x), аргумент которой определяется из поставленного условия. #2
Помогите пожалуйста с решением!!
0x10
2425 / 1597 / 232
Регистрация: 24.11.2012
Сообщений: 3,919
08.01.2014, 15:38     Вычислить значение y в зависимости от выбранной функции f(x), аргумент которой определяется из поставленного условия. #3
1. С нуля задачи на форуме решают не так часто - только если совсем делать нечего или есть желание попрактиковаться.
В связи с этим: хочется более оперативной помощи - покажите свои наработки.
2. Из условия лично мне не ясно откуда берутся значения a, b, z.
Alex_Radn
0 / 0 / 0
Регистрация: 08.01.2014
Сообщений: 11
08.01.2014, 16:00  [ТС]     Вычислить значение y в зависимости от выбранной функции f(x), аргумент которой определяется из поставленного условия. #4
В том то и дело что нету пока наработок(( И особо мыслей нету((
Serega_094
2 / 2 / 0
Регистрация: 07.06.2013
Сообщений: 80
08.01.2014, 16:08     Вычислить значение y в зависимости от выбранной функции f(x), аргумент которой определяется из поставленного условия. #5
Цитата Сообщение от 0x10 Посмотреть сообщение
Из условия лично мне не ясно откуда берутся значения a, b, z.
тут как можно сделать, а и и можно ввести самим, а вот насчет z непонятно...
Цитата Сообщение от Alex_Radn Посмотреть сообщение
Возможные значения функции f(x): 2x, x2, х/3.
с этим тоже не ясно...
Alex_Radn
0 / 0 / 0
Регистрация: 08.01.2014
Сообщений: 11
08.01.2014, 16:29  [ТС]     Вычислить значение y в зависимости от выбранной функции f(x), аргумент которой определяется из поставленного условия. #6
"Возможные значения функции f(x): 2x, x2, х/3"

Получается должен быть выбор 1 2 или 3

Добавлено через 4 минуты
и z задается , при x больше 0 одно , при меньше второе выражение
0x10
2425 / 1597 / 232
Регистрация: 24.11.2012
Сообщений: 3,919
08.01.2014, 16:41     Вычислить значение y в зависимости от выбранной функции f(x), аргумент которой определяется из поставленного условия. #7
Меня сбило то, что в формуле функция http://www.cyberforum.ru/cgi-bin/latex.cgi?\varphi, а автор в посте пишет f.

Ок, значит, пусть значения a, b, z вводит пользователь.
Пишем функцию main, где просим у пользователя ввести эти значения, сохряняем их в переменных типа double.
Главный вопрос: автор в состоянии написать это и имеет ли смысл дальше на естественном языке рассказывать или не нужно и проще дождаться когда кто-нибудь напишет готовое?
Alex_Radn
0 / 0 / 0
Регистрация: 08.01.2014
Сообщений: 11
08.01.2014, 16:53  [ТС]     Вычислить значение y в зависимости от выбранной функции f(x), аргумент которой определяется из поставленного условия. #8
Пока что в состоянии
как то так?
C++
1
2
3
4
5
6
7
8
9
10
  double a; x, y, z, b; 
 
     cout<<"Vvedite A: ";
     cin>>x; 
 
     cout<<"Vvedite B: ";
     cin>>y;
 
     cout<<"Vvedite Z: ";
     cin>>z;
Добавлено через 1 минуту
Вру
Как то так;
C++
1
2
3
4
5
6
7
8
9
10
  double a; x, y, z, b; 
 
     cout<<"Vvedite A: ";
     cin>>a; 
 
     cout<<"Vvedite B: ";
     cin>>b;
 
     cout<<"Vvedite Z: ";
     cin>>z;
0x10
2425 / 1597 / 232
Регистрация: 24.11.2012
Сообщений: 3,919
08.01.2014, 16:55     Вычислить значение y в зависимости от выбранной функции f(x), аргумент которой определяется из поставленного условия. #9
1. Весь код в теги.
2. Проверяйте перед отправкой. Сходу синтаксическая ошибка - вместо точки с запятой после double a; должна быть запятая.

Добавлено через 1 минуту
Идем дальше. И в числителе, и в знаменателе фигурирует переменная x, которую надо вычислить. Условие и формулы для вычисления - в правой части задания. Как будет выглядеть код?
Alex_Radn
0 / 0 / 0
Регистрация: 08.01.2014
Сообщений: 11
08.01.2014, 17:07  [ТС]     Вычислить значение y в зависимости от выбранной функции f(x), аргумент которой определяется из поставленного условия. #10
как то так?

C++
1
2
if(z>0)x=1/(z^2+2*z);
    else x=1-z^3;
0x10
2425 / 1597 / 232
Регистрация: 24.11.2012
Сообщений: 3,919
08.01.2014, 17:15     Вычислить значение y в зависимости от выбранной функции f(x), аргумент которой определяется из поставленного условия. #11
^ - оператор XOR, а не возведения в степень. Чтобы возвести z в квадрат, нужно либо умножить на себя, либо воспользоваться функцией pow: http://linux.die.net/man/3/pow

После того, как исправите это, идем дальше.
Сначала отдельно вычислим числитель (путь это будет переменная numerator). Для вычисления экспоненты - ф-я exp http://linux.die.net/man/3/exp

По идее, дальше уже объяснять и не нужно, ибо все по аналогии. Дерзайте.

Добавлено через 2 минуты
Натуральный логарифм - функция log http://linux.die.net/man/3/log
Модуль - fabs http://linux.die.net/man/3/fabs

Для вычисления http://www.cyberforum.ru/cgi-bin/latex.cgi?\varphi в начале можно предложить пользователю выбор, и в зависимости от этого вычислять по одной из трех формул в условии из первого поста.
Alex_Radn
0 / 0 / 0
Регистрация: 08.01.2014
Сообщений: 11
08.01.2014, 18:40  [ТС]     Вычислить значение y в зависимости от выбранной функции f(x), аргумент которой определяется из поставленного условия. #12
В общем написал как-то так, помогите разобраться где косяк
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#include<iostream>
#include <math.h>
using namespace std;
int main()
{
   double a, x, y, z, b;    
 
     cout<<"Vvedite A: ";
     cin>>x; 
 
     cout<<"Vvedite B: ";
     cin>>y;
 
     cout<<"Vvedite Z: ";
     cin>>z;
    
    
    if(z>0)x=1/(pow(z,2)+2*z);          
    else x=1-pow(z,3); 
 
    switch(Vibirite f(x))
    
              
                case 1: funcValue = 2 * x;
                        printf("f(x) = 2x\n");
                        break;
                case 2:
                        funcValue = x * x;
                        printf("f(x) = x*x\n");
                        break;
                case 3:
                        funcValue = x / 3.0;
                        printf("f(x) = x/3.0\n");           
                        break;      
 
    
    y= (2.5*a*pow(exp,-3*x)-4*b*pow(x,2))
    /
    (log(fabs(x))+f(x))
    
    cout<<"x="<<x<<endl;
    
    cout<<"y="<<y<<endl;
                      
}
0x10
2425 / 1597 / 232
Регистрация: 24.11.2012
Сообщений: 3,919
08.01.2014, 18:46     Вычислить значение y в зависимости от выбранной функции f(x), аргумент которой определяется из поставленного условия. #13
В switch какой-то бардак. Почитайте в любой книге или гугле как работает оператор. Первый пример, который попался - http://msdn.microsoft.com/ru-ru/library/k0t5wee3.aspx

Т.е. надо сначала у пользователя запросить значение, потом в зависимости от него вычислить http://www.cyberforum.ru/cgi-bin/latex.cgi?\varphi (x).

В 37 строке pow(exp, -3 * x) - некорректная конструкция. Первым аргументом пытаетесь передать имя функкции. Я предлагал сразу использовать функцию exp, которая принимает один аргумент.
В 39 сроке непонятно откуда взялся f(x).
Alex_Radn
0 / 0 / 0
Регистрация: 08.01.2014
Сообщений: 11
08.01.2014, 19:22  [ТС]     Вычислить значение y в зависимости от выбранной функции f(x), аргумент которой определяется из поставленного условия. #14
Не до конца понял как записать switch? И как записать exp.

Получается что-то такое
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#include<iostream>
#include <math.h>
using namespace std;
int main()
{
   double a, x, y, z, b;    
 
     cout<<"Vvedite A: ";
     cin>>x; 
 
     cout<<"Vvedite B: ";
     cin>>y;
 
     cout<<"Vvedite Z: ";
     cin>>z;
    
    
    if(z>0)x=1/(pow(z,2)+2*z);          
    else x=1-pow(z,3); 
 
     switch(funcValue)
        {
                case 1:
                        funcValue = 2 * x;
 
                        break;
                case 2:
                        funcValue = x * x;
                        
                        break;
                case 3:
                        funcValue = x / 3.0;
                               
                        break    
 
    
    y= (2.5*a*exp(-3*x)-4*b*pow(x,2))
    /
    (log(fabs(x))+funcValue)
    
    cout<<"x="<<x<<endl;
    
    cout<<"y="<<y<<endl;
    
    return(0);                  
}
0x10
2425 / 1597 / 232
Регистрация: 24.11.2012
Сообщений: 3,919
08.01.2014, 19:35     Вычислить значение y в зависимости от выбранной функции f(x), аргумент которой определяется из поставленного условия. #15
Будем считать, что псевдокод
C++
1
2
3
4
5
6
7
8
// Спрашиваем у пользователя какую из трех функций использовать для phi
cin >> func_number;
switch (func_number) {
case 1:
    funcValue = // поехали
    break;
// и т д
}
Добавлено через 1 минуту
Дальше - просто пройтись по ошибкам компиляции, все должно быть просто.
И отформатировать код, а то это как-то совсем страшно.
Alex_Radn
0 / 0 / 0
Регистрация: 08.01.2014
Сообщений: 11
08.01.2014, 22:35  [ТС]     Вычислить значение y в зависимости от выбранной функции f(x), аргумент которой определяется из поставленного условия. #16
Как бы становится похожим на правду, Спасибо!!
Ошибка в этом месте еще

cin >> func_number;
а уже внутри switch вроде получше стало
0x10
2425 / 1597 / 232
Регистрация: 24.11.2012
Сообщений: 3,919
09.01.2014, 04:08     Вычислить значение y в зависимости от выбранной функции f(x), аргумент которой определяется из поставленного условия. #17
Перед использованием переменные надо объявлять (кэп).
Alex_Radn
0 / 0 / 0
Регистрация: 08.01.2014
Сообщений: 11
09.01.2014, 11:38  [ТС]     Вычислить значение y в зависимости от выбранной функции f(x), аргумент которой определяется из поставленного условия. #18
Спасибо за терпение)) Я ток учусь.

В итге получилось так:
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#include<iostream>
#include <math.h>
using namespace std;
int main()
{
   double a, x, y, z, b, funcValue;    
 
     cout<<"Vvedite A: ";
     cin>>x; 
 
     cout<<"Vvedite B: ";
     cin>>y;
 
     cout<<"Vvedite Z: ";
     cin>>z;
    
    
    if(z>0)x=1/(pow(z,2)+2*z);          
    else x=1-pow(z,3); 
     int func_number;
    cin >> func_number;
    switch (func_number)
    
     {
    case 1:  funcValue = 2 * x;
    break;
                    
                     
    case 2:   funcValue = x * x;
    break;
               
    case 3:  funcValue = x / 3.0;
    break;   
 }
    
    y= (2.5*a*exp(-3*x)-4*b*pow(x,2))
    /
    (log(fabs(x))+funcValue);
    
    cout<<"x="<<x<<endl;
    
    cout<<"y="<<y<<endl;
    
    return(0);                  
}
Подчеркивает саму формулу:
C++
1
2
3
y= (2.5*a*exp(-3*x)-4*b*pow(x,2))
    /
    (log(fabs(x))+funcValue);
0x10
2425 / 1597 / 232
Регистрация: 24.11.2012
Сообщений: 3,919
09.01.2014, 11:56     Вычислить значение y в зависимости от выбранной функции f(x), аргумент которой определяется из поставленного условия. #19
Смотрите не на подчеркивания, а на сообщения компилятора: у меня два предупреждения о неинициализированных переменных a, b. Смотрите внимательно что у пользователя в начале запрашиваете.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.01.2014, 12:54     Вычислить значение y в зависимости от выбранной функции f(x), аргумент которой определяется из поставленного условия.
Еще ссылки по теме:

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

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

Или воспользуйтесь поиском по форуму:
Alex_Radn
0 / 0 / 0
Регистрация: 08.01.2014
Сообщений: 11
09.01.2014, 12:54  [ТС]     Вычислить значение y в зависимости от выбранной функции f(x), аргумент которой определяется из поставленного условия. #20
Спасибо огромное!! Вот итог:
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#include<iostream>
#include <math.h>
using namespace std;
int main()
{
   double a, x, y, z, b, funcValue;    
 
     cout<<"Vvedite A: ";
     cin>>a; 
 
     cout<<"Vvedite B: ";
     cin>>b;
 
     cout<<"Vvedite Z: ";
     cin>>z;
    
    
    if(z>0)x=1/(pow(z,2)+2*z);          
    else x=1-pow(z,3); 
    
      
        
     int func_number;
            
    
   cout<<"Vibirite F(x):1-F(x)=2x;2-F(x)=x^2;3-F(x)=x/3;";
   cin >> func_number;
        switch (func_number)
     
     {
    case 1:  funcValue = 2 * x;
    
    break;
                    
                     
    case 2:   funcValue = x * x;
    break;
               
    case 3:  funcValue = x / 3.0;
    break;
    default:cout<<"Ne vibrana funkci9"; return 1;   
 }
    
    y= (2.5*a*exp(-3*x)-4*b*pow(x,2))
    /
    (log(fabs(x))+funcValue);
    
    cout<<"x="<<x<<endl;
    
    cout<<"y="<<y<<endl;
    
    return(0);                  
}
Вроде как работае))
Как вот только узнать правильно ли все ??
Yandex
Объявления
09.01.2014, 12:54     Вычислить значение y в зависимости от выбранной функции f(x), аргумент которой определяется из поставленного условия.
Ответ Создать тему
Опции темы

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