Page 85

CC 2003, 2008 Andr´ es Marzal e Isabel Gracia

for (i=grado+1; i<TALLA_POLINOMIO; i++) p[i] = 0.0; ... return 0;

18 19 20 21 22

2 Estructuras de datos en C: vectores est´aticos y registros

}

Ahora que hemos le´ıdo los polinomios, calculemos la suma. La almacenaremos en un nuevo vector llamado s. La suma de dos polinomios de grado menor que TALLA_POLINOMIO es un polinomio de grado tambi´en menor que TALLA_POLINOMIO, as´ı que el vector s tendr´a talla TALLA_POLINOMIO. polinomios.c 4 5 6 7 8

... int main(void) { float p[TALLA_POLINOMIO], q[TALLA_POLINOMIO], s[TALLA_POLINOMIO] ; ...

El procedimiento para calcular la suma de polinomios es sencillo. He aqu´ı el c´alculo y la presentaci´ on del resultado en pantalla: polinomios.c 1

polinomios.c

#include <stdio.h>

2 3

#define TALLA_POLINOMIO 11

4 5 6 7 8 9

int main(void) { float p[TALLA_POLINOMIO], q[TALLA_POLINOMIO], s[TALLA_POLINOMIO]; int grado; int i;

10

/* Lectura de p */ do { printf ("Grado de p (entre 0 y %d): ", TALLA_POLINOMIO-1); scanf ("%d", &grado); } while (grado < 0 || grado >= TALLA_POLINOMIO); for (i = 0; i<=grado; i++) { printf ("p %d: ", i); scanf ("%f", &p[i]); } for (i=grado+1; i<TALLA_POLINOMIO; i++) p[i] = 0.0;

11 12 13 14 15 16 17 18 19 20

/* Lectura de q */ do { printf ("Grado de q (entre 0 y %d): ", TALLA_POLINOMIO-1); scanf ("%d", &grado); } while (grado < 0 || grado >= TALLA_POLINOMIO); for (i = 0; i<=grado; i++) { printf ("q %d: ", i); scanf ("%f", &q[i]); } for (i=grado+1; i<TALLA_POLINOMIO; i++) q[i] = 0.0;

21 22 23 24 25 26 27 28 29 30

/* C´ alculo de la suma */ for (i=0; i<TALLA_POLINOMIO; i++) s[i] = p[i] + q[i];

31 32 33 34

/* Presentaci´ on del resultado */ printf ("Suma: %f ", s[0]); for (i=1; i<TALLA_POLINOMIO; i++) printf ("+ %f x^%d ", s[i], i); printf ("\n");

35 36 37 38 39 40

return 0;

41 42

}

Introducci´ on a la Programaci´ on con C

79

Profile for esLibre.com

Introducción a la programación con c  

Introducción a la programación con c  

Advertisement