• Aucun résultat trouvé

TP 2. (Schma de H˝ orner pour le calcul d’un polynˆ ome P en ( x

N/A
N/A
Protected

Academic year: 2022

Partager "TP 2. (Schma de H˝ orner pour le calcul d’un polynˆ ome P en ( x"

Copied!
2
0
0

Texte intégral

(1)

Universit´e Paris-Nord D.E.U.G. MIAS 1

Institut Galil´ee Ann´ee 2002-2003

TP 4: Les tableaux en C.

TP 1. (Dessin)

Ecrire un programmeC qui affiche un triangle isocele form d’toiles deN lignes (N fourni par l’utilisateur). Chaque ligne a un nombre impair d’toiles. On utilisera l’instructionputchar(’caractere’)pour afficher le caractre voulu :

Exemple pour N = 8

*

***

*****

*******

*********

***********

*************

***************

#include<stdio.h>

#define LIGNE 8 main() {

int L; /* Compteur de ligne */

int Esp; /* Compteur d’espace blanc */

int C; /* Compteur de caractere */

for(L=0;L<LIGNE;L=L+1) { Esp= LIGNE-L-1;

for(C=0; C<Esp; C=C+1) putchar(’ ’);

for(C=0; C<2*L+1; C=C+1) putchar(’*’);

putchar(’\n’);

} }

TP 2. (Schma de H˝ orner pour le calcul d’un polynˆ ome P en ( x

0

))

L’objectif de cet exercice est de calculer pour une valeur relleX0 donne, la valeur numrique d’un polynˆomeP de degrn:

P(X0) =anX0n+an1X0n1. . .+a1X0+a0. Les valeurs de n, des cofficients an, an

1, . . ., a1 et a0 seront entrs au clavier et seront mmorises dans un tableau.

La mthode de Horner permet de calculerP(x0), ainsi que ses drivesP(k)(x0) en utilisant un minimum d’oprations. Elle vite en effet le calcul redondant de plusieurs

1

(2)

des puissances de x0.

Pour calculer P(x0), on dfinit la suite (Pi)i par la rcurrence suivante Pi=X0∗Pi1+ani ; 1≤i≤n ; P0=an. On montre queP(X0) =Pn.

#include <stdio.h>

#define MAX 6

/* --- */

/* Schma de Horner pour valuer un polynme en point x0 . */

/* */

/* Soit un P(x) un polynme dfinit l’aide d’un tableau de taille */

/* MAX, de degr <= MAX-1. La rgle de Horner est une stratgie pour */

/* valuer ce polynme au point x = valeur, en utilisant un nombre */

/* minimal de multiplications. */

/* */

/* --- */

main() {

int x0, degre, i, h;

/* h contient a la fin le resultat */

int P[MAX];

/* Saisie du polynme */

printf("Donnez le degr du polynme (<= MAX):\n");

scanf("%d",&degre);

printf("Donnez les lments du polynme P:\n");

for(i=0;i<=degre;i++) {

printf("Donnez P[%d]\n",i);

scanf("%d",&P[i]);

}

/* Saisie de la valeur de x0 */

printf("Donnez la valeur de x0:\n");

scanf("%d",&x0);

/* Calcul de P(x0) et son impression: */

h=P[degre]; /* degre = 0 si le polynme est constant. */

if(degre >=1) {

for(i=degre; i>=1; i=i-1) h=x0*h+P[i-1];

}

printf("\t P(%d) = %d\n",x0,h);

}

2

Références

Documents relatifs

Les élèves ne disposant pour l’instant que d’informations qualitatives sur l’énergie potentielle et l’énergie cinétique d’un système, le but de

(b) Ecrire une fonction qui calcule les coefficients du polynˆ ome d’interpolation dans la base des monˆ omes pour des valeurs d’interpolation et la matrice de Vandermonde des

Soit A, B deux polynˆome non nuls, on effectue les divisions euclidiennes suc- cessives des quotients par leurs restes, jusqu’`a arriver `a un reste nul, alors le dernier reste non

En déduire la concentration molaire C S en ions chlorure initialement présents dans la solution S, puis celle C 0 dans le

En tant que Directeur fondateur de cette école privée, professeur de mathématique au collège d’une expérience de 17 ans de classe ayant exploité

3- Ne cessant d’améliorer notre commande, nous avons constaté qu’un phénomène d’oscillation de l’eau autour d’un niveau provoque de nombreux démarrage et arrêt

Ce scénario décrit les processus qui surviennent lors des interventions de maintenance précédant généralement un avis de panne pour un objet technique (vous avez également

On décompose le volume du liquide en rotation en couronnes cylindriques de rayon r, d’épaisseur dr et de hauteur z(r). Exprimer le volume dV d’une telle couronne. En supposant que