С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.76/25: Рейтинг темы: голосов - 25, средняя оценка - 4.76
0 / 0 / 0
Регистрация: 19.06.2021
Сообщений: 11
1

Программа вычисления значения функции f (x, y, z) для различных типов параметров

19.06.2021, 15:40. Показов 5067. Ответов 20
Метки c++ (Все метки)

Author24 — интернет-сервис помощи студентам
Здраствуйте, мне нужно сделать задания по функциям.
Вариант прикрепил.
Задача 1 (по вариантам).

Используя механизм перегрузки функции, разработать и от-
ладить программу вычисления значения = f (x, y, z) для различных типов пара
метров. Конкретный вариант функции взять из задачи 1 лабораторной ра-
боты No 1. Предусмотреть задания параметров функции "по умолчанию"

и с клавиатуры.

Это задание, я вроде выполнил.
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
#include <iostream>
 
float F(float x);
float F(float x, float& y);
 
int main()
{
    float x, y;
    std::cout << "X = ";
    std::cin >> x;
 
    if (x < 0)
        std::cout << "X = " << F(x);
    else if (x >= 0 && x != 1)
        std::cout << "Y = " << F(x, y) << std::endl;
    else if (x == 1)
        std::cout << "X = " << F(x);
 
    std::cin.get();
    std::cin.get();
    return 0;
}
 
float F(float x)
{
    if (x < 0)
        return 0;
    else return 1;
}
 
float F(float x, float& y)
{
    return y = x * x + 1;
}
#==
Задание 2 (по вариантам).

Разработать и отладить программу вычисления выражения f (x), приведе-
ного в приложении А.

Каждой из трех ветвей вычисления значения в должна отвечать
отдельная функция (fun_1, fun_2 и fun_3). Передача параметров в функцию
fun_1 должна осуществляться по значению, в функцию fun_2 -
используя указатели, а в функцию fun_3 - на базе ссылок.
#==
Задача 3 (по вариантам).
Аналогично задаче 2, однако все объявления функций поместить в
отдельный заголовочный файл с именем ***. h, а определение функций поместить в
отдельный файл с именем ***. cpp.

С этими заданиями, я не могу справится.

Вот сам вариант:
Миниатюры
Программа вычисления значения функции f (x, y, z) для различных типов параметров  
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.06.2021, 15:40
Ответы с готовыми решениями:

Вычисления значения функции y(x) для всех различных вариантов входных параметров
Помогите пожалуйста с задачей (заранее спасибо). Нужно написать программу вычисления функции...

Написать блок схему и программу вычисления функции y(x) для всех различных вариантов входных параметров
Задание: написать блок схему и программу вычисления функции y(x) для всех различных вариантов...

Программа для вычисления значения функции
помогите пожалуйста написать программу..

Программа для вычисления значения функции С++
Написать программу, которая по введенному значению аргумента вычисляет значение функции, заданной в...

20
2129 / 1212 / 503
Регистрация: 11.10.2018
Сообщений: 6,112
19.06.2021, 15:43 2
1 задание в 1 теме, товарищ.
0
0 / 0 / 0
Регистрация: 19.06.2021
Сообщений: 11
19.06.2021, 16:51  [ТС] 3
Так я сделал первое задание
0
7437 / 5029 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
19.06.2021, 19:02 4
LowKeyKid, сбросьте скрин Вашего варианта для задачи 1
0
0 / 0 / 0
Регистрация: 19.06.2021
Сообщений: 11
19.06.2021, 20:40  [ТС] 5
Там в самом низу вроде есть вариант.
Но сейчас скину
Миниатюры
Программа вычисления значения функции f (x, y, z) для различных типов параметров  
0
Модератор
Эксперт С++
13721 / 10918 / 6478
Регистрация: 18.12.2011
Сообщений: 29,147
19.06.2021, 20:54 6
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
#include <iostream>
 
double F(double x,double a,double b)
{
    return a*x*x+b*x;
}
double F(double x, double a)
{
    return x-a/(x-3.0);
}
double F(double x)
{
    return -1.+x/3.0;
}
 
int main()
{
    double x;
    std::cout << "X = ";
    std::cin >> x;
    double A,B; 
    std::cout << "a = ";
    std::cin >> A;
    std::cout << "b = ";
    std::cin >> B;
    std::cin.get();
    if (A < 0 && x!=0)
        std::cout << "Y = " << F(x,A,B);
    else if (A > 0 && x==0)
        std::cout << "Y = " << F(x, A) << std::endl;
    else
        std::cout << "Y = " << F(x);
 
    std::cin.get();
    return 0;
}
2
0 / 0 / 0
Регистрация: 19.06.2021
Сообщений: 11
19.06.2021, 21:01  [ТС] 7
Спасибо большое
0
7437 / 5029 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
19.06.2021, 21:54 8
Цитата Сообщение от LowKeyKid Посмотреть сообщение
Там в самом низу вроде есть вариант
в таком случае где Вы взяли это выражение ?
Цитата Сообщение от LowKeyKid Посмотреть сообщение
y = x * x + 1;

