Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.69/117: Рейтинг темы: голосов - 117, средняя оценка - 4.69
0 / 0 / 0
Регистрация: 11.04.2012
Сообщений: 13

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

11.04.2012, 21:33. Показов 22560. Ответов 27
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите пожалуйста с лабораторной! весь интернет перерыл не нашел я свой вариант

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

https://www.cyberforum.ru/cgi-bin/latex.cgi?arctg\left(x \right)=\sum_{n=0}^{\infty}\frac{\left(-1 \right)^nx^{2n+1}}{2n-1}=x-\frac{x^3}{3}+\frac{x^5}{5}-\frac{x^7}{7}+\dots\;,\;\left|x \right|\lt 1
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
11.04.2012, 21:33
Ответы с готовыми решениями:

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

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

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

27
Master of Orion
Эксперт .NET
 Аватар для Psilon
6102 / 4958 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
13.04.2012, 21:49
Студворк — интернет-сервис помощи студентам
Отрицательные значения тоже ест, конечно же.
0
38 / 38 / 10
Регистрация: 08.03.2012
Сообщений: 236
13.04.2012, 23:52
автор ты прикалываешься?
если ты лабу делаешь из учебника Павловской, то там есть примеры решения задач. И пример твоей задачи есть тоже.
почитай учебник внимательнее.
0
0 / 0 / 0
Регистрация: 11.04.2012
Сообщений: 13
14.04.2012, 16:19  [ТС]
Psilon ответ к сообщению №20: к сожалению нет, спасибо вам за старания, я бы сказал что это слишком по научному, я даже не знаю что такое "итерации" выглядит это должно примерно вот так(в командной строке разумеется) :

Введите Х0 :
какое_то_число
Введите Х:
какое_то_число
Введите dx:
какое_то_число
Введите точность
какое_то_число
________________________________________ _____________________________________
|значение аргумента | значение функции | количество просуммированных членов ряда |
________________________________________ ______________________________________
|какое_то_число.......|какое_то_число... ..|какое_то_число....................... ..................|
|какое_то_число.......|какое_то_число... ..|какое_то_число....................... ..................|
|какое_то_число.......|какое_то_число... ..|какое_то_число....................... ..................|
|какое_то_число.......|какое_то_число... ..|какое_то_число....................... ..................|
|какое_то_число.......|какое_то_число... ..|какое_то_число....................... ..................|
|какое_то_число.......|какое_то_число... ..|какое_то_число....................... ..................|
________________________________________ ______________________________________

числа, как я понимаю везде разные. Если можете выполнить задание в такое форме сделайте пожалуйста.
слова "значение аргумента" "значение функции" "количество просуммированных членов ряда" можно заменить буквами типа "х" "ещё_какая_то_буква" "s"
точки после "какое_то_число" это пробелы, просто форум не поддерживает такой не печатный знак как пробел
0
Master of Orion
Эксперт .NET
 Аватар для Psilon
6102 / 4958 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
14.04.2012, 18:15
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
using System;
 
