Page 86

2.1 Vectores est´aticos Aqu´ı tienes un ejemplo de uso del programa con los polinomios p(x) = 5 + 3x + 5x2 + x3 y q(x) = 4 − 4x − 5x2 + x3 : 

Grado de p (entre 0 y 10): 3 p_0: 5 p_1: 3 p_2: 5 p_3: 1 Grado de q (entre 0 y 10): 3 q_0: 4 q_1: -4 q_2: -5 q_3: 1 Suma: 9.000000 + -1.000000 x^1 + 0.000000 x^2 + 2.000000 x^3 + 0.000000 x^4 + 0.000000 x^5 + 0.000000 x^6 + 0.000000 x^7 + 0.000000 x^8 + 0.000000 x^9 + 0.000000 x^10    





 



. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . · 81 Modifica el programa anterior para que no se muestren los coeficientes nulos. · 82 Tras efectuar los cambios propuestos en el ejercicio anterior no aparecer´a nada por pantalla cuando todos los valores del polinomio sean nulos. Modifica el programa para que, en tal caso, se muestre por pantalla 0.000000. · 83 Tras efectuar los cambios propuestos en los ejercicios anteriores, el polinomio empieza con un molesto signo positivo cuando s0 es nulo. Corrige el programa para que el primer t´ermino del polinomio no sea precedido por el car´acter +. · 84 Cuando un coeficiente es negativo, por ejemplo −1, el programa anterior muestra su correspondiente t´ermino en pantalla as´ı: + -1.000 x^1. Modifica el programa anterior para que un t´ermino con coeficiente negativo como el del ejemplo se muestre as´ı: - 1.000000 x^1. ............................................................................................. Nos queda lo m´ as dif´ıcil: el producto de los dos polinomios. Lo almacenaremos en un vector llamado m. Como el producto de dos polinomios de grado menor o igual que n es un polinomio de grado menor o igual que 2n, la talla del vector m no es TALLA_POLINOMIO: 1 2 3 4 5 6

... int main(void) { float p[TALLA_POLINOMIO], q[TALLA_POLINOMIO], s[TALLA_POLINOMIO]; float m[2*TALLA_POLINOMIO-1] ; ...

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . · 85 ¿Entiendes por qu´e hemos reservado 2*TALLA_POLINOMIO-1 elementos para m y no 2*TALLA_POLINOMIO? ............................................................................................. El coeficiente mi , para valores de i entre 0 y el grado m´aximo de m(x), es decir, entre los enteros 0 y 2*TALLA_POLINOMIO-2, se calcula as´ı: mi =

i X

pj · qi−j .

j=0

Deberemos tener cuidado de no acceder err´oneamente a elementos de p o q fuera del rango de ´ındices v´ alidos. Implementemos ese c´ alculo: polinomios 1.c 1

polinomios.c

#include <stdio.h>

2 3

#define TALLA_POLINOMIO 11

4

80

Introducci´ on a la Programaci´ on con C

Profile for esLibre.com

Introducción a la programación con c  

Introducción a la programación con c  

Advertisement