//Gauss Seidel Function
void gauss_seidel(double a[][], int n, double x[], double c[])
{
	//CAUTION!! this function assumes you have sent in an a matrix which does not have any zeros on the diagonal!
	//CAUTION!! this function performs best if you have made the matrix "diagonally dominant"
        //CAUTION!! It is assumed that x[] contains the initial guesses for the solution vactor x[]
		
	//Place Variable Declarations Here
        int flag = 0, maxiter = 1e4, counter = 0;
	double xold = 0.0, maxerr = 1e-4, error = 1e-3, ;
	//Stuff??
	
	
	
        //While loop to decide if enough iterations have been performed
	//flag is used to decide if there are any x's that do not satisfy required maxerr
        while(flag == 0 && counter < maxiter)
        {
                //Stuff??
		
		//Loop to work through rows of matrix and find x[i] for the current iteration
		for(int i = 0; ; )
                {
                        //set xold = current val of x[i]
			//Stuff??
			
			
			//Loop to work though all columns (j) for row i
			for(int j = 0; ; )
                        {

                                if( j != i)
				{
					//find sum of a[i][j]/a[i][i] * x[j]
					//Stuff???
					
				}

                        }
                        //x[i] = ??????
			
			error = fabs((x[i] - xold)/x[i]);
                        if(error > maxerr)
			{
                                //set flag so while loop will keep going
				//flag = ??
			}
                }
        }

}