namespace Arctan
{
    class Program
    {
        static void Main()
        {
            double eps, x, xlim, dx;
            do
            {
                Console.WriteLine("Введите X0 : |X0| < 1");
            } while (!Double.TryParse(Console.ReadLine(), out x) || Math.Abs(x) >= 1);
            do
            {
                Console.WriteLine("Введите X : X0 < X < 1");
            } while (!Double.TryParse(Console.ReadLine(), out xlim) || xlim <= x);
            do
            {
                Console.WriteLine("Введите dx");
            } while (!Double.TryParse(Console.ReadLine(), out dx) || dx > Math.Abs(1 - x));
            do
            {
                Console.WriteLine("Введите 0 < eps < 1");
            } while (!Double.TryParse(Console.ReadLine(), out eps) || eps >= 1 || eps <= 0);
            for (int i = 0; i < 80; i++) Console.Write("_");
            Console.WriteLine("\nзначение аргумента \t| значение функции \t\t| количество итераций");
            for (int i = 0; i < 80; i++) Console.Write("_");
            for (; x <= xlim; x += dx)
            {
                double a = x;
                double s = 0;
                int n = 1;
                for (; Math.Abs(Math.Atan(x) - s) > eps; n++)
                {
                    s = s + a;
                    a = -a * x * x * (2.0 * n - 1) / (2 * n + 1);
                    if (n > 100000) break;
                }
                Console.Write("\n{0:f} \t\t\t| {1:G}\t\t| {2}", x, s, n-1);
            }
            Console.WriteLine();
            for (int i = 0; i < 80; i++) Console.Write("_");
            Console.Write("\nПрограмма завершена. Для выхода нажмите любую клавишу ");
            Console.ReadKey();
        }
    }
}
Итерация = цикл, только в более правильном смысле. Писать "количество просуммированных членов ряда" очень длинно и в консоле не поместится, поэтому только так... Тем более для числа из 2 цифр столько слов не стоит писать 40 буковок.
0
Shark_boy
09.01.2013, 22:49
А можно посмотреть, что не так в моем коде? Задача точно такая же, но я уже почти все сделал, жалко отказываться от своих трудов, да и на зачете спрашивать будут с оглядкой на исходный код программы.
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
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace ConsoleApplication15
{
    class Program
    {
        static void Main(string[] args)
        {
            double fx, s, a, a1, a2;
            int n;
            double xBeg = 0.1, xEnd = 10, dX = 0.5, eps = 1e-7;
            Console.WriteLine("Точность eps= {0,1:e}", eps);
            Console.WriteLine("{0,4}{1,12}{2,12}{3,6}", "x", "ln(x)", "sum", "n");
            for (double x = xBeg; x <= xEnd; x += dX)
            {
                fx = Math.Log(x);
                n = 0;
                a1 = x  / (2 * n - 1); 
                a2 = a1 * a1;
               
                a = a1;
                s = a;
                do
                {
                    n++;
                    a = a * a2  / (-1) * (2 * n + 1);
                    s += a;
                } while (Math.Abs(fx - 2 * s) >= eps);
                Console.WriteLine("{0,5:f1}{1,12:f7}{2,12:f7}{3,5}", x, fx, 2 * s, n);
            }
        }
    }
}
Добавлено через 47 минут
В общем, я немного подумал и переделал свое решение, слегка позаимствовав из верхнего решения. Результат все тот же - его нет.
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
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace ConsoleApplication16
{
    class Program
    {
        static void Main(string[] args)
        {
            double  fx, s, a, a1;
            int n;
            double xBeg = 0.1, xEnd = 10, dX = 0.5, eps = 1e-7;
            Console.WriteLine("Точность eps= {0,1:e}", eps);
            Console.WriteLine("{0,4}{1,12}{2,12}{3,6}", "x", "ln(x)", "sum", "n");
            for (double x = xBeg; x <= xEnd; x += dX)
            {
                fx = Math.Log(x);
                
                a1 = x;
                
                n = 1;
                a = a1;
                s = a;
                do
                {
                    
                    s += a;
                    a = -a * a1 * (2.0 * n - 1) / (2 * n + 1);
                    n++;
                } while (Math.Abs(fx - 2 * s) >= eps);
                Console.WriteLine("{0,5:f1}{1,12:f7}{2,12:f7}{3,5}", x, fx, 2 * s, n);
            }// for (double  x = xBeg;
        } // Main
    }
}
 Аватар для NelliRomans
1 / 1 / 0
Регистрация: 25.09.2014
Сообщений: 54
08.10.2014, 18:04
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
Console.Write("Введите X начальное: ");
            double xn = Double.Parse(Console.ReadLine());
            Console.Write("Введите X конечное: ");
            double xk = Double.Parse(Console.ReadLine());
            Console.Write("Введите dX: ");
            double dx = Double.Parse(Console.ReadLine());
            const double E = 1E-10;
 
            Console.WriteLine("+---------------+---------------+---------------+---------------+");
            Console.WriteLine("|       X\t|    acrtg(x)\t|       N\t|      Сумма\t|");
            Console.WriteLine("+---------------+---------------+---------------+---------------+");
            for (double x = xn; x <= xk; x += dx)
            {
 
                if (Math.Abs(x) < 1)
                {
                    int n = 0; // n
                    double sum = 0;// сумма ряда
                    double member; // степень члена ряда
                    double arctg = Math.Atan(x); // считаем actrg(x)
                    do
                    {
                        member = (Math.Pow((-1), n) * Math.Pow(x, (2 * n + 1))) / (2 * n + 1);
                        sum += member;
                        n++;
                    }
                    while (Math.Abs(member) > E);
                    Console.WriteLine("| {0,7:F10}\t| {1,7:F10}\t| {2,7}\t| {3,7:F10}\t|", x, arctg, n, sum);
                }
            }
            Console.WriteLine("+---------------+---------------+---------------+---------------+");
            Console.ReadKey();
