SHARE
TWEET

Untitled

a guest Apr 21st, 2017 50 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <math.h>
  4. #include "f.h"
  5. void matr_vect(double *a,double *x,double*b,int n)
  6. {
  7.     double s,sum=0;
  8.     double *p=a;
  9.     int i,j;
  10.     for(i=0;i<n;i++)
  11.     {
  12.         s=0;
  13.         for(j=0;j<n;j++)
  14.         {
  15.             s+=p[j]*x[j];
  16.         }
  17.         b[i]=s;
  18.         p+=n;
  19.     }  
  20. }
  21.  
  22. double s_vect(double *x,double *y,int n)
  23. {
  24.     double s=0;
  25.     int i;
  26.     for(i=0;i<n;i++)
  27.     {
  28.         s+=x[i]*y[i];
  29.     }
  30.     return s;  
  31. }
  32. void f(double *a,double *x0,double *b,double *x,int n,int m)
  33. {
  34.     double s,l,t;
  35.     double r[n];
  36.     int i,j,k;
  37.     for(k=1;k<=m;k++)
  38.     {
  39.         matr_vect(a,x0,x,n);
  40.         for(i=0;i<n;i++)
  41.         {
  42.             r[i]=x[i]-b[i];
  43.             printf("r[i]=%lf\n",r[i]);
  44.         }
  45.         l=s_vect(r,r,n);
  46.         matr_vect(a,r,r,n);
  47.         t=l/s_vect(r,r,n);
  48.         for(i=0;i<n;i++)
  49.         {
  50.             s=t*b[i]-t*x[i]+x0[i];
  51.             x[i]=s;
  52.             x0[i]=x[i];
  53.         }
  54.     }
  55. }
RAW Paste Data
Challenge yourself this year...
Learn something new in 2017
Top