treść zadania:
Wyznaczyć współczynniki trygonometrycznego wielomianu interpolacyjnego + narysować za pomocą gnuplot węzły [*]
moj kod:

#include <iostream>
#include <cstdlib>
#include <math.h>
#include "gnuplot_i.hpp"
#define GNUPLOT_PATH "C:/gnuplot/binary"

using namespace std;

    int i, j, k, z=0, r=1, n=10, m, iloscwsp, wybor, x;
    string tytul;
    double wartoscinter;

void wyswietlwsp(double wspolczynniki[], int iloscwsp)
{
    i=0; j=1;
    cout<<wspolczynniki[i]/2<<" + ";
    if (n%2==0)
    {
        while (i<iloscwsp-1)
        {
            cout<<wspolczynniki[i]<<"cos("<<j<<"x) + ";
            i++;
            cout<<wspolczynniki[i]<<"sin("<<j<<"x) + ";
            i++;
            j++;
        }
        cout<<wspolczynniki[i]/2<<"cos("<<j<<"x)";
    }
    else
    {
        while (i<iloscwsp)
        {
            cout<<wspolczynniki[i]<<"cos("<<j<<"x) + ";
            i++;
            if(i<iloscwsp-1)
            cout<<wspolczynniki[i]<<"sin("<<j<<"x) + ";
            else
            cout<<wspolczynniki[i]<<"sin("<<j<<"x)";
            i++;
            j++;
        }
    }
}

double policz(double wspolczynniki[], int iloscwsp)
{
    double wartosc=0; i=0; j=1;
    wartosc+=wspolczynniki[i]/2;
    if (n%2==0)
    {
        while (i<iloscwsp-1)
        {
            wartosc+=wspolczynniki[i]*cos(j*x);
            i++;
            wartosc+=wspolczynniki[i]*sin(j*x);
            i++;
            j++;
        }
        wartosc+=wspolczynniki[i]/2*cos(j*x);
    }
    else
    {
        while (i<iloscwsp)
        {
            wartosc+=wspolczynniki[i]*cos(j*x);
            i++;
            wartosc+=wspolczynniki[i]*sin(j*x);
            i++;
            j++;
        }
    }
    return wartosc;
}


void funkcja(double wx[], double wy[])
{
    if ((wybor==1)||(wybor==2)||(wybor==3))
         {cout<<"podaj ilosc wezlow: "; cin>>n;}

    switch (wybor)
    {
        case 1:
            for(i=0; i<n; i++)
            {
                wx[i]=2*M_PI/n*(i+1);
                wy[i]=sin(wx[i]);
            }
            tytul="wykres funkcji sin(x) oraz jego interpolacji"; break;

        case 2:
            for(i=0; i<n; i++)
            {
                wx[i]=2*M_PI/n*(i+1);
                wy[i]=cos(wx[i]);
            }
            tytul="wykres funkcji cos(x) oraz jego interpolacji"; break;

        case 3:
            for(i=0; i<n; i++)
            {
                wx[i]=2*M_PI/n*(i+1);
                wy[i]=2*wx[i]*wx[i]-3;
            }tytul="wykres funkcji 2*x^2-3 oraz jego interpolacji"; break;
            
        default: cout<<"Zly wybor. Wybierz jeszcze raz: ";
    }
}

int main()
{
    double wx[n], wy[n];

    cout << "wybierz funkcje:" << endl;

    do
    {
        cout<<endl<<"1. sin(x) \n2. cos(x) \n3. 2x^2-3"<<endl<<endl;
        cin>>wybor; cout<<endl;

        funkcja(wx, wy);

    }while ((wybor!=1)&&(wybor!=2)&&(wybor!=3));

    cout<<endl<<endl<<"policzone wspolrzedne wezlow:"<<endl<<endl;
    for(j=0; j<n; j++)
    {
        cout<<"x: "<<wx[j]<<endl<<"y: "<<wy[j]<<endl<<endl;
    }


    if (n%2==0)
    {
        m=n/2;
        double A[m+1], B[m-1];
        for(i=0; i<m+1; i++)
        {
            A[i]=0;
            B[i]=0;
        }

        for(j=0; j<m; j++)
        {
            for(k=0; k<n; k++)
            {
                A[j]+=(wy[k]*cos(k*wx[j]));
            }
            A[j]*=2/n;
        }

        for(j=0; j<m-2; j++)
        {
            for(k=0; k<n; k++)
            {
                B[j]+=(wy[k]*sin(k*wx[j]));
            }
            B[j]*=2/n;
        }

        double wspolczynniki[2*m];
        wspolczynniki[z]=A[0]/2; z++;
        while (z<(2*m-1))
        {
            wspolczynniki[z]=A[r];
            z++;
            wspolczynniki[z]=B[r];
            z++;
            r++;
        }
        wspolczynniki[z]=A[m]/2;

     iloscwsp=2*m;

     wyswietlwsp(wspolczynniki, iloscwsp);
     wartoscinter=policz(wspolczynniki, iloscwsp);

    }
    else
    {
        m=(n-1)/2;
        double A[m+1], B[m];
        for(i=0; i<m+1; i++)
        {
            A[i]=0;
            B[i]=0;
        }


        for(j=0; j<m; j++)
        {
            for(k=0; k<n; k++)
            {
                A[j]+=(wy[k]*cos(k*wx[j]));
            }
            A[j]*=2/n;
        }

        for(j=0; j<m-1; j++)
        {
            for(k=0; k<n; k++)
            {
                B[j]+=(wy[k]*sin(k*wx[j]));
            }
            B[j]*=2/n;
        }

        double wspolczynniki[2*m+1];
        wspolczynniki[z]=A[0]/2; z++;
        while (z<(2*m+1))
        {
            wspolczynniki[z]=A[r];
            z++;
            wspolczynniki[z]=B[r];
            z++;
            r++;
        }
        iloscwsp=2*m+1;

        wyswietlwsp(wspolczynniki, iloscwsp);
        wartoscinter=policz(wspolczynniki, iloscwsp);
    }
    
    
 Gnuplot::set_GNUPlotPath("C:\\gnuplot\\binary\\");
   Gnuplot main_plot;

    // Podpisy na wykresie, żeby było wiadomo co na nim widać
    main_plot.set_title( tytul );
    main_plot.set_xlabel( "OX" );
    main_plot.set_ylabel( "OY" );

    // styl rysowania wykresu
  main_plot.set_style( "lines" );

  // siatka poprawia czytelność
  main_plot.set_grid();

  // zakres osi x
  main_plot.set_xrange( 0 , 2*M_PI ) ;

   // funkcja do narysowania
  switch(wybor)
    {
        case 1: main_plot.plot_equation( "sin(x)" , "sin(x)" ); 
               // main_plot.plot_equation( "policz(wspolczynniki, iloscwsp)" , "interpolacja sin(x)" );
                  main_plot.set_style( "points" );
                   main_plot.set_pointsize( 2.0 );
                  /* vector<double> x( n );
                  for(i=0; i<n; i++)
                  {
                    x[i]=wx[i];
                  }
                  vector<double> y( n );
                  for(j=0; j<n; j++)
                  {
                    y[i]=wy[i];
                  }*/
                  main_plot.plot_xy( wx, wy, "wezly interpolacyjne" );
                  break;
        case 2: main_plot.plot_equation( "cos(x)" , "cos(x)" ); break;
        case 3: main_plot.plot_equation( "2*x*x-3" , "2*x*x-3" ); break;
    }

  

   
    
   
    
     system("pause");
    return 0;
}

męczę się i męczę, za Chiny ludowe nie moge skompilować, proszę o pomoc !