zss,
Цитата Сообщение от LowKeyKid Посмотреть сообщение
для различных типов параметров
0
0 / 0 / 0
Регистрация: 19.06.2021
Сообщений: 11
19.06.2021, 23:13  [ТС] 9
Я пользовался интернетом и вписал формулу. Спасибо, что указали на ошибку.
0
7437 / 5029 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
19.06.2021, 23:37 10
Цитата Сообщение от LowKeyKid Посмотреть сообщение
Я пользовался интернетом и вписал формулу
то есть Вы считаете что приведённый код из интернета является решением первой задачи ?
Цитата Сообщение от LowKeyKid Посмотреть сообщение
Это задание, я вроде выполнил

это предложение было в условии задачи ?
Цитата Сообщение от LowKeyKid Посмотреть сообщение
Задать отдельные функции для каждого интервала указанной интервальной функции
0
0 / 0 / 0
Регистрация: 19.06.2021
Сообщений: 11
20.06.2021, 00:06  [ТС] 11
Я не считаю, что это решение. Вроде этого предложения, не было в задачи.
0
7437 / 5029 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
20.06.2021, 10:59 12
Цитата Сообщение от LowKeyKid Посмотреть сообщение
Используя механизм перегрузки функции, разработать и отладить программу вычисления значения = f (x, y, z) для различных типов параметров. Конкретный вариант функции взять из задачи 1 лабораторной работы No 1. Предусмотреть задания параметров функции "по умолчанию" и с клавиатуры.
получилось много строк, но вроде по условию:
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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
#include <iostream>
using namespace std;
 
double F(double t, double x=9.3, double a=4.7, double b=11.2)
{
    if (a<0. && x!=0.) return a*x*x+b*x;
    else if (a>0. && x==0.) return x-a/(x-3.);
    return -1.+x/3.;
}
 
float F(float t, float x=9.3f, float a=4.7f, float b=11.2f)
{
    if (a<0.f && x!=0.f) return a*x*x+b*x;
    else if (a>0.f && x==0.f) return x-a/(x-3.f);
    return -1.f+x/3.f;
}
 
int F(int t, int x=9, int a=4, int b=11)
{
    if (a<0 && x!=0) return a*x*x+b*x;
    else if (a>0 && x==0) return x-a/(x-3);
    return -1+x/3;
} 
 
int main()
{
    int k, p;
    do
    {
        cout << "Make a choice: 1 - double, 2 - float, 3 - int:\n";
        cin >> k;        
        
        if(k==1) 
        {            
            double x, a, b;
            do
            {            
                cout << "Make a choice: 1 - keyboard, 2 - default:\n";
                cin >> p;
        
                if(p==1)
                {
                    cout << "x = "; cin >> x;    
                    cout << "a = "; cin >> a;
                    cout << "b = "; cin >> b;                    
                    cout << "F=" << F(1.,x,a,b) << "\n";
                }
                else if(p==2)
                {
                    cout << "F=" << F(1.) << "\n";
                }    
            }
            while(p!=1 && p!=2);            
        }    
        else if (k==2)    
        {            
            float x, a, b;
            do
            {            
                cout << "Make a choice: 1 - keyboard, 2 - default:\n";
                cin >> p;
        
                if(p==1)
                {
                    cout << "x = "; cin >> x;    
                    cout << "a = "; cin >> a;
                    cout << "b = "; cin >> b;
                    cout << "F=" << F(1.f,x,a,b) << "\n";
                }
                else if(p==2)
                {
                    cout << "F=" << F(1.f) << "\n";
                }                   
            }
            while(p!=1 && p!=2);                
        }
        else if (k==3)
        {
            int x, a, b;
            do
            {            
                cout << "Make a choice: 1 - keyboard, 2 - default:\n";
                cin >> p;
        
                if(p==1)
                {
                    cout << "x = "; cin >> x;    
                    cout << "a = "; cin >> a;
                    cout << "b = "; cin >> b;
                    cout << "F=" << F(1,x,a,b) << "\n";
                }
                else if(p==2)
                {
                    cout << "F=" << F(1) << "\n";
                }   
            }    
            while(p!=1 && p!=2);
        }    
    }
    while(k!=1 && k!=2 && k!=3);
    
system("pause");    
return 0;
}
0
Модератор
Эксперт С++
13721 / 10918 / 6478
Регистрация: 18.12.2011
Сообщений: 29,147
20.06.2021, 11:20 13
Yetty, думаю, имелось ввиду что-то вроде:
C++
1
2
3
double F(double t, double x, double a, double b);
double F(double t, double& x, double& a, double& b);
double F(double t, double* x, double* a, double* b);
0
7437 / 5029 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
20.06.2021, 11:41 14
zss, как в Вашем новом варианте учитывается
Цитата Сообщение от LowKeyKid Посмотреть сообщение
Предусмотреть задания параметров функции "по умолчанию"
этот вариант больше подойдёт к задаче 2
0
0 / 0 / 0
Регистрация: 08.06.2021
Сообщений: 3
20.06.2021, 16:55 15
А, кто то поможет со вторым и третим?
0
Yetty
20.06.2021, 17:09
  #16

