Thursday, April 7, 2016

BAB 4

Assalamuallaikum wr. wb.

NO. 1
      Buatlah flowchart dan translasi program dari algoritma 3.2.b. di atas.

     1. RAPTOR







     2. C++



#include <iostream>

using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int main(int argc, char* argv[]) {
   
    int a, b, c;
    cout<<"Masukkan nilai A = ";
    cin>>a;
    cout<<"Masukkan nilai b = ";
    cin>>b;
    cout<<"Masukkan nilai c = ";
    cin>>c;
   
    if(a>b) {
    if(a>c) {
        cout<<"Nilai terbesar adalah nilai A = "<<a;
            }
            }
    if(b>a) {
    if(b>c) {
        cout<<"Nilai terbesar adalah nilai B = "<<b;
            }
            }
    else if(c>a)
    if(c>b) {
        cout<<"Nilai terbesar adalah nilai C = "<<c;
         }
      
   
    return 0;

}
     Dan untuk hasil compile c++ adalah:


NO. 2
      Sempurnakan algoritma 3.3. dengan akar imajiner berbentuk :
a + bi
dengan a dan b bilangan real dan bila harga b2 4ac 0 . Perhatikan bahwa nilai a dan b dihitung terpisah.
Rumus menghitung nilai a :

Rumus menghitung nilai b :
Operator Overloading untuk output : 

     1. RAPTOR








     2. C++



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

using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */

class Akar {
friend ostream& operator<<(ostream&, Akar&);
friend istream& operator>>(istream&, Akar&);
public:
Akar();
int disk() { return B*B-4*A*C; }
float akar1() {return (-B+sqrt(disk()))/(2*A); }
float akar2() {return (-B-sqrt(disk()))/(2*A); }
void hitung_akar();
void cetak_disk() {
cout << "diskriminan = " << disk() << endl; }
void cetak_akar() {
cout << "x1 = " << akar1() << endl;
cout << "x2 = " << akar2() << endl;
}
private:
int A, B, C; // input
float x1, x2; // akar 1 dan akar 2
};
ostream& operator<<(ostream& out, Akar& keluaran) {
keluaran.cetak_disk();
if (keluaran.disk() >= 0) keluaran.cetak_akar();
else out << "Akar imajiner";
return out;
}
istream& operator>>(istream& in, Akar& masukan) {
cout << "Koefisien pangkat 2 : "; cin >> masukan.A;
cout << "Koefisien pangkat 1 : "; cin >> masukan.B;
cout << "Koefisien pangkat 0 : "; cin >> masukan.C;
return in;
}
Akar::Akar() {
cout << "Menghitung akar persamaan kuadrat "<<endl<<endl;

void Akar::hitung_akar() {
if (A == 0) {
cout << "bukan pers. kuadrat.\n";
cout << "Harga akar = " << -C/B; } else {
if (disk() > 0) {
x1 = akar1();
x2 = akar2();
}  
else if (disk() == 0) {
x1 = akar1();
x2 = x1;
}
}
}

int main(int argc, char** argv) {
Akar kasus;
cin >> kasus;
kasus.hitung_akar();
cout << kasus;
return 0;

}
     Dan untuk hasil compile c++ adalah:





NO. 3
     Buatlah program dari algoritma 3.4. menggunakan case … of .
     1.C++



#include <iostream>
#include <math.h>
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int main(int argc, char** argv) {
 int a,b,c;
 long disk;
 float x1,x2;
 cout<<"Koefisien pangkat 2 : ";cin>>a;
 cout<<"Koefisien pangkat 1 : ";cin>>b;
 cout<<"Koefisien pangkat 0 : ";cin>>c;
 if(a==0){
  cout<<"Bukan Pers.Kuadrat"<<endl;
  cout<<"Harga Akar= "<<-c/b;
 }
 else {
  disk=b*b - 4*a*c;
 }
 if(disk>0){
  x1=-b+sqrt(disk)/(2*a);
  x2=-b-sqrt(disk)/(2*a);
  cout<<"Diskriminan = " <<disk << endl;
  cout<<"x1 : "<<x1<<endl;
  cout<<"x2 : "<<x2<<endl;
 } else if(disk == 0){
  x1 = -b/(2*a);
  x2=x1;
  cout<<"Diskriminan = 0 "<<endl;
  cout<<"x1 : "<<x1<<endl;
  cout<<"x2 : "<<x2<<endl;
 } else
 cout<<"Akar Imajiner";

 return 0;
}

c++ adalah:




Untuk BAB 4:
No. 4-6 silahkan kunjungi blog berikut =>Hayu Permata Sari
No. 7-9 silahkan kunjungi blog berikut =>Agus Prasetyo



Semoga bermanfaat !
Terima Kasih



Wassalamuallaikum wr. wb.

0 comments :

Post a Comment