14 Mar 2011

Bahan diskusi 1

#include < iostream.h >
#include < conio.h >
using namespace std;

class konversi{
    friend istream& operator>>(istream& , konversi&);
public:
    konversi(unsigned int b=0){bilangan=b;}
    void membilang1();
    void membilang2();
    void membilang3();
    void membilang4();
    void membilang5();
    void membilang6();
    void membilang7();
    void konversikan();
private:
    unsigned int bilangan;
};

istream& operator>>(istream& in, konversi& x){
    cout <<"masukkan bilangan : ";
    in>>x.bilangan;
    return in;
}
void konversi::konversikan(){
    if(bilangan<=11 || bilangan==100)membilang1();
    else if(bilangan>19 && bilangan<=99)membilang3();
    else if (bilangan>100 && bilangan<=999)membilang4();
    else if (bilangan>1000 && bilangan<=9999)membilang5();
    else if (bilangan>10000 && bilangan<=99999)membilang6();
    else if (bilangan>100000 && bilangan<=999999)membilang7();  
    else membilang2();
}
void konversi::membilang3(){
    int satuan;
    if(bilangan>19){
        satuan=bilangan%10;
        bilangan=bilangan/10;
        konversikan();
        cout<<"puluh ";
        if (satuan!=0) {
        bilangan=satuan;
        konversikan();}
    }
}
void konversi::membilang1(){
    switch(bilangan){
    case 0:cout<<"nol "; break;
    case 1:cout<<"satu "; break;
    case 2:cout<<"dua "; break;
    case 3:cout<<"tiga "; break;
    case 4:cout<<"empat "; break;
    case 5:cout<<"lima "; break;
    case 6:cout<<"enam "; break;
    case 7:cout<<"tujuh "; break;
    case 8:cout<<"delapan "; break;
    case 9:cout<<"sembilan "; break;
    case 10:cout<<"sepuluh "; break;
    case 11:cout<<"sebelas "; break;
    case 100:cout<<"seratus "; break;
    default : cout<<"diluar range ";
    }
}
void konversi::membilang2(){
    int temp;
    if(bilangan>11 && bilangan<20){
        bilangan%=10;
        membilang1();
        cout<<"belas ";
    }
    else
        membilang1();
}
void konversi::membilang4(){
    int puluhan;
    puluhan=bilangan%100;
    if(bilangan>100 && bilangan<200){
        cout <<"seratus ";
    }
    else {
        bilangan=bilangan/100;
        konversikan();
        cout<<"ratus ";}
        bilangan=puluhan;
        konversikan();
   
}
void konversi::membilang5(){
    int ratusan;
    ratusan=bilangan%1000;
    if(bilangan>1000 && bilangan<2000){
        cout <<"seribu ";
    }
    else {
        bilangan=bilangan/1000;
        konversikan();
        cout<<"ribu ";}
        bilangan=ratusan;
        konversikan();
   
}
void konversi::membilang6(){
    int ribuan;
    ribuan=bilangan%10000;
    if(bilangan>10000 && bilangan<20000){
        cout <<"puluhan ribu ";
    }
    else {
        bilangan=bilangan/10000;
        konversikan();
        cout<<"puluhan ribu ";}
        bilangan=ribuan;
        konversikan();
   
}
void konversi::membilang7(){
    int puluhan_ribu;
    puluhan_ribu=bilangan%100000;
    if(bilangan>100000 && bilangan<200000){
        cout <<"seratus ribu ";
    }
    else {
        bilangan=bilangan/100000;
        konversikan();
        cout<<"ratusan ribu ";}
        bilangan=puluhan_ribu;
        konversikan();
   
}


    int main(){
    konversi a;
    cin>>a;
    a.konversikan();
cout<
   system("PAUSE");
    return EXIT_SUCCESS;
}


Photobucket

Program Algoritma sebelumnya

halo semuanya...berikut adalah program dari algoritma yang sebelumnya....
#include <  iostream >
#include <  conio >


void Titik()
{
int x1, x2, xt,y1,y2,yt;

cout<<"masukkan x1 \n";
 cin>>x1;
cout<<"masukkan x2 \n";
 cin>>x2;
cout<<"masukkan y1 \n";
 cin>>y1;
cout<<"masukkan y2 \n";
 cin>>y2;
 xt=(x1+x2)/2;
 yt=(y1+y2)/2;
 cout<<"titik tengah nya adalah (" <<<","<<<") \n\n";
}
void integer()
{
int a,b,c,a1,b1,c1;

cout<<"masukkan a \n";
 cin>>a;
 a1=a/100;
 b=a%100;
 b1=b/10;
 c=b%10;
 c1=c/1;

 cout<<<" Ratusan \n";
 cout<<<" Puluhan \n";
 cout<<<" Satuan \n\n";
}
void deter()
{
int a,b,c,d, det;

cout<<"masukkan a \n";
 cin>>a;
cout<<"masukkan b \n";
 cin>>b;
cout<<"masukkan c \n";
 cin>>c;
cout<<"masukkan d \n";
 cin>>d;

 det=(a*d)-(b*c);
 cout<<"nilai determinannya = "<
}

int main ()
{
Titik();
integer();
deter();
getch();
return 0;
}


Dijamin Berhasil 100%

Photobucket

Algoritma




Mencari Titik Tengah
Read:
-input X1
-input X2
-input Y1
-input X2

Xt <= (X1 +  X2 )/2

Yt <= (Y1 +  Y2 )/2

Write : (Xt, Yt) 

Memisahkan nilai integer kurang dari 1000 
Read :
-input a (kurang dari 1000)

a1<=  a/100
b<= a mod 100 
b1<= b/10 
c<= b mod 10
c1 <= c/1
a1 <= ratusan
b1<= puluhan
c1<= satuan

Write : a1, b1, c1

Menghitung determinan dari matriks ordo 2x2
read: 
-input a
-input b
-input c
-input d

Det <= a.d - b.c

Write : Det 

Photobucket 

13 Mar 2011

Algoritma sehari-hari

Kali ini saya akan memberi contoh tentang algoritma yang sering terjadi pada kehidupan sehari-hari

Algoritma  membuat teh(menggunakan teh celup):
-pertama-tama siapkan gelas 250ml,
-kemudian masukan gula dua sendok(kalau mau manis),
-beri air panas 200ml,
-celupkan teh 15 kali,
-aduk dengan sendok 15 kali,
-sajikan(tambahkan es bila mau menjadi es teh).

Algoritma membuat kopi:
-siapkan cangkir 150ml,
-masukkan kopi 3 sendok teh,
-masukkan gula 2 sendok teh,
-beri air panas 150ml,
-aduk10 kali,
-beri tutup cangkir di atas cangkir,
-beri piring kecil / lepek (bahasa jawa nya),
-sajikan.
Photobucket

12 Mar 2011

Contoh Penggunaan perulangan FOR


Photobucket

Contoh algoritma yang telah di ubah menjadi Flowchart

Problem: pembeli akan mendapatkan diskon 10% jika membeli barang di atas 100 buah.
FLOWCHART-NYA




Pseudo-code:
-input A
-input B
-if A>100 then C=90%xAxB else C=AxB
-print C

Photobucket