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

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

Войти
Регистрация
Восстановить пароль
 
FC-NEO
0 / 0 / 0
Регистрация: 03.01.2010
Сообщений: 14
#1

Функция y=f(x) - C++

17.01.2010, 15:46. Просмотров 421. Ответов 4
Метки нет (Все метки)

Ввести E, M и массив X[15]. Для каждого X[I] вычислить значение функции:

вычисление функции прекратить если достигнута заданная точность E, либо взято в разложении ряда М членов.

Для начала делал просто для 1 х, а не для масива, т.к. это уже легко реализовать.
Вот что примерно получалось, (проблеммы с выходом из цикла, fabs и eps, а так же с выводом результата)
Код
#include <stdio.h>
#include <math.h>
void main()
{ 
	int v=1,n=4,p=4,i;
	long double x,x1,eps,y,s=1,a,zn;
	scanf("%lf",&x);
	x1=x;
	zn=v/n;
	scanf("%lf",&eps);
	for(i=0;s<eps;i++)
	{
		s+=zn*x1;
		v=v+p;
		n=n+p;
		zn=zn*(v/n);
		x1=x1*x1;
	}
	printf("%lf %5d", s,i+1);
}
Миниатюры
Функция y=f(x)  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.01.2010, 15:46
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Функция y=f(x) (C++):

Функция удаления текста в скобках [2], непосредственно функция + 12кб вложений - C++
Доброго времени суток, случилось так, что пришлось работать с с-строками (лаба, угу), в которой нужно удалить весь текст в скобках,...

Функция sqrt: существует более одного экземпляра. Функция перегруженная - C++
#include &lt;iostream&gt; #include &lt;math.h&gt; #include &lt;iomanip&gt; using namespace std; int main(){ float s, p; int c, a; s=0; ...

Перегрузка операций: friend-функция или функция-член класса - C++
Здравствуйте, меня интересует вопрос, в чем разница при перегрузке операторов через operator и friend. Вот к примеру такой код. class...

какую библиотеку надо подключать чтоб работала функция _getch() и функция cin.get() - C++
какую библиотеку надо подключать чтоб работала функция _getch() и функция cin.get()

что за функция такая strstr? или это не функция? - C++
void search(sp *list){ sp *prt = list; char f,r; cout&lt;&lt;Rus(&quot;введите текст&quot;)&lt;&lt;endl; cin&gt;&gt;f; cout&lt;&lt;Rus(&quot;введите выходной...

Чистая виртуальная функция функция не имеет оператора переопределения - C++
Пишу программу для записи заметок. Есть 2 класса: Page и Note. Note наследуется от Page. Page.h #pragma once ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Shymep
13 / 13 / 0
Регистрация: 10.01.2010
Сообщений: 34
17.01.2010, 18:03 #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
#include <stdio.h>
#include <math.h>
const N = 5;
void main()
{
    double E, X[N];
    int M,i,j;
    scanf("%lf",&E);
    scanf("%d",&M);
    for(i=0;i<N;i++)
       scanf("%lf",&X[i]);
    for(i=0;i<N;i++)
    {
        double s = 1;
        int c = 1;
        int d = 4;
        int r = 4;
        int ch = c;
        int zn = d;
        double x = X[i];
        for(j=0;j<M;j++)
        {
            double cur = double(ch)/zn * x;
            if(fabs(cur)<E)
                break;
            s += cur;
            x*=X[i];
            c+=r;
            d+=r;
            ch*=c;
            zn*=d;
        }
        printf("%lf %5d ", s,i+1);
    }
 
}
FC-NEO
0 / 0 / 0
Регистрация: 03.01.2010
Сообщений: 14
17.01.2010, 18:18  [ТС] #3
Цитата Сообщение от Shymep Посмотреть сообщение
Проверить!
C++
1
2
3
#include <stdio.h>
Здест был код-)
}
Спасибо конечно, но ты усложнил задачу большим количеством переменных. Вот если б ты лучше исправил мой код (услоиве выхода из цикла и вывод числа) то был бы очень тебе признателен!
Shymep
13 / 13 / 0
Регистрация: 10.01.2010
Сообщений: 34
17.01.2010, 18:33 #4
1. Твой код не соответсвует постановке задачи! Тебе надо посчитать условно говоря 15 значений y для 15 введенных значений x
2. Попробуй сократить число переменных, я хочу посмотреть, как оно получится
ch и zn - нужны? нужны - там хранится текущее произведение. Где-то хранить значения для последних 1 5 9/ 4 8 12 надо? Надо - переменные c и d. Их можно посчитать по формуле, но любое умножение будет занимать больше машинных тактов, чем добавление r=4 (хотя это не так уже и важно). В общем упрощай.
FC-NEO
0 / 0 / 0
Регистрация: 03.01.2010
Сообщений: 14
17.01.2010, 18:56  [ТС] #5
Цитата Сообщение от Shymep Посмотреть сообщение
1. Твой код не соответсвует постановке задачи! Тебе надо посчитать условно говоря 15 значений y для 15 введенных значений x
2. Попробуй сократить число переменных, я хочу посмотреть, как оно получится
ch и zn - нужны? нужны - там хранится текущее произведение. Где-то хранить значения для последних 1 5 9/ 4 8 12 надо? Надо - переменные c и d. Их можно посчитать по формуле, но любое умножение будет занимать больше машинных тактов, чем добавление r=4 (хотя это не так уже и важно). В общем упрощай.
Я же выше писал, что я пытаюсь реализовать для 1 х, т.к. для 15 я знаю как и просто не хочу загромождать код который вставляю в пост.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.01.2010, 18:56
Привет! Вот еще темы с ответами:

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

Функция заполняющая массив и функция вывода массива - C++
Напишите две функции. Первая функция заполняет массив, вторая функция выводит массив на экран

Нужно сделать, чтобы программа состояла из 3 функций, тоесть 1-ая функция ввода массива, 2-ая основная функция, 3-я- вывод массива - C++
Есть программа #include &lt;iostream&gt; #include &lt;algorithm&gt; const int N = 5; int handSet(void) { int a; std::cout...

Функция возвращающая абсолютное разницу первого и второго параметров и функция типа int, возвращающая минимальное из трех целых чисел - C++
Разработать заданные согласно условия функции и сделать в главной программе по два вызова этих функций с различными параметрами. Для...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
17.01.2010, 18:56
Ответ Создать тему
Опции темы

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