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

Очередь: Напишите программу сложения и умножения многочленов, представленных описанным образом - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Написать программу, которая предлагает пользователю ввести целую матрицу размером 4 на 4 и заменяет все четные элементы их квадратами http://www.cyberforum.ru/cpp-beginners/thread871427.html
Здравствуйте, меня Зовут Алина, прошу помощи для решения задач на С++ очень нужно для экзамена! буду очень признательна! ПОМОГИТЕ ПОЖАЛУЙСТА!!! ...
C++ Написать программу, которая вычисляет целую степень, в которую необходимо возвести число 2, чтобы получить число, ближайшее меньшее либо равное числу, Написать программу, которая вычисляет целую степень, в которую необходимо возвести число 2, чтобы получить число, ближайшее меньшее либо равное числу, заданному в начале программы. Спасибо. http://www.cyberforum.ru/cpp-beginners/thread871411.html
C++ Переписать символы с входящего рядка в выходящий, меняя операторы языка паскаль на операторы языка С++ := на =, = на ==, # на !=
Переписать символы с входящего рядка в выходящий, меняя операторы языка паскаль на операторы языка С++ := на =, = на ==, # на != Спасибо.
C++ Оформить в виде функции
Оформить в виде функции на C/C++ решение задачи: b_i = a_i \,- \,(\min_{1\leq j\leq n}a_j) \\i = 1, 2 .. n #include <ctime> #include <iostream> #include <conio.h> const int N=10; const int...
C++ С++ Builder Циклы с условием (при вводе адреса цвета (например, 0 255 0) выдавать имя цвета) http://www.cyberforum.ru/cpp-beginners/thread871397.html
Help, не могу решить задачку ЛБ: нужно написать программу, при вводе адреса цвета (на пример 0 255 0 выдавал имя цвета). //---------------------------------------------------------------------------...
C++ Почему падает программа? Почему падает программа? Компилируется без ошибок, но при запуске аварийное завершение работы. #include <iostream> #include <stdlib.h> using namespace std; class AnyClass { int x; //... подробнее

Показать сообщение отдельно
TankMr
1 / 1 / 0
Регистрация: 13.05.2013
Сообщений: 30
22.05.2013, 19:46  [ТС]
Привет

Вообщем сделал программу, но оказывается не то нужно было.

Там просто нужно вывести их на экран, в порядке убывания.

Например: 1*x^6+4*x^4+2*x^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
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
142
143
144
#include "iostream"
#include <string.h>
#include <process.h>
#include <conio.h>
 
#define N 100
 
using namespace std;
 
struct Vspom
{
    int a;//для коэ-та Сi
    float e;//для показателя степени 
};
 
class Dat
{
    private: 
        Vspom s[N];
        int i,n;
    public:
        Dat()//конструктор
        {
            i=0;
            n=0;
        }
    void Add(Vspom);
    Vspom Del(void);//del
    int Pust(void);//pustoty
    int Poln(void);//polnoty
    Vspom Read(void);//неразруш. чтен
};
 
void Dat::Add(Vspom x)
{
    if(n<N)
    {
        s[i+n]=x;
        n++;
    }
    else cout<<"error!!"<<endl;
}
 
Vspom Dat::Del(void)
{
    if(n!=0)
    {
        i++; n--;
        return s[i-1];
    }
}
 
int Dat::Pust(void)
{
    return n==0;
}
 
int Dat::Poln(void)
{
    return n==N;
}
 
Vspom Dat::Read(void)
{
    return s[i];
}
 
int main()
{
    Dat pol1,pol2,sum;
    Vspom b,q;
    char k;
    do
    {
        //cout«"Menu:\n\n";
        cout<<"1-Enter Pol_1\n2-Enter Pol_2\n3-Rezult\n\n";
        k=getch();
        if(k=='1')
        {
            cout<<"Pop1:\n\n";
            cout<<"a=";
            cin>>b.a;
            cout<<"e=";
            cin>>b.e;
            pol1.Add(b);
        }
        if(k=='2')
        {
            cout<<"Pol2:\n\n";
            cout<<"a=";
            cin>>b.a;
            cout<<"e=";
            cin>>b.e;
            pol2.Add(b);
        }
    }
    while(k!='3');
    cout<<"\n\n";
    cout<<"Summa\n\n";
    while(!pol1.Pust()&&!pol2.Pust())
    {
        b=pol1.Read();
        q=pol2.Read();
        if(b.e==q.e)
        {
            b.a+=q.a;
            sum.Add(b);
            pol1.Del();
            pol2.Del();
        }
        else if(b.e>q.e)
        {
            sum.Add(b);
            pol1.Del();
        }
        else
        {
            sum.Add(q);
            pol2.Del();
        }
 
    }
    while(!pol1.Pust())
    {
        b=pol1.Del();
        sum.Add(b);
    }
    while(!pol2.Pust())
    {
        q=pol2.Del();
        sum.Add(q);
    }
    while(!sum.Pust())
    {
        b=sum.Del();
        cout<<b.a<<"*x^"<<b.e;
        if(!sum.Pust())
        {
            cout<<"+";
        }
 
    }
    getch();
}
Это циклический массив
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru