Tampilkan postingan dengan label Metnum. Tampilkan semua postingan
Tampilkan postingan dengan label Metnum. Tampilkan semua postingan

Senin, 04 Juni 2012

Metode Integrasi Numerik

Berikut adalah Kodingan dari Integrasi Numerik,,
akan lebih bagus jika ada tampilan outputnya,, namun untuk sementara ini saja dulu


#include <iostream.h>
#include <conio.h>
#include <stdlib.h>
#include <stdio.h>
#include <math.h>

float f(float xo)
{
float fx;
 fx=pow(xo,3)-(3*xo)+2;
 return fx;
}

int pil1()
{
  float btsa,btsb,h,fxo,fx1,fx2,fx3,n,i,sum,Deltafx;
  cout<<"Soal Latihan No. 1 \n";
  cout<<"===================================\n";
  cout<<"Input Nilai Batas Atas (b) : ";cin>>btsa;
  cout<<"Input Nilai Batas Bawah (a) : ";cin>>btsb;
  cout<<"Input Nilai n : ";cin>>n;cout<<endl;
  h=(btsa-btsb)/n;

Differensiasi Numerik

Berikut adalah Kodingan dari Differensiasi Numerik


#include <iostream.h>
#include <conio.h>
#include <stdlib.h>
#include <stdio.h>
#include <math.h>

int pil1()
{
  float xo,hit1,hit2,h=0.2,fx,fxo,fh1,fh2;
  cout<<"TAKSIRAN 2 TITIK \n";
  cout<<"===================================\n";
  cout<<"Input Nilai Xo : ";cin>>xo;cout<<endl;
  hit1=xo+h;
  hit2=xo-h;
  fh1=1.79759 + (0.311423*hit1);
  fh2=1.79759 + (0.311423*hit2);
  fx=(fh1-fh2)/(2*h);
  fxo=0.311423-fx;
   
  cout<<"1.Perhitungan Metode Numerik : "<<fx<<"\n";
  cout<<"2.Perhitungan Metode Analitik : "<<"0.311423\n";
  cout<<"3.Eror : "<<fabs(fxo);
  cout<<endl;
  getch();
}

Metode Bierg Vieta


#include <iostream.h>
#include <stdio.h>
#include <conio.h>
#include <math.h>
#define epsilon 0.001

int main()
{
  float g,g1,v,a0=8,a1=-6,b,b0,b1,b2=1,c1,c2=1,x,dx;

  int converged=0,i;
  printf("Input Nilai Xo : ");

  scanf("%f",&g1);
  i=1;
  while (converged==0)
    {
      printf("\n iteration no=%d\n",i);
      v=g1*g1-6*g1+8;
      printf("f(Xn)=%lf\n",v);

      b1=a1+(g1*b2);
      printf("b1=%lf\n",b1);

      b0=a0+(g1*b1);
      printf("b0=%lf\n",b0);

      c1=b1+(g1*c2);
      printf("c1=%lf\n",c1);

      x=g1-(b0/c1);
      printf("Xn=%lf\n",x);

      g1=x;

      if (fabs(b0)<=epsilon)
         {converged=1;}
      printf("Solusi Xn=%lf\n",x);

      i=i+1;
    }
getch();
}

Metode Secant


#include <iostream.h>
#include <conio.h>
#include <stdio.h>
#include <math.h>
#define epsilon 0.001

int main()
{
  float g,g1,g2,v,v1,v2,x,dx;

  int converged=0,i;
  printf("Input Nilai Xo : ");

  scanf("%f",&g1);
  printf("Input Nilai X1 : ");

  scanf("%f",&g2);
  i=1;
  while (converged==0)
   {
     printf("\n iteration no=%d\n",i);
     v=g1*g1-6*g1+8;
     printf("f(X1)=%lf\n",v);

     v1=g2*g2-6*g2+8;
     printf("f(X2)=%lf\n",v1);

     x=g2-((v1*(g1-g2))/(v-v1));
     printf("Xi+1=%lf\n",x);

     dx= x*x-6*x+8;

     printf("f(Xi+1) =%lf\n",dx);

     g1=g2;
     g2=x;

     if (fabs(dx)<=epsilon)
       {converged=1;}
     printf("Solusi Xi+1=%lf\n",x);

     i=i+1;
  }
getch();
}

Error dan Perambatan Error


Pokok Bahasan : Error dan Perambatan Error.
Materi : Error Absolut dan Relatif, perambatan error pada perkalian, pembagian dan Pengurangan . . .


Dalam hal ini Numerik yang kita gunakan terdapat Tiga Buah Solusi dari Permasalahan yang kita hadapi,
mari telususri satu per satu :


1.  Code ::

#include <iostream.h>
#include <conio.h>
#include <stdio.h>

int main()
{
     float x, sum=1.0;
     int i,k=0;
                        for (i=1;i<=10000;i++)
                        {
                            sum = sum + 0.00001;
                        }
                 cout<<"\nsum= "<<sum;
getch();
}

2.1       Bentuk Kedua

#include <iostream.h>
#include <conio.h>
#include <stdio.h>

int main()
{
   float x, sum=1.0;
   int i,k=0;
               for (i=1;i<=10000;i++)
                    {
                        sum = sum + 0.00001;
                    }
              cout<<"\nsum= "<<sum;
  getch();
  }


2. Code::


#include <iostream.h>
#include <conio.h>
#include <stdio.h>

int main()
{
     float x, sum=1.0;
     int i,k=0;
                        for (i=1;i<=10000;i++)
                        {
                            sum = sum + 0.00001;
                        }
                 cout<<"\nsum= "<<sum;
getch();
}


3. Code ::


#include <iostream.h>
#include <conio.h>
#include <stdio.h>

int main()
{
   float x, sum=1.0;
   int i,k=0;
               for (i=1;i<=10000;i++)
                    {
                        sum = sum + 0.00001;
                    }
              cout<<"\nsum= "<<sum;
  getch();
  }

2.1       Bentuk Ketiga

#include <iostream.h>
#include <conio.h>
#include <stdio.h>

int main()
{
    float x, sum=1.0;
    int i,k=0;
for (i=1;i<=10000;i++)
{
sum = sum + 0.00001;
}
     printf ("\nsum =%f", sum);
     getch();
}
  

-Selamat Menikmati-

Round-Up-Errors dan Tipe Numerik

Berikut adalah Kodingan dari permasalahan Numerik mengenai Error

Code ::


#include <iostream.h>
#include <conio.h>
#include <stdio.h>
  
int main()
{
   float ex, g=1, eps;
   do
     { g=g/2;
       ex=g*0.98 +1;
       ex=ex-1;
       printf ("g=%15.8e  ex =%15.8e\n", g, ex );
     if (ex>0)  eps=ex;
     } while (ex>0);
   printf("\nMachine epsilon = %16.8e\n\n", eps);
   getch();
}