/*********************************** * * Filename: poly.c * * ************************************/ #include "poly.h" /* Initialize all coefficients and exponents of the polynomial to zero. */ void init_polynom( int coeff[ ], int exp[ ] ) { /* ADD YOUR CODE HERE */ } /* end init_polynom */ /* Get inputs from user using scanf() and store them in the polynomial. */ void get_polynom( int coeff[ ], int exp[ ] ) { /* ADD YOUR CODE HERE */ } /* end get_polynom */ /* Convert the polynomial to a string s. */ void polynom_to_string( int coeff[ ], int exp[ ], char s[ ] ) { /* ADD YOUR CODE HERE */ } /* end polynom_to_string */ /* Evaluate the polynomial for the value of x and store the result p(x) in variable result. */ void eval_polynom( int coeff[ ], int exp[ ], double x, double *result ) { /* ADD YOUR CODE HERE */ } /* end eval_polynom */ /* Add two polynomials and the result is stored in the first polynomial (arrays co1[] and ex1[]). */ void add_polynom( int co1[ ], int ex1[ ], int co2[ ], int ex2[ ] ) { /* ADD YOUR CODE HERE */ } /* end add_ polynom */ /************************** END OF FILE ***************************/
/*********************************** * * Filename: poly.h * ************************************/ #include <stdio.h> #define ASIZE 50
/************************** END OF FILE ***************************/
/*********************************** * * Filename: polyMain.c * ************************************/ #include "poly.h" int main() { int coeff1[ASIZE], exp1[ASIZE], coeff2[ASIZE], exp2[ASIZE]; char strg[ASIZE*5]; double x, y; do { init_polynom( coeff1, exp1 ); get_polynom( coeff1, exp1 ); polynom_to_string( coeff1, exp1, strg ); printf( "%s\n", strg); init_polynom( coeff2, exp2 ); get_polynom( coeff2, exp2 ); polynom_to_string( coeff2, exp2, strg ); printf( "%s\n", strg); add_polynom( coeff1, exp1, coeff2, exp2 ); polynom_to_string( coeff1, exp1, strg ); printf( "%s\n\n", strg); } while ( coeff1[0] ); polynom_to_string( coeff2, exp2, strg ); printf( "%s\n", strg); do { scanf( "%lf", &x ); /* to input a double use "%lf", not "%f" */ eval_polynom( coeff2, exp2, x, &y ); printf( "p(%.4lf) = %.4lf \n", x, y ); } while ( x ); return 0; /* normal termination */ }
/************************** END OF FILE ***************************/
/*********************************** * * Filename: poly_in.txt * ************************************/
3 12 5 -5 2 20 0 5 -3 7 4 5 -7 3 10 2 9 0 3 -4 5 -10 2 20 0 5 -3 7 4 5 -7 3 10 2 9 0 0 6 17291 7 42 5 -7098 3 -1 2 8 1 -9 0 1 1 0 10 1 64 2 50 3 32 4 25 -5 20 6 18 7 15 8 10 -9 1 10 0 2 1 10 1 0 3 1 200 1 45 -1 0 4 -3 3 -2 2 -1 1 -1 0 4 3 3 2 2 1 1 1 0 1.0 2.0 3.0 -2.0 2.55 100.0 7.99492 0.0
/*********************************** * * Filename: poly_Out.txt * ************************************/
12x^5-5x^2+20
-3x^7+4x^5-7x^3+10x^2+9 -3x^7+16x^5-7x^3+5x^2+29 -4x^5-10x^2+20 -3x^7+4x^5-7x^3+10x^2+9 -3x^7-7x^3+29 0 17291x^7+42x^5-7098x^3-x^2+8x-9 17291x^7+42x^5-7098x^3-x^2+8x-9 1 x^64+2x^50+3x^32+4x^25-5x^20+6x^18+7x^15+8x^10-9x+10 x^64+2x^50+3x^32+4x^25-5x^20+6x^18+7x^15+8x^10-9x+11 x^10+1 x^200+x^45-1 x^200+x^45+x^10 -3x^3-2x^2-x-1 3x^3+2x^2+x+1 0 3x^3+2x^2+x+1 p(1.0000) = 7.0000 p(2.0000) = 35.0000 p(3.0000) = 103.0000 p(-2.0000) = -17.0000 p(2.5500) = 66.2991 p(100.0000) = 3020101.0000 p(7.9949) = 1669.9082 p(0.0000) = 1.0000
#include<stdio.h>
#include<math.h>
#include<stdlib.h>
/* Initialize all coefficients and exponents of the polynomial
to zero. */
void init_polynom(int coeff[],int exp[])
{
int i;
for(i=0;i<100;i++)
{
coeff[i]=0;
exp[i]=0;
}
}
/* Get inputs from user using scanf() and store them in the
polynomial. */
void get_polynom(int coeff[],int exp[])
{
int i,n;
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%d
%d",&coeff[i],&exp[i]);
}
}
int addValueIntoString(char s[],int k,int value)
{
int temp=value,count=0;
while(temp>=10)
{
temp=temp/10;
count++;
}
int tens=(int)(pow(10,count));
while(tens>0)
{
int digit=value/tens;
s[k++]=(char)(digit+48);
value=value%tens;
tens=tens/10;
}
return k;
}
/* Convert the polynomial to a string s. */
void polynom_to_string(int coeff[],int exp[],char s[])
{
int i,k=0;
// k is
the variable that points to index in s[]
for(i=0;i<100;i++)
{
if(coeff[i]<0)
s[k++]='-';
// if
number is -ve, then '-' is added into s[]
int
value=abs(coeff[i]);
// adding the coeff into s[]
if(value>1)
k=addValueIntoString(s,k,value);
if(exp[i]!=0)
{
s[k++]='x';
s[k++]='^';
k=addValueIntoString(s,k,exp[i]); // adding the exp
into s[]
}
if(i+1<100 &&
coeff[i+1]>0)
s[k++]='+';
}
s[k++]='\0';
}
/* Evaluate the polynomial for the value of x and store the
result p(x) in variable result. */
void eval_polynom(int coeff[], int exp[], double x, double
*result)
{
double res=1;
int i;
for(i=0;i<100;i++)
{
if(exp[i]==0)
res=res+coeff[i];
else
res=res*coeff[i]*pow(x,exp[i]);
}
*result=res;
}
/* Add two polynomials and the result is stored in the first
polynomial (arrays co1[] and ex1[]). */
void add_polynom(int co1[], int ex1[], int co2[], int ex2[])
{
int i,j,k;
int coeff[100],exp[100];
//
temporary arrays of coeff and exp
init_polynom(coeff,exp);
i=0;
j=0;
k=0;
while(i<100 && j<100)
{
if(ex1[i]==ex2[j])
//if both the exponents of polynomial are same
then add both coefficients and increment both i,j
{
coeff[k]=co1[i]+co2[j];
exp[k]=ex1[i];
i++;
j++;
}
else
if(ex1[i]>ex2[j])
// if ith exponent is greater
then add coeff and exp of i in array and increment i
{
coeff[k]=co1[i];
exp[k]=ex1[i];
i++;
}
else
{
coeff[k]=co2[j];
// if jth exponent is greater then add coeff and
exp of j in array and increment j
exp[k]=ex2[j];
j++;
}
k++;
}
for(int i=0;i<100;i++)
// add back the results of addition into co1[]
and ex1[] arrays
{
co1[i]=coeff[i];
ex1[i]=exp[i];
}
}
int main()
{
char str[100];
int coeff1[100],exp1[100];
// coeff1[] and exp1[] are
arrays of polynomial1
init_polynom(coeff1,exp1);
printf("Polynomial 1:\n");
get_polynom(coeff1,exp1);
polynom_to_string(coeff1,exp1,str);
printf("%s\n",str);
double x=1,result=0;
double *ptr=&result;
eval_polynom(coeff1,exp1,x,ptr);
printf("%lf\n",*ptr);
int coeff2[100],exp2[100];
// coeff2[] and exp2[] are
arrays of polynomial2
init_polynom(coeff2,exp2);
printf("Polynomial 2:\n");
get_polynom(coeff2,exp2);
add_polynom(coeff1,exp1,coeff2,exp2);
polynom_to_string(coeff1,exp1,str);
printf("%s\n",str);
return 0;
}
/*********************************** * * Filename: poly.c * * ************************************/ #include "poly.h" /* Initialize all coefficients and exponents...
I need the pseudocode for this c program source code. #include<stdio.h> void printarray(int array[], int asize){ int i; for(i = 0; i < asize;i++) printf("%d", array[i]); printf("\n"); } int sum(int array[], int asize){ int result = 0; int i = 0; for(i=0;i < asize;i++){ result = result + array[i]; } return result; } int swap( int* pA,int*pB){ int result = 0; if(*pA > pB){ int tamp = *pA; *pA = *pB; *pB = tamp; result = 1; } return result;...
Add and subtract polynomials using linked lists:
The output should look like the following:
The code for the header file, Polynomial.h, is given as
such:
***********HEADER*************
#include <iostream>
#include <cstdlib>
using namespace std;
class polyll { //this is class POLYLL, but all lower case
private:
struct polynode {
float coeff;
int exp;
polynode* link;
} * p;
public:
polyll();
void poly_append(float c, int e);
void display_poly();
void poly_add(polyll& l1, polyll& l2);
void poly_subtract(polyll& l1, polyll& l2);
~polyll();
};
polyll::polyll()
{...
howthe output of the following 4 program segments (a) const int SIZE=8; int values[SIZE] = {10, 10, 14, 16, 6, 25, 5, 8}; int index; index=0; res = values[index]; for (int j=1; j<SIZE; j++) { if (values[j] > res) { res = values[j]; index = j; cout << index << res << endl; } } cout <<...
#include<stdio.h> #include<stdio.h> int main(){ int i; //initialize array char array[10] = {“Smith”, “Owen”, “Kowalczyk”, “Glass”, “Bierling”, “Hanenburg”, “Rhoderick”, “Pearce”, “Raymond”, “Kamphuis”}; for(int i=0; i<8;i++){ for(int j=0; j<9; j++){ if(strcmp(array[j],array[j+1])>0){ char temp[20]; strcpy(temp,array[j]); strcpy(array[j],array[j+1]); strcpy(array[j+1],temp); } } } printf(“---------File Names---------\n”); for(inti=0; i<9; i++){ printf(“\t%s\n”,array[i]); } printf(-------5 Largest Files according to sorting----\n”); for(int i=0;i>=5;i--) { printf(“\t%s\n”,array[i]); } return0; } Consider the "sort" program (using with void* parameters in the bubblesort function) from the week 10 "sort void" lecture. Modify it as follows...
Convert the C program into a C++ program.Replace all C input/output statements with C++ statements (cin, cout, cin.getline) . Re-make the func function by the following prototype: void func( double, double &); #include int user_interface(); double func(double); void print_table(); int main (int argc, char *argv[]) { print_table(user_interface()); return 0 ; } int user_interface(int val){ int input = 0; printf("This function takes in x and returns an output\n"); printf("Enter Maximum Number of X:"); scanf("%d", &input);...
#include <stdio.h> int function() { int x, y; printf("Enter the value of x:"); scanf("%d", &x); y = 3*x*x*x*x*x + 2*x*x*x*x - 5*x*x*x - x*x + 7*x - 6; printf("%d", y); return y; } int main() { function(); } Modify the program of Programming Project 5 so that the polynomial is evaluated using the following formula: ((((3x+2)x-5)x+7)x-6
/* • The following code consists of 5 parts. • Find the errors for each part and fix them. • Explain the errors using comments on top of each part. */ #include <stdio.h> #include <string.h> int main( ) { ////////////////////////////////////////////////////////////////////////// ////////////// Part A. (5 points) ////////////////// int g(void) { printf("%s", Inside function g\ n " ); int h(void) { printf(" % s ", Inside function h\ n "); } } printf("Part A: \n "); g(); printf(" \n"); ////////////////////////////////////////////////////////////////////////// ////////////// ...
1. (50 pts) Write a C or C++ program A6p1.c(pp) that accepts one command line argument which is an integer n between 2 and 6 inclusive. Generate a string of 60 random upper case English characters and store them somewhere (e.g. in a char array). Use pthread to create n threads to convert the string into a complementary string ('A'<>'Z', 'B'<->'Y', 'C''X', etc). You should divide this conversion task among the n threads as evenly as possible, Print out the...
1-Is it possible to run a program without a main() function? Yes No 2- How many main() functions can one have in a program? 2 This depends on what compiler you use. As many as you like 1 3- What does the following code fragment leave in x? char a = 'A'; int x = sizeof (a); 1 Depends on what compiler you use. 4 2 4- True or false: In a C program I can have two functions with...
Create a class to represent a term in an algebraic expression. As defined here, a term consists of an integer coefficient and a nonnegative integer exponent. E.g. in the term 4x2, the coefficient is 4 and the exponent 2 in -6x8, the coefficient is -6 and the exponent 8 Your class will have a constructor that creates a Term object with a coefficient and exponent passed as parameters, and accessor methods that return the coefficient and the exponent. Your class...