Un fişier binar conţine mai multe polinoame rare. Scrieţi un program implementat prin comandă disppoly numef n1 n2 ...
care afişează polinoamele rare din fişierul numef
, având numerele de ordine n1, n2, ...
Fiecare articol în fişier reprezintă un polinom rar, iar articolele din fişier au lungimi variabile. Pentru a putea accesa un polinom din fişier poate defini o funcţie care face o poziţionare în dreptul unui polinom cu numărul specificat. Pentru citirea polinoamelor în memorie, în vederea afişării lor, se va alocă dinamic memoria. Orice tablou auxiliar folosit va fi alocat/re-alocat dinamic în memorie.
Atenţie: NU se va citit întreg fişierul în memorie, ci se va folosi o variabilă de tip structură pentru citirea unui polinom.
Indicaţie: Un polinom rar este un polinom cu termeni puţini şi grad mare. Acest polinom se reprezintă prin: numărul termenilor nenuli, grad şi tabloul termenilor nenuli (alocat dinamic). În acest scop se consideră definiţiile:
typedef struct { double c; int exp; } termen; typedef struct { int ntn; int grd; termen *t; } polinom_rar;
De exemplu, pentru polinomul
o variabilă polinom_rar p
va avea valoarea: {3, 2012, {{1.0, 2012}, {-2.0, 1}, {2013.0, 0}}}
.