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

Протабулировать функцию - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 19, средняя оценка - 4.68
Анастасия))р
0 / 0 / 0
Регистрация: 12.04.2012
Сообщений: 6
28.04.2012, 08:44     Протабулировать функцию #1
Постройте таблицу значений ф-ии y=f(x) для xϵ[a,b] с шагом h.Если в некоторой точке x ф-ия не определена,то выведите на экран сообщение об этом.(Для решения задачи использовать вспомогательную ф-ю)

y= 3x+4/√x^2 + 2x + 1
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.04.2012, 08:44     Протабулировать функцию
Посмотрите здесь:

Протабулировать функцию C++
протабулировать функцию C++
Протабулировать функцию C++
C++ Протабулировать функцию
[C++] Протабулировать функцию C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
amfisat
 Аватар для amfisat
67 / 67 / 1
Регистрация: 16.06.2009
Сообщений: 235
28.04.2012, 09:04     Протабулировать функцию #2
Я так понимаю, что под корнем весь знаменатель? (не совсем понятно написано).

Добавлено через 14 минут
В программе подразумевается, что под корнем - весь знаменатель:
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
#include <cstdio>
#include <cmath>
 
using namespace std;
 
int funct (double x)
{
    double y = sqrt(x*x + 2*x + 1);
    if (y == 0) return 'u'; //undefined
    else return 3*x + 4/y;
}
 
int main()
{
    int a, b;
    double x, y, h;
    printf ("Enter edges (a, b): "); scanf_s("%d %d", &a, &b);
    printf ("Enter the step: "); scanf_s ("%lf", &h);
 
    for (x=a; x<=b; x += h)
    {
        y = funct(x);
        if (y == 'u') 
            printf ("\nx = %lf    y = undefined function\n", x);
        else 
            printf ("\nx = %lf    y = %lf\n", x, y);
    }
    return 0;
}
-=ЮрА=-
Заблокирован
Автор FAQ
28.04.2012, 09:59     Протабулировать функцию #3
Цитата Сообщение от Анастасия))р Посмотреть сообщение
Постройте таблицу значений ф-ии y=f(x) для xϵ[a,b] с шагом h.Если в некоторой точке x ф-ия не определена,то выведите на экран сообщение об этом.(Для решения задачи использовать вспомогательную ф-ю)
y= 3x+4/√x^2 + 2x + 1
-
Работал с такой функцией
http://www.cyberforum.ru/cgi-bin/latex.cgi?\frac{3*x + 4}{{x}^{2} + 2*x + 1} = \frac{3*x + 4}{{(x + 1)}^{2}}
ОДЗ для данной функции х != -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
#include <iostream>
#include <cmath>
using namespace std;
 
bool ODZ(double x)//ÔóГ*êöèÿ ГўГҐГ°Г*ВёГІ ÈÑÒÈÍÀ åñëè Г§Г*Г*Г·ГҐГ*ГЁГҐ Г*ðãóìåГ*ГІГ* x
//ëåæèò Гў ïðåäåëГ*Гµ ÎÄÇ, Гў ïðîòèâГ*îì ñëó÷Г*ГҐГ¬ âîçâðГ*Г№Г*åìîå Г§Г*Г*Г·ГҐГ*ГЁГҐ ËÎÆÜ
{
    bool bCorrect = true;
    double ipart;
    double fpart = modf(x,&ipart);
    //ГЉ ïðèìåðó 3.0 èìååò Гў Г¬Г*ГёГЁГ*Г*îì ïðåäñòГ*âëåГ*ГЁГЁ 2,99999(9)
    //ГІГ*ГЄГЁГ¬ îáðГ*çîì 3 != 2,99999(9)
    //äëÿ òî÷Г*îãî Г±Г°Г*ГўГ*ГҐГ*ГЁГї Г*ГіГ¦Г*Г® ïðèáåãГ*ГІГј ГЄ Г*ГҐГЄГЁГ¬ óõèùðåГ*ГЁГїГ¬
    if((int(ipart) == -1 && int(fpart*10) == 0))
        bCorrect = false;
    return bCorrect;
}
 
double f(double x)
{
    //x^2 + 2x + 1 = (x + 1)^2
    return (3*x + 4)/sqrt(pow(x + 1,2.0));
}
 
int main()
{
    system("chcp 1251");//ÏðîñòГ*Гї ðóññèôèêГ*öèÿ
    double x, xn = 0, xk = 0, hx = 0;
    
    //Ââîäèì ГёГ*ГЈ ГЁ äèГ*ГЇГ*çîГ* Г§Г*Г*Г·ГҐГ*ГЁГ© Г*ðãóìåГ*ГІГ*
    cout<<"Ââåäèòå xn : ";cin>>xn;
    cout<<"Ââåäèòå xk : ";cin>>xk;
    cout<<"Ââåäèòå ГёГ*ГЈ: ";cin>>hx;
    //ГЏГҐГ·Г*ГІГ*ГҐГ¬ ГёГ*ГЇГЄГі ГІГ*áëèöû
    cout<<"-----------------\n";
    cout<<"   x    |  f(x)  |\n";
    cout<<"-----------------\n";
    for(x = xn; x <= xk; x += hx)
    {
        cout<<x;
        if(!ODZ(x))//Ïðîâåðÿåì ïðèГ*Г*äëåæèò ëè Г§Г*Г*Г·ГҐГ*ГЁГҐ Г*ðãóìåГ*ГІГ* ÎÄÇ ГґГіГ*êöèè
            cout<<"\t| òî÷êГ* Г*ГҐ ïðèГ*Г*äëåæèò ÎÄÇ ГґГіГ*êöèè\n";
        else
            cout<<"\t| "<<f(x)<<endl;
    }
    system("pause");//Ñòîï-òî÷êГ* ГўГЄГ®Г*öå ïðîãðГ*ììû
    return 0;
}
Миниатюры
Протабулировать функцию  
-=ЮрА=-
28.04.2012, 10:02     Протабулировать функцию
  #4

Не по теме:

PS:Анастасия))р, посмотрите сюда http://www.cyberforum.ru/faq/thread4...ml#post2431657
кроме функций там ряды комплексные числа и матрицы + методы решения СЛАУ, уверен - лишним не будет
Если будут проблеммы с русским, либо руссифицируем через setlocale(LC_ALL,"russian") либо выставляем в 3 щелчка мыши шрифт приложения см сюда как это делать Создание файла в UTF-8 кодировке

Yandex
Объявления
28.04.2012, 10:02     Протабулировать функцию
Ответ Создать тему
Опции темы

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