Program C++ untuk mencari FPB

kali ini penulis akan membagikan program c++ untuk mencari FPB. Program ini masih ada kaitannya dengan Program Penyederhana Pecahan, atau dengan kata lain program ini merupakan salah satu pengembangan program Program Penyederhana Pecahan.

Berikut programnya :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#include<iostream>
using namespace std;
    
double DMOD(double a,double b){//fungsi kustom modulo untuk tipe data double
    long c=1;
    double d=1;
    c=a/b;
    d=a/b;
    return b*(d-c);
}
    
int main(){
    double a=0,b=0,v=0,z=1,FPB=1;
    bool c=1,d=1;
    cout<<"Masukan nilai a dan b." <<endl;
    cout<<"a=" ;cin>>a;
    cout<<"b=" ;cin>>b;
    if (a<0){
        a*=-1;
        c=0;
    }
    else if (a==0){b=1;}
    if (b<0){
        b*=-1;
        d=0;
    }
    if (a<=b){v=a;}
    else if (b<a){v=b;}
    for (z=2;z<=v;z++){
        if ((DMOD(b,z)==0)&&(DMOD(a,z)==0)){
            b/=z;
            a/=z;
            FPB*=z;
            if (a<=b){v=a;}
            else if (b<a){v=b;}
        }
        if ((DMOD(b,z)==0)&&(DMOD(a,z)==0)){z--;}
    }
    cout<<"FPB=" <<FPB;
}

DEMO

DEMO Program

Lalu bagaimana cara supaya program tersebut dapat berjalan untuk bilangan yang lebih dari dua

Caranya cukup mudah, salah satunya yaitu mengubah program diatas menjadi fungsi kustom lalu lakukan operasi FPB menggunakan program diatas secara berulang.

Berikut Tampilan programnya :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#include<iostream>
using namespace std;
    
double DMOD(double a,double b){//fungsi kustom modulo untuk tipe data double
    long c=1;
    double d=1;
    c=a/b;
    d=a/b;
    return b*(d-c);
}
    
double FPB(double a,double b){
    double v=0,z=1,FPB=1;
    bool c=1,d=1;
    if (a<0){
        a*=-1;
        c=0;
    }
    else if (a==0){b=1;}
    if (b<0){
        b*=-1;
        d=0;
    }
    if (a<=b){v=a;}
    else if (b<a){v=b;}
    for (z=2;z<=v;z++){
        if ((DMOD(b,z)==0)&&(DMOD(a,z)==0)){
            b/=z;
            a/=z;
            FPB*=z;
            if (a<=b){v=a;}
            else if (b<a){v=b;}
        }
        if ((DMOD(b,z)==0)&&(DMOD(a,z)==0)){z--;}
    }
    return FPB;
}
int main(){
    double a=0,fpb=1;
    int b=0;
    cout<<"Masukan Jumlah Bilangan : " ;cin>>b;
    for (int i=0;i<b;i++){
        cout<<"Bilangan ke-" <<i+1<<" = " ;cin>>a;
        if (i==0){
            fpb=a;
        }
        fpb=FPB(a,fpb);
    }
    cout<<"FPB = " <<fpb;
}

DEMO

Demo Program Diatas

Baik itu saja dari penulis, semoga postingan ini dapat membantu, terimakasih sudah berkunjung di blog saya

Subscribe to receive free email updates:

0 Response to "Program C++ untuk mencari FPB"

Posting Komentar