@_13th_Dragon: Zadanie polega na tym iż mam stworzyć typ danych reprezentujący wielomiany, mają być przechowywane w liście cyklicznej a pierwszymi wartościami listy mają być 0 i -1 nastepnie funkcja która będzie wyświetlała wielomian już złożony czyli na podaje 2 6 -5 5 funkcja wyświetli mi 2x^6 - 5x^5
#include <iostream>
using namespace std;
struct Node{
int data1; //wspólczynnik
int data2; //potęga
struct Node *next;
};
struct Node* head = NULL;
Node* nowyWielomian(int n, int a){
Node* w = new Node;
w->data1 = n;
w->data2 = a;
return w;
}
Node* wczytajWieloman(){
int ile;
int n=0;
int a=-1;
struct Node *newnode = (struct Node *)malloc(sizeof(struct Node));
struct Node *ptr = head;
newnode->data1 = a;
newnode->data2 = n;
newnode->next = head;
if (head!= NULL) {
while (ptr->next != head)
ptr = ptr->next;
ptr->next = newnode;
} else
newnode->next = newnode;
head = newnode;
cout<<"z ilu wspolczynnikow sklada sie wielomian";
cin>>ile;
while(ile>0){
cout<<"podaj wykladnik"<<endl;
cin>>a;
cout<<"podaj potege"<<endl;
cin>>n;
ile--;
}
Node* w = nowyWielomian(a, n);
return w;
}
void display(Node* w) {
struct Node* ptr;
ptr = head;
do {
cout<<ptr->data1<<"x^"<<ptr->data2;
ptr = ptr->next;
}
while(ptr != head);
}
int main () {
Node* w = wczytajWieloman();
display(w);
return 0;
}
zrobiłem coś takiego ale program wyświetla mi tylko 2 pierwsze wartości nie wiem czy dobrze zaimplementowałem listę, jeśli ktoś może coś podpowiedzieć byłbym wdzięczny z tablicami nie mam problemu ale listy jeszcze nie bardzo rozumiem.