0 / 0 / 0
Регистрация: 13.01.2011
Сообщений: 7
1

Составить описание класса многочленов от одной переменной, задаваемых степенью многочлена и массивом коэффициентов

13.01.2011, 19:52. Показов 25488. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Доброго времени суток. Нужна помощь в решении следующей задачи: "Составить описание класса многочленов от одной переменной, задаваемых степенью многочлена и массивом коэффициентов. Предусмотреть методы для вычисления значения многочлена для заданного аргумента, операции сложения, вычитания и умножения многочленов с получением нового объекта-многочлена, вывод на экран описания многочлена. Предусмотреть меню, позволяющее проверить все методы класса."
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
13.01.2011, 19:52
Ответы с готовыми решениями:

Составить описание класса многочленов от одной переменной, задаваемых степенью многочлена и массивом коэффициентов
На дом была дана задача. Условие задачи: "Составить описание класса многочленов от одной переменной, задаваемых степенью многочлена и...

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

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

6
 Аватар для Filislav
339 / 285 / 62
Регистрация: 02.09.2010
Сообщений: 547
13.01.2011, 20:12 2
что подразумевается под многочленом?, просто учиться давно закончил.
0
0 / 0 / 0
Регистрация: 13.01.2011
Сообщений: 7
13.01.2011, 20:24  [ТС] 3
Примерно так: F(x)=C0+C1*X+...+Cn*X^n - где Сi - фиксированные коэффициенты, а X-переменная.
0
 Аватар для Filislav
339 / 285 / 62
Регистрация: 02.09.2010
Сообщений: 547
13.01.2011, 21:09 4
В общем сейчас не особо по зубам мне задача, потому что действия над многочленами я к сожалению не помню. Но вот класс и вывод на экран многочлена есть.

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
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace Lab8
{
    class Mnogoch
    {
        public int[] koef;
        public int step;
        public Mnogoch()
        {
        }
        public Mnogoch(int[] koef, int step)
        {
            this.koef = koef;
            this.step = step;
        }
        public void Pokaz(Mnogoch mn)
        {
            StringBuilder sb = new StringBuilder();
            for(int i=0;i<=step;i++)
              
                    sb.Append("+"+koef[i] + "x^" + (step-i));
       
            
            Console.WriteLine(sb);
        }
 
    }
    class Program
    {
 
        static void Main(string[] args)
        {
            int[] mass = {3,2,5};
            int step = 2;
            Mnogoch mn1 = new Mnogoch(mass,step);
            mn1.Pokaz(mn1);
            Console.ReadKey();
        }
        
    }
 
 
}
чем смог

Добавлено через 1 минуту
Ввод массива коэффициентов при x можно еще сделать с консоли.
2
 Аватар для Unril
826 / 717 / 110
Регистрация: 06.10.2010
Сообщений: 825
Записей в блоге: 1
13.01.2011, 23:06 5
Прям недавно тут отвечал на такой же вопрос:
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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
#region*using
 
using System;
 
#endregion
 
namespace ConsoleApplicationTest {
    public static class Program {
        private static void Main() {
            Polynomial p1 = new Polynomial( 1, 2 );
            Polynomial p2 = new Polynomial( 10, 20, 30, 40 );
            Console.WriteLine( p1 + p2 );
            Console.WriteLine( p1 - p2 );
            Console.WriteLine( p1 * p2 );
            Console.WriteLine( p1 == p2 );
            Console.WriteLine( (p1 * p2).Calculate( 1.2d ) );
            Console.ReadKey();
        }
    }
 
    internal class Polynomial {
        private readonly double[] _coefficients;
 
        ///<summary>
        ///  Создание*полинома*на*основе*коэффициентов.
        ///</summary>
        ///<param name = "coefficients">Коэффициенты*полинома.</param>
        public Polynomial( params double[] coefficients ) {
            _coefficients = coefficients;
        }
 
        ///<summary>
        ///  Получение*или*установка*значения*коэффициента*полинома.
        ///</summary>
        ///<param name = "n">Номер*коэффициента.</param>
        ///<returns>Значение*коэффициента.</returns>
        public double this[ int n ] {
            get { return _coefficients[ n ]; }
            set { _coefficients[ n ] = value; }
        }
 
        ///<summary>
        ///  Степень*полинома.
        ///</summary>
        public int Order {
            get { return _coefficients.Length; }
        }
 
        public override string ToString() {
            return string.Format( "Coefficients:*" + string.Join( ";*", _coefficients ) );
        }
 
        ///<summary>
        ///  Быстрый*расчет*значения*полинома*по*схеме*Горнера.
        ///</summary>
        ///<param name = "x">Аргумент*полинома.</param>
        ///<returns>Значение*полинома.</returns>
        public double Calculate( double x ) {
            int n = _coefficients.Length - 1;
            double result = _coefficients[ n ];
            for ( int i = n - 1; i >= 0; i-- ) {
                result = x * result + _coefficients[ i ];
            }
            return result;
        }
 
        ///<summary>
        ///  Сложение*полиномов.
        ///</summary>
        public static Polynomial operator +( Polynomial pFirst, Polynomial pSecond ) {
            int itemsCount = Math.Max( pFirst._coefficients.Length, pSecond._coefficients.Length );
            var result = new double[itemsCount];
            for ( int i = 0; i < itemsCount; i++ ) {
                double a = 0;
                double b = 0;
                if ( i < pFirst._coefficients.Length ) {
                    a = pFirst[ i ];
                }
                if ( i < pSecond._coefficients.Length ) {
                    b = pSecond[ i ];
                }
                result[ i ] = a + b;
            }
            return new Polynomial( result );
        }
 
        ///<summary>
        ///  Вычитание*полиномов.
        ///</summary>
        public static Polynomial operator -( Polynomial pFirst, Polynomial pSecond ) {
            int itemsCount = Math.Max( pFirst._coefficients.Length, pSecond._coefficients.Length );
            var result = new double[itemsCount];
            for ( int i = 0; i < itemsCount; i++ ) {
                double a = 0;
                double b = 0;
                if ( i < pFirst._coefficients.Length ) {
                    a = pFirst[ i ];
                }
                if ( i < pSecond._coefficients.Length ) {
                    b = pSecond[ i ];
                }
                result[ i ] = a - b;
            }
            return new Polynomial( result );
        }
 
        ///<summary>
        ///  Умножение*полиномов.
        ///</summary>
        public static Polynomial operator *( Polynomial pFirst, Polynomial pSecond ) {
            int itemsCount = pFirst._coefficients.Length + pSecond._coefficients.Length - 1;
            var result = new double[itemsCount];
            for ( int i = 0; i < pFirst._coefficients.Length; i++ ) {
                for ( int j = 0; j < pSecond._coefficients.Length; j++ ) {
                    result[ i + j ] += pFirst[ i ] * pSecond[ j ];
                }
            }
 
            return new Polynomial( result );
        }
 
        ///<summary>
        ///  Равенство*полиномов.
        ///</summary>
        public static bool operator ==( Polynomial pFirst, Polynomial pSecond ) {
            if ( pFirst._coefficients.Length != pSecond._coefficients.Length ) {
                return false;
            }
            for ( int i = 0; i < pFirst._coefficients.Length; i++ ) {
                if ( pFirst[ i ] != pSecond[ i ] ) {
                    return false;
                }
            }
            return true;
        }
 
        public static bool operator !=( Polynomial pFirst, Polynomial pSecond ) {
            return !(pFirst == pSecond);
        }
    }
}
(Полином, это то же, что многочлен)
2
49 / 31 / 2
Регистрация: 14.02.2013
Сообщений: 677
16.03.2014, 09:52 6
Unril,
Просто в познавательных целях спрашиваю, что это за код такой в комментах? Тэги какие-то, регион в директивах О_о
0
Заблокирован
16.03.2014, 10:33 7
SrgKord, запустите программу и сразу поймете, что делает #region - #endregion.

Эти метки скрывают часть кода - для удобства и большей читабельности.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
16.03.2014, 10:33
Помогаю со студенческими работами здесь

Составить описание класса многочленов от одной переменной, задаваемых степенью многочлена и массивом коэффициентов
Помогите, пожалуйста. Есть следующая задача Составить описание класса многочлена от одной переменной, задаваемого степенью многочлена...

Составить описание класса многочленов от одной переменной, задаваемых степенью многочлена и массивом коэффициентов
Здравствуйте,есть задание : Составить описание класса многочленов от одной переменной, задаваемых степенью многочлена и массивом...

Составить описание класса многочленов от одной переменной, задаваемых степенью многочлена и массивом коэффициентов.
Нужна программа на Java. Задание звучит так: Составить описание класса многочленов от одной переменной, задаваемых степенью многочлена и...

Составить описание классов многочленов от одной переменной, задаваемых степенью многочлена и массивом коэффициентов
Помогите решить задачу, заранее спасибо) Составить описание классов многочленов от одной переменной, задаваемых степенью многочлена и...

Составить описание класса многочленов от одной переменной
Составить описание класса многочленов от одной переменной, задаваемых степе- нью многочлена и массивом коэффициентов. Предусмотреть...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

Новые блоги и статьи
Java Micronaut в Docker: контейнеризация с Maven и Jib
Javaican 16.03.2025
Когда речь заходит о микросервисной архитектуре на Java, фреймворк Micronaut выделяется среди конкурентов. Он создан с учётом особенностей облачных сред и контейнеров, что делает его идеальным. . .
Управление зависимостями в Java: Сравнение Spring, Guice и Dagger 2
Javaican 16.03.2025
Инъекция зависимостей (Dependency Injection, DI) — один из фундаментальных паттернов проектирования, который радикально меняет подход к созданию гибких и тестируемых Java-приложений. Суть этого. . .
Apache Airflow для оркестрации и автоматизации рабочих процессов
Mr. Docker 16.03.2025
Управление сложными рабочими процессами — одна из главных головных болей инженеров данных и DevOps-специалистов. Представьте себе: каждый день нужно запускать десятки скриптов в определенной. . .
Оптимизация приложений Java для ARM
Javaican 16.03.2025
ARM-архитектура переживает настоящий бум популярности в технологическом мире. Когда-то воспринимаемая исключительно как решение для мобильных устройств и встраиваемых систем, сегодня она штурмует. . .
Управление состоянием в Vue 3 с Pinia и Composition API
Reangularity 16.03.2025
Когда я начал работать с Vue несколько лет назад, мне казалось достаточным использовать простую передачу данных через props и события между компонентами. Однако уже на среднем по сложности проекте. . .
Введение в DevSecOps: основные принципы и инструменты
Mr. Docker 16.03.2025
DevSecOps - это подход к разработке программного обеспечения, который объединяет в себе принципы разработки (Dev), безопасности (Sec) и эксплуатации (Ops). Суть подхода заключается в том, чтобы. . .
GitHub Actions vs Jenkins: Сравнение инструментов CI/CD
Mr. Docker 16.03.2025
В этой битве за эффективность и скорость выпуска программных продуктов ключевую роль играют специализированные инструменты. Два гиганта в этой области — GitHub Actions и Jenkins — предлагают разные. . .
Реактивное программировани­е с Kafka Stream и Spring WebFlux
Javaican 16.03.2025
Реактивное программирование – это программная парадигма, ориентированная на потоки данных и распространение изменений. Она позволяет выражать статические или динамические потоки данных и. . .
Простая нейросеть на КуМир: Учебное пособие по созданию и обучению нейронных сетей
EggHead 16.03.2025
Искусственные нейронные сети — удивительная технология, позволяющая компьютерам имитировать работу человеческого мозга. Если вы хотя бы немного интересуетесь современными технологиями, то наверняка. . .
Исполнитель Кузнечик в КуМир: Решение задач
EggHead 16.03.2025
Среди множества исполнителей в системе КуМир особое место занимает Кузнечик — простой, но невероятно полезный виртуальный персонаж, который перемещается по числовой прямой, выполняя ваши команды. На. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru