Selasa, 22 Mei 2012

Tugas Kuis Praktikum PBO

Berikut adalah soal yang dibuat untuk Pelatihan Mahasiswa agar dapat mempelajari dan memahami suatu kasus dalam objek nyata yang memiliki penalaran logika dalam proses penyelesaiannya...
Setelah mempelajari konsep Pemrograman Berorientasi Objek mengenai Pewarisan Sifat dan Pewarisan Banyak Sifat / Polimorpisme, mahasiswa diharapkan bisa menuliskan program tersebut dalam bahasa pemrograman C++ seperti yang pernah dipelajari.
Kasus yang terjadi adalah memahami objek berikut :
- Hewan
- Teknologi

Dipersilahkan untuk memilih salah satunya,,
kemudian buatkan Program Polimorpisme dengan 2 buah kelas turunan dari 1 buah kelas dasar ,dari dua objek tersebut...
Gunakan program yang sudah pernah dibuat seperti contoh program dengan objek Class Manusia ...

paketkan kodingan anda kedalam MS.Word, sertakan Outputnya (Printscreen)
kirim ke thx.4gift@gmail.com paling lambat malam ini 23.59 @23-05-12...
format subjek nim_nama_kuis-pbo05

Minggu, 13 Mei 2012

METODE TRAPESIUM INTEGRASI


solusi eksak (analitik) tidak ada, mengingat
semua fungsi dapat diturunkan, tetapi tdk
semua fungsi dapat diintegralkan.

Solusinya ada, tetapi kompleks, tidak praktis.

yang dicari adalah nilai integral ttt.:

f(x) dx,  ( batas a s/d b ) tidak lain adalah
mencari luas daerah yang dibatasi y=f(x),
sumbu x, garis x=a, dan garis x=b.

#include <iostream>
#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;
    sum=f(btsb);
    for(i=1;i<n;i++)
    {sum=sum+2*(f(btsb+(i*h)));}
    fxo=(h*(sum+f(btsa)))/2;
    fx1=(pow(btsa,4)/4)-(3*(pow(btsa,2))/2)+(2*btsa);
    fx2=(pow(btsb,4)/4)-(3*(pow(btsb,2))/2)+(2*btsb);
    Deltafx=fx1-fx2;
    fx3=Deltafx-fxo;
    cout<<"1.Perhitungan Metode Numerik : "<<fxo<<"\n";
    cout<<"2.Perhitungan Metode Analitik : "<<Deltafx<<"\n";
    cout<<"3.Eror : "<<fabs(fx3);
    cout<<endl;
    getch();
}

int pil2()
{float btsa,btsb,h,fxo,fx1,fx2,fx3,n,i,sum,Deltafx;
    cout<<"Soal Latihan No. 2 \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;
    sum=f(btsb);
    for(i=1;i<n;i++)
    {sum=sum+2*(f(btsb+(i*h)));}
    fxo=(h*(sum+f(btsa)))/2;
    fx1=(2.79487*btsa) + (0.312151*pow(btsa,2))/2;
    fx2=(2.79487*btsb) + (0.312151*pow(btsb,2))/2;
    Deltafx=fx1-fx2;
    fx3=Deltafx-fxo;
    cout<<"1.Perhitungan Metode Numerik : "<<fxo<<"\n";
    cout<<"2.Perhitungan Metode Analitik : "<<Deltafx<<"\n";
    cout<<"3.Eror : "<<fabs(fx3);
    cout<<endl;
    getch();
}

int main()
{int angka;char huruf;
    awal:
    cout<<"MENU INTEGRASI NUMERIK (Modul Pert. 10) :\n";
    cout<<"METODE TRAPESIUM\n\n";
    cout<<"=============================================\n";
    cout<<"1. Soal No. 1\n";
    cout<<"2. Soal No. 2\n";
    cout<<"3. KELUAR\n";
    cout<<"Silahkan Input Pilihan Anda [1-3] : ";cin>>angka;
   
    if (angka==1)
    {pil1();cout<<"\n";
    goto awal;}
    else if (angka==2)
    {pil2();cout<<"\n";
    goto awal;}
    else {
         cout<<"Anda Yakin Akan Keluar Dari Program ? [Y/T] : ";cin>>huruf;cout<<endl;
         if (huruf=='Y' || huruf=='y')
         {cout<<"Semoga Bermanfaat dan Terima Kasih... (^_^)";exit(0);}
         else if (huruf=='T' || huruf=='t')
         {cout<<"\n";goto awal;}
    }
    getch();
}


Outputnya silakan coba sendiri