Не по теме:

Цитата Сообщение от CutHereDude Посмотреть сообщение
А, кто то поможет со вторым и третим?
не нарушайте Правила. выше уже сказали:
Цитата Сообщение от FFPowerMan Посмотреть сообщение
1 задание в 1 теме
для второй и третьей задачи создайте отдельные темы

0
0 / 0 / 0
Регистрация: 19.06.2021
Сообщений: 11
20.06.2021, 19:11  [ТС] 17
Разработать и отладить программу вычисления выражения f (x), приведе-
ного в приложении А.

Каждой из трех ветвей вычисления значения в должна отвечать
отдельная функция (fun_1, fun_2 и fun_3). Передача параметров в функцию
fun_1 должна осуществляться по значению, в функцию fun_2 -
используя указатели, а в функцию fun_3 - на базе ссылок.

Буду благодарен за помощь.

Вот вариант:
Миниатюры
Программа вычисления значения функции f (x, y, z) для различных типов параметров  
0
Модератор
Эксперт CЭксперт С++
5201 / 2918 / 1509
Регистрация: 14.12.2018
Сообщений: 5,260
Записей в блоге: 1
20.06.2021, 21:35 18
LowKeyKid, попробуй:
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
#include <iostream>
#include <cmath>
using namespace std;
 
double fun_1(double x, double a, double b)
{
    if (a < 0 && x)
        return a * x * x + b * x;
    else if (a > 0 && fabs(x) < 1e-10)
        return x - a / (x - 3);
    else
        return -1 + x / 3;
}
 
double fun_2(double* x, double* a, double* b)
{
    double x_ = *x;
    double a_ = *a;
    double b_ = *b;
    if (*a < 0 && *x)
        return a_ * x_ * x_ + b_ * x_;
    else if (a_ > 0 && fabs(x_) < 1e-10)
        return x_ - a_ / (x_ - 3);
    else
        return -1 + x_ / 3;
}
 
double fun_3(double& x, double& a, double& b)
{
    if (a < 0 && x)
        return a * x * x + b * x;
    else if (a > 0 && fabs(x) < 1e-10)
        return x - a / (x - 3);
    else
        return -1 + x / 3;
}
 
int main()
{
    double x, a, b;
    cout << "a = ";
    cin >> a;
    cout << "b = ";
    cin >> b;
    cout << "x = ";
    cin >> x;
    cout << "By value: f = " << fun_1(x, a, b) << endl;
    cout << "By point: f = " << fun_2(&x, &a, &b) << endl;
    cout << "By reference: f = " << fun_3(x, a, b) << endl;
    system("pause");
    return 0;
}
0
Yetty
21.06.2021, 00:09
  #19

Не по теме:

LowKeyKid, неужели так сложно понять ОДНА ЗАДАЧА - ОДНА ТЕМА. для каждой задачи создайте свою тему

0
0 / 0 / 0
Регистрация: 19.06.2021
Сообщений: 11
21.06.2021, 03:37  [ТС] 20
Так, я создал новую тему, я не пойму почему оно здесь
0
21.06.2021, 03:37
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.06.2021, 03:37
Помогаю со студенческими работами здесь

Программа для вычисления значения функции
Составить программу для вычисления значения функции: y=sh(x) с помощью разложения функции в...

программа для вычисления значения функции y
для заданного значения x у= если x&lt;-3 то y= √1 - x² если 1,5&lt;x-3, то y= в числителе 1

программа для вычисления значения функции y
для заданного значения x у= если x&lt;-3 то y= √1 - x² если 1,5&lt;x-3, то y= в числителе 1

Программа для вычисления значения функции.
Вычислить значения функций (см.рис.) при заданном m, если х изменяется от a до b с шагом h. ...

Программа для вычисления значения функции
Помогите пожалуйста!!! Срочно, умоляю молю Составить программу для вычисления значения функции...

Разветвленная программа для вычисления значения функции f по формуле
Разработать на языке Python разветвленную программу для вычисления значения функции f по...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru