Napisz program obliczający wartość wielomianu stopnia n. Przykład deklaracji
funkcji:
double obl_wiel(double x, int n, ...)
W związku ze zmienną liczbą parametrów przydatne będą makra z biblioteki
cstdarg:
va_list ...
va_start(..., ...)
wsp = va_arg(..., ...)
va_end(...)
#include <iostream>
#include <cstdarg>
#include <cmath>
using namespace std;
double obl_wiel(double x, int n, ...);
int main()
{
cout<<"Program oblicza wielomian n-tego stopnia."<<endl;
cout<<"Wartosc dla danego wielomianu n-tego stopnia wynosi: ";
cout<<obl_wiel(2.0, 5, 1,2,3,4,5)<<endl;
cin.get();
return 0;
}
double obl_wiel(double x, int n, ...)
{
double wartosc = 0;
va_list argList;
va_start(argList, n);
for(int i=0;i<n;i++)
{
double potega = va_arg(argList,int);
double liczba = pow(x,potega);
wartosc+=liczba;
}
va_end(argList);
return wartosc;
}
Offline