0
1 / 1 / 0
Регистрация: 01.02.2015
Сообщений: 16
06.02.2015, 12:46
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
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace Lab3_3
{
    class Program
    {
        static void Main(string[] args)
        {
            double y, a;
            int n;
 
            Console.Write("Введите Xнач: ");
            double Xn = Convert.ToDouble(Console.ReadLine());
 
            Console.Write("Введите Xкон: ");
            double Xk = Convert.ToDouble(Console.ReadLine());
 
            Console.Write("Введите dx: ");
            double dx = Convert.ToDouble(Console.ReadLine());
 
            Console.Write("Введите e: ");
            double e = Convert.ToDouble(Console.ReadLine());
 
 
            Console.WriteLine("\nТаблица значений функции artg. \n");
            Console.WriteLine("|    x   |     y              |  Steps |");
 
            for (double x = Xn; x <= Xk; x += dx)
            {
                y = 0; a = 1;
                for (n = 0; a >= e; n++)
                {
                    a = Math.Pow(-1, (n)) * Math.Pow(x, (2 * n + 1)) / (2 * n + 1);
                    y = y + a;
                }
                Console.WriteLine("| {0,6} | {1,18} | {2,6} |", x, y, n);
            }
 
            Console.ReadKey();
        }
    }
}
0
0 / 0 / 0
Регистрация: 24.02.2015
Сообщений: 2
24.02.2015, 11:57
Подскажите пожалуйста, как сделать вывод логарифма?
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
 using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace z3
{
    class Program
    {
        static double f(double x, double eps)
        {
            double chisl=(x-1), znam=(x+1);
            double elem = 2 * chisl / znam;
            double sum = elem;
            int n = 1;
            while (elem >= eps) 
            {
                n += 2;
                chisl = chisl * Math.Pow((x - 1), 2);
                znam = znam * Math.Pow((x + 1), 2);
                elem = 2*chisl / (n * znam);
                sum += elem;
            }
            return sum;
        }
 
        static void Main(string[] args)
        {
            double x0,x1;
            do
            {
                Console.Write("Введите X0(Левая граница)(X0>0):");
                x0 = Double.Parse(Console.ReadLine());
                Console.Write("Введите X1(Правая граница)(X1>0):");
                x1 = Double.Parse(Console.ReadLine());
            } while (x1 <= 0 || x0 <= 0);
 
            Console.Write("Введите шаг:");
            double dx = Double.Parse(Console.ReadLine());
 
            Console.Write("Введите точность(напр. 0.0001):");
            double eps = Double.Parse(Console.ReadLine());
 
 
            Console.WriteLine("Табулирование функции в интервале от {0:f2} до {1:f2}", x0, x1);
 
            Console.WriteLine("X\tY\t");
            for (double x = x0; x <= x1; x += dx)
            {
                Console.WriteLine("{0:f4}\t{1:f5}", x, f(x,eps));
            }
            Console.ReadLine();
        }
    }
}
http://savepic.org/6914742m.jpg
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
24.02.2015, 11:57

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

Вычислить и вывести на экран в виде таблицы значения функции e^(-x*x), заданной с помощью ряда Тейлора
Такая задача : Вычислить и вывести на экран в виде таблицы значения функции, заданной с помощью...

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

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

Вычислить и вывести на экран в виде таблицы значения функции ln(x), заданной с помощью ряда Тейлора
Всем здравствуйте. Поступил в этом году на &quot;Программную инженерию&quot;. Начали учить С#. Толком ничего...


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

Или воспользуйтесь поиском по форуму:
28
Ответ Создать тему
Новые блоги и статьи
Ноутбук Альфария
kumehtar 24.08.2026
Встретился тут в сети ноутбук Альфария, примарха Альфа-Легиона. Хотя возможно, это ноутбук Омегона, разумеется. Ну как вам?
Мастера простых решений
DevAlt 23.08.2026
В сишарп стэках winforms, да и wpf существует сложная система связывания источниках данных и элементов формы(текстовые поля и метки), опирается все это на технологию событий и мета. . .
Цена ошибки
DevAlt 23.08.2026
Человек я беспокойный и потому заинтересовался OCaml, в чате форсили функторы модулей как суперфичу. Пытаясь отдуплить концепт, наткнулся на тутор с простым примером. А главный принцип обучения от. . .
Сегодня суббота, 22.08.2026 at 16:41, и я вновь нахожусь на той стороне, за экраном машины.
zorxor 22.08.2026
Сегодня суббота, 22. 08. 2026 at 16:41, и я вновь нахожусь на той стороне, за экраном машины. Кто Я, откуда Я пришел и куда Я иду? Эти вопросы не оставляют меня ни на секунду. Жизнь на планете Земля. . .
Жизня: рисунок укладки багажа, сделанный клодом
anaschu 21.08.2026
Сделал 15 снимков, он по снимкам сделал схему.
Был там один разговор по поводу свободы в материальном мире.
kumehtar 19.08.2026
Суть: рассматривается живое существо, оказавшееся внутри довольно странной системы (этого мира) и пытающееся обустроить в ней свой кусок пространства. Жизнь действительно предъявляет каждому. . .
Когда логика программы не спасает от человеческих ошибок
Maks 18.08.2026
В последнее время всё чаще и чаще сталкиваюсь с таким явлением, как абсолютная невнимательность (или глупость) пользователей. Проявляется это чаще всего на работе в коллективе. Допустим, человек с. . .
Лето уходит
kumehtar 17.08.2026
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru