• Aucun résultat trouvé

Travaux Dirig´es de programmation n

N/A
N/A
Protected

Academic year: 2022

Partager "Travaux Dirig´es de programmation n"

Copied!
2
0
0

Texte intégral

(1)

Travaux Dirig´ es de programmation n

o

1

Cours de Programmation C

—L2.1—

xExercice 1.

Polynˆ omes

Dans toutes les r´ eponses, une attention particuli` ere sera donn´ ee ` a la gestion de la m´ emoire.

On d´ ecide de repr´ esenter des polynˆ omes ` a coefficients entiers ` a une variable par des listes simplement chaˆın´ ees de monˆ omes, chaque monˆ ome ´ etant repr´ esent´ e par une structure constitu´ ee d’un entier coef pour le coefficient du monˆ ome, d’un entier degre pour le degr´ e du monˆ ome, et d’un pointeur sur le monˆ ome suivant. Un polynˆ ome ne contient pas 2 monˆ omes de mˆ eme degr´ e.

On ordonne les monˆ omes par degr´ e croissant.

1. D´ efinir les types Monome et Polynome

2. ´ Ecrire la liste ordonn´ ee correspondant au polynˆ ome :

12 +x+ 3x4−5x13

3. ´ Ecrire une fonction float EvaluePolynome(Polynome p,float val) qui renvoie la valeur de p pour x= val.

4. ´ Ecrire une fonction int AjouteMonome(Monome *m,Polynome *p) qui ajoute le monˆ ome *m au polynˆ ome *p. Un polynˆ ome ne doit pas avoir deux monˆ omes avec le mˆ eme degre, cependant, on ne traitera pas pour l’instant le cas des monˆ ome ` a coeffi- cient nul

5. ´ Ecrire une fonction int SommePolynome(Polynome p,Polynome q,Polynome *res) qui place ` a l’adresse res le Polynome ´ egal ` a

p+q. La fonction renvoie 0 en cas d’´

echec, 1 sinon. On suppose que les deux polynomes envoy´ es sont correctement format´ es : ils ne contiennent pas de monomes avec un coefficient nul sauf s’ils sont le polynˆ ome nul et dans ce cas, ils ne contiennent qu’un seul monˆ ome de coefficient 0 et de degr´ e 0. Le r´ esultat obtenu doit avoir le mˆ eme format.

6. ´ Ecrire une fonction int prod(Monome m, Polynome p,Polynome *res) qui place ` a l’adresse res le Polynome ´ egal au produit du monˆ ome et du polynˆ ome. La fonction renvoie 0 en cas d’echec d’allocation , 1 sinon.

7. ´ Ecrire une fonction int ProduitPolynome(Polynome p,Polynome q,Polynome

*res) qui place ` a l’adresse res le polynˆ ome ´ egal ` a

p∗q. La fonction renvoie 0 en cas

d’echec, 1 sinon.

xExercice 2.

Couleurs

On travaille ` a la cr´ eaction d’un logiciel simple de dessin. Pour repr´ esenter la zone de dessin, on utilise une grille de pixels dont chacun contient une couleur sous la forme de trois valeurs R V B.

1

(2)

1. On veut que la grille soit repr´ esent´ ee sous la forme d’un tableau ` a deux dimensions de pixels. Ecrire les d´ efinitions des types Pixel et Grille.

2. Ecrire la fonction d’allocation et de d´ esallocation de la grille.

3. Ecrire la fonction Remplir(Grille G, int ligne, int col, Pixel couleur) qui modifie la couleur du pixel situ´ e en position G[ligne,col] ainsi que de tous les pix- els pouvant ˆ etre atteints par voisinage de mˆ eme couleur, pour leur donner la couleur envoy´ ee en argument de la fonction.

2

Références

Documents relatifs

Si A est un anneau principal, tout ´ el´ ement irr´ eductible est premier, et donc les notions d’´ el´ ement premier et d’´ el´ ement irr´ eductible co¨ıncident dans ce

Le¸ con: Approximation d’une fonction par des polynˆ omes et des polynˆ omes trigonom´ etriques.. Exemples

– Liste doublement chaˆ ın´ ee : en plus du champ successeur, chaque ´ el´ ement contient un champ pr´ ed´ ecesseur qui est un pointeur sur l’´ el´ ement pr´ ec´ edent dans

´ Ecrivez des fonctions r´ ealisant : l’union, l’intersection, la diff´ erence, la diff´ erence sym´ etrique et le produit cart´ esien de

Propri´ et´ es arithm´ etiques : polynˆ omes premiers entre eux, th´ eor` eme de Bezout, lemme de Gauss, lien entre A × B, A ∧ B et A ∨ B.. Remarque : la notion d’id´ eal

D´ emontrer que g est une application lin´ eaire.. Nous admettrons qu’il en est de

De plus, les s´ eries de Fourier sont aussi un outil pour r´ ealiser l’analyse de Von Neumann des EDP, afin d’obtenir des conditions CFL assurant la stabilit´ e L 2 du sch´ emaI.

Ecrire une fonction orthogonalisation, prenant en entr´ ee une liste de vecteurs dans un espace V (pas n´ ecessairement R n ) ainsi qu’un produit scalaire (une fonction de V ×V dans