Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.62/21: Рейтинг темы: голосов - 21, средняя оценка - 4.62
0 / 0 / 0
Регистрация: 29.01.2011
Сообщений: 40
1

Вычислить и вывести на экран в виде таблицы значения функции, заданной с помощью ряда Тейлора

06.02.2011, 01:23. Показов 3953. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Котики мои Вы дорогие, помогите зайчику с такими вот заданиями. Не могу разобраться скорее с не с самими программулинами, а с приведением в рекуррентный вид (
Миниатюры
Вычислить и вывести на экран в виде таблицы значения функции, заданной с помощью ряда Тейлора   Вычислить и вывести на экран в виде таблицы значения функции, заданной с помощью ряда Тейлора  
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.02.2011, 01:23
Ответы с готовыми решениями:

Вычислить и вывести на экран в виде таблицы значения функции, заданной с помощью ряда Тейлора
Вычислить и вывести на экран в виде таблицы значения функции, заданной с помощью ряда Тейлора, на...

Вычислить и вывести на экран в виде таблицы значения функции, заданной с помощью ряда Тейлора
Всем доброй ночи, прошу о помощи нужно решить не в консоли, а на обычном Си. P.S.:Знаю, что...

Вычислить и вывести на экран в виде таблицы значения функции, заданной с помощью ряда Тейлора
Друзья, нужна помощь. Необходимо написать программу для вычисления с помощью ряда Тейлора функции...

Вычислить и вывести на экран в виде таблицы значения функции, заданной с помощью ряда Тейлора
Вычислить и вывести на экран в виде таблицы значения функции, заданной с помощью ряда Тейлора, на...

7
1080 / 1007 / 106
Регистрация: 28.02.2010
Сообщений: 2,889
06.02.2011, 06:21 2
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Не по теме:

Цитата Сообщение от zhvaka Посмотреть сообщение
Котики мои Вы дорогие, помогите зайчику с такими вот заданиями.
Ужс.



Цитата Сообщение от zhvaka Посмотреть сообщение
с приведением в рекуррентный вид
Пример для геометрической прогрессии.
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
#include <stdio.h>
#include <math.h>
 
float e; // эпсилон
 
// Чему равен n-ое слагаемое
float an(float x, unsigned int n)
{
    return pow(x, n);
}
 
// Рекурентая функция для вычисления суммы
float sumn(float x, unsigned int n)
{
    float a = an(x,n);
    if (fabs(a)>fabs(e)) return a+sumn(x, n+1); else return a;
}
 
// Эту функцию вызываем
float sum(float x)
{
    return sumn(x, 1);
}
 
int main()
{
    e = 0.00001;
    float x;
    printf("x=");
    scanf("%f", &x);
    printf("%f", sum(x));
}
Думаю, народ сделает лучше.
1
66 / 65 / 29
Регистрация: 19.01.2011
Сообщений: 94
06.02.2011, 10:06 3
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

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
#include <stdio.h>
#include <math.h>
#include <locale.h>
 
float summa(int, int, float);
 
int main()
{
    setlocale(2, ".1251");
    int x;
    float eps = 0.000001, sum = 0; //eps - точность
    printf("Введите x: ");
    scanf("%d", &x);
    for (int i = 1; 1/(i*pow(x, i)) > eps; sum += 1/(i*pow(x, i)), i += 2)
         ;
 
    printf("Нерекурсивный цикл: %f", 2*sum);
    printf("\nРекурсивная функция: %f", 2*summa(x, 1, eps));
    printf("\nЗначение ln((x+1)/(x-1): %f", log((x+1.)/(x-1.)));
    return 0;
}
 
float summa(int x, int n, float eps)
{
    float s = 1/(n*pow(x, n));
    if (s > eps)
        return s + summa(x, n+2, eps);
    else
        return s;
}
2е задание аналогично
1
0 / 0 / 0
Регистрация: 29.01.2011
Сообщений: 40
07.02.2011, 22:15  [ТС] 4
visual studio ругается на pow "существует более одного экземпляра перегруженная функция"
0
Эксперт С++
5055 / 3115 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
07.02.2011, 22:24 5
напишите
C++
1
pow(static_cast< double >(x), n)
0
0 / 0 / 0
Регистрация: 29.01.2011
Сообщений: 40
07.02.2011, 22:32  [ТС] 6
А не подскажите куда нужно подставлять, если код на Си
0
Эксперт С++
5055 / 3115 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
07.02.2011, 22:34 7
Если код на Си, то ни о каких перегруженных функциях и речи идти не может.
Ладно, попробуйте так:
C
1
pow((double)x, n)
0
0 / 0 / 0
Регистрация: 29.01.2011
Сообщений: 40
23.02.2011, 17:21  [ТС] 8
То что Вы сделали не совсем подходит, вот что мне примерно нужно
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
#include<stdio.h>
#include<conio.h>
#include<math.h>
int main ()
{
    double eps=0.0001, x0, x, sum=0.0, a, dx;
    int   n=1;
    printf("\n vvedite x0 and x :\n");
    scanf("%f %f", &x0, &x);
    if (fabs(x0)>1)
    {   
        printf("\nInput step of iteration dx=");
        scanf("%f", &dx);
        printf("\n------------------------------------------------\n");
        printf("| tekuschee znachenie x  | tekuschee znachenie sum |");
        do
        {
            a=1/x0;
            n=1;
            sum=0.0;
            do 
            {
            sum+=a;
            a=1.0*n/x0*x0*(n+2.0);
            n+=2; 
            }
            while(fabs(a)>=eps );
            sum*=2;
            printf("\n------------------------------------------------\n");
            printf("|        %.5f         |          %.5f        |", x0, sum);
            x0+=dx;
            
        }
        while (x>=x0);
    }
    else printf("oshibka");
    getch ();
    return 0;
}
второй вариант решения 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
#include<stdio.h>
#include<conio.h>
#include<math.h>
int main ()
{
    float eps=0.00001, x0, x, sum=0.0, a, dx;
    int   n=1;
    printf("\n vvedite x0 and x :\n");
    scanf("%f %f", &x0, &x);
        printf("\nInput step of iteration dx=");
        scanf("%f", &dx);
        printf("\n------------------------------------------------\n");
        printf("| tekuschee znachenie x | tekuschee znachenie sum|");
            a=1/x0;
            do 
            {
            sum+=2*a;
            a=1.0*n/x0*x0*(n+2.0);
            printf("\n|        %.5f         |          %.5f        |", x0, sum);
            printf("\n------------------------------------------------\n");
            n+=2;
            x0+=dx;
            }
            while((fabs(a)>=eps) && (x>=x0 ));
    getch ();
    return 0;
}
Помогите найти ту самую золотую середину

И ещё раз с праздником мужики
0
23.02.2011, 17:21
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.02.2011, 17:21
Помогаю со студенческими работами здесь

Вычислить и вывести на экран в виде таблицы значения функции, заданной с помощью ряда Тейлора
Вычислить и вывести на экран в виде таблицы значения функции, заданной с помощью ряда Тейлора, на...

Вычислить и вывести на экран в виде таблицы значения функции, заданной с помощью ряда Тейлора
Помогите написать блок-схему к программам: 1)Вычислить и вывести на экран в виде таблицы значения...

Вычислить и вывести на экран в виде таблицы значения функции, с заданной с помощью ряда Тейлора
Понимаю, что тема заезженная, но всё же не понимаю, как решать эту задачу. Вычислить и вывести...

Вычислить и вывести на экран в виде таблицы значения функции, с заданной с помощью ряда Тейлора
Посмотрите, пожалуйста мой код по рядам Тейлора, код явно не так считает ряд, что не так:? ...


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

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