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

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

Войти
Регистрация
Восстановить пароль
 
Van`ka
0 / 0 / 0
Регистрация: 12.01.2012
Сообщений: 5
#1

Вычислить значение функции x^2 / (n + x^2) - C++

12.01.2012, 18:54. Просмотров 651. Ответов 9
Метки нет (Все метки)

задача:
В диапазоне от http://www.cyberforum.ru/cgi-bin/latex.cgi?{x}_{nach} до http://www.cyberforum.ru/cgi-bin/latex.cgi?{x}_{kon} аргумент изменяется п формуле http://www.cyberforum.ru/cgi-bin/latex.cgi?{x}_{n+1}={{x}_{n}}^{2}/(n+1).
Вычислить значение функции http://www.cyberforum.ru/cgi-bin/latex.cgi?F(x)={x}^{2}/(n+{x}^{2}) для каждого значения аргумента и записать в файл. Подсчитать количество вычислений.
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
#include <iostream>
using namespace std;
#include <iomanip>
#include <math.h>
#include <conio.h>
#include <stdlib.h>
#include <fstream>
#define rez "E:\\rezult.txt"
int main()
{ofstream rz(rez,ios::out);
    float xn, xk, x, f=0;
    int n, k=0;
    cout<<"vvedite nachalnoe X=";
    cin>>xn;
    cout<<"vvedite konechnoe X=";
    cin>>xk;
    n=1;
    x=xn;
    f=pow(x,2)/(n+pow(x,2));
    k+=1;
    rz<<"znachenie argymenta:"<<setw(34)<<"znachenie funkcii:"<<endl;
    rz<<x<<setw(35)<<f<<endl;
    for (n=1;x=0;n++)
        {x=pow(x,2)/(n+1);
    if ((x>=xn) && (x<=xk))
    {
    f=pow(x,2)/(n+pow(x,2));
     rz<<x<<setw(35)<<f<<endl;
    k+=1;
    }
    }
    rz<<"kolichestvo vicheslenii:"<<setw(3)<<k<<endl;
    _getch();
    return 0;
}
Препод сказала что ошибка в цикле связанная с условием выполнения, а какая я так и не понял.

Добавлено через 2 часа 29 минут
народ помогите срочно надо просто завтра сдавать
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
insolent
826 / 347 / 15
Регистрация: 30.01.2009
Сообщений: 1,204
12.01.2012, 20:37     Вычислить значение функции x^2 / (n + x^2) #2
Проверь
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
#include <iostream>
#include <iomanip>
#include <math.h>
#include <conio.h>
#include <stdlib.h>
#include <fstream>
 
#define rez "rezult.txt"
 
using namespace std;
 
int main()
{
    ofstream rz(rez);
    if ( !rz )
    {
        cout << "Oshibra!!!" << endl;
        return 0;
    }
    float xn, xk, x, f = 0;
    int n, k = 0;
    cout<<"vvedite nachalnoe X=";
    cin>>xn;
    cout<<"vvedite konechnoe X=";
    cin>>xk;
    rz << "nachalnoe X=" << xn << " konechnoe X=" << xk << endl;
    x = xn;
    for (int n = 0; x <= xk; x = pow(x,2)/++n)
    {
        f = pow(x,2)/(n+pow(x,2));
        rz << x << setw(35) << f << endl;
        k += 1;
    }
 
    rz << "kolichestvo vicheslenii: " << setw(3) << k << endl;
    cout << "Gotovo" << endl;
    _getch();
    return 0;
}
zss
Модератор
Эксперт С++
6179 / 5782 / 1872
Регистрация: 18.12.2011
Сообщений: 14,771
Завершенные тесты: 1
12.01.2012, 20:38     Вычислить значение функции x^2 / (n + x^2) #3
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
#include <iostream>
#include <fstream>
#include <iomanip>
#include <conio.h>
using namespace std;
int main()
{
    char rez[]="E:\\rezult.txt";
    ofstream rz(rez,ios::out);
    double xn, xk;
    cout<<"vvedite nachalnoe Xn=";
    cin>>xn;
    cout<<"vvedite konechnoe Xk=";
    cin>>xk;
    int n=1;
    rz<<"znachenie argymenta:"<<setw(34)<<"znachenie funkcii:"<<endl;
    for(double x=xn;x<=xk;x=x*x/(n+1))
    {
        double f=x*x/(n+x*x);
        n++;
        rz<<x<<setw(35)<<f<<endl;
    }
    rz<<"kolichestvo vicheslenii:"<<setw(3)<<n<<endl;
    cout<<"result in file"<<rez;
    _getch();
    return 0;
}
Van`ka
0 / 0 / 0
Регистрация: 12.01.2012
Сообщений: 5
12.01.2012, 21:00  [ТС]     Вычислить значение функции x^2 / (n + x^2) #4
Спасибо , но все равно они как то не так работают
еще она сказала что условие вылезает из формулы следующего аргумента
zss
Модератор
Эксперт С++
6179 / 5782 / 1872
Регистрация: 18.12.2011
Сообщений: 14,771
Завершенные тесты: 1
12.01.2012, 21:18     Вычислить значение функции x^2 / (n + x^2) #5
В формуле есть нюансы
Последовательность xn сходится к нулю при |x0|<=1,
иначе расходится.
Соответственно, это надо учесть в цикле for().
Van`ka
0 / 0 / 0
Регистрация: 12.01.2012
Сообщений: 5
12.01.2012, 21:33  [ТС]     Вычислить значение функции x^2 / (n + x^2) #6
благодарю сейчас попробуем исправить=)

Добавлено через 3 минуты
zss2, еще вопрос. В твоей программе это учтено?
zss
Модератор
Эксперт С++
6179 / 5782 / 1872
Регистрация: 18.12.2011
Сообщений: 14,771
Завершенные тесты: 1
12.01.2012, 22:29     Вычислить значение функции x^2 / (n + x^2) #7
Учесть это надо примерно так
C++
1
2
    for(double x=xn;(xn>1 && x<=xk) || (xn<=1 && x>=xk) ;x=x*x/(n+1))
    {
Van`ka
0 / 0 / 0
Регистрация: 12.01.2012
Сообщений: 5
12.01.2012, 23:06  [ТС]     Вычислить значение функции x^2 / (n + x^2) #8
zss2, прости а что означают ||
insolent
826 / 347 / 15
Регистрация: 30.01.2009
Сообщений: 1,204
13.01.2012, 00:48     Вычислить значение функции x^2 / (n + x^2) #9
логическое ИЛИ - должно выполнится одно из условий
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.01.2012, 00:51     Вычислить значение функции x^2 / (n + x^2)
Еще ссылки по теме:

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

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

Или воспользуйтесь поиском по форуму:
Van`ka
0 / 0 / 0
Регистрация: 12.01.2012
Сообщений: 5
13.01.2012, 00:51  [ТС]     Вычислить значение функции x^2 / (n + x^2) #10
insolent,ясно благодарю, все заработало думаю прокатит:dance3:
Yandex
Объявления
13.01.2012, 00:51     Вычислить значение функции x^2 / (n + x^2)
Ответ Создать тему
Опции темы

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