In: Advanced Math
#include <stdio.h>
#include <stdlib.h>
#define MAXSIZE 10
void main()
{
int array[MAXSIZE];
int i, num, power;
float x, polySum;
printf("Enter the order of the polynomial \n");
scanf("%d", &num);
printf("Enter the value of x \n");
scanf("%f", &x);
/* Read the coefficients into an array */
printf("Enter %d coefficients \n", num + 1);
for (i = 0; i <= num; i++)
{
scanf("%d", &array[i]);
}
polySum = array[0];
for (i = 1; i <= num; i++)
{
polySum = polySum * x + array[i];
}
power = num;
printf("Given polynomial is: \n");
for (i = 0; i <= num; i++)
{
if (power < 0)
{
break;
}
/* printing proper polynomial function */
if (array[i] > 0)
printf(" + ");
else if (array[i] < 0)
printf(" - ");
else
printf(" ");
printf("%dx^%d ", abs(array[i]), power--);
}
printf("\n Sum of the polynomial = %6.2f \n", polySum);
}
Runtime Test Cases
$ cc pgm.c
$ a.out Enter the order of the polynomial 2 Enter the value of x 2 Enter 3 coefficients 3 2 6 Given polynomial is: + 3x^2 + 2x^1 + 6x^0 Sum of the polynomial = 22.00 $ a.out Enter the order of the polynomial 4 Enter the value of x 1 Enter 5 coefficients 3 -5 6 8 -9 Given polynomial is: + 3x^4 - 5x^3 + 6x^2 + 8x^1 - 9x^0 Sum of the polynomial = 3.00