23 Des 2011

S.data "Pogram Antrian Klinik Kesehatan"

Pada umumnya klinik kesehatan belum atau mungkin tidak memilliki manajemen yang baik dalam hal pelayanan pasien, contohnya saja klinik kesehatan mempunyai lima dokter spesialis yang memiliki ruang praktek masing-masing. Dalam kenyataannya setiap dokter masih harus melakukan pemanggilan pasiennya.
Karena hal tersebut, maka kami berinisiatif untuk membuat suatu aplikasi yang akan membantu memudahkan dan membuat kenyamanan pasien serta dari pihak klinik kesehatan itu sendiri.
Dalam antrian klinik kesehatan yang kami buat tersebut, terdapat lima kategori dokter, yaitu :
* Dokter Umum
* Dokter Penyakit Dalam
* Dokter Mata
* Dokter Kulit dan Kelamin
* Dokter gigi

Dengan aplikasi tersebut, maka calon pasien dapat melakukan pendaftaran pada loket yang telah disediakan, sehingga calon pasien tersebut akan mendapatkan kartu antrian sesuai dokter yang dipilih (sesuai penyakit yang diderita), setelah itu calon pasien mengantri di ruang tunggu yang telah disediakan pihak klinik. Proses pemanggilan pasien pun akan semakin dipermudah, yaitu seorang operator tinggal memilih menu pemanggilan yang telah tersedia dalam aplikasi antrian klinik kesehatan tersebut.
Untuk lebih lanjut DOWNLOAD programnya disini

Buat yang mau belajar source kode'y..monggo download
kami menggunakan software borland c++ builderX.

7 Des 2011

DESKRIPSI ANTRIAN PARKIR MOTOR DI MALL

DESKRIPSI ANTRIAN PARKIR MOTOR DI MALL


Dalam antrian ini, kami membahas tentang rancangan atau prosedur “Antrian parkir motor di suatu Mall. Akan tetapi sebelum, kita akan membahas pengertian “antrian queue”.
Antrian (queue) adalah struktur data yang menerapkan suatu aturan penyisipan di satu ujung dan penghapusan diujung yang lainnya, atau dengan menerapkan aturan FIFO (First In First Out/masuk pertama, keluar pertama). Dalam antrian penambahan (di belakang-rear) dan penghapusan (di depan-front) dilakukan pada tempat yang berbeda.
Contoh :
Dalam antrian X terdapat [1,2,3,4,5]. Pada bagian depan dinotasikan dari antrian X sebagai front(X) dan pada bagian belakang sebagai rear(X). Maka antrian X = [1,2,3,4,5] : front(X)=1 dan rear(X)=5.
Setelah kita bahas apa itu antrian, sekarang kita bahas tentang antrian parkir motor di Mall.
Pelayanan pada antrian parkir motor di Mall tersebut hanya dilayani oleh satu Loket parkir saja, sehingga jika terdapat banyak pengunjung yang berdatangan di Mall, maka semakin panjang pula antriannya dan memakan waktu yang cukup lama.
Pada antrian ini menggunakan situasi dimana petugas parkir akan menyelesaikan pelayanannya, baru melayani orang yang diprioritaskan. Dan “first come first serve” yaitu orang yang datang lebih dulu akan dilayani terlebih dahulu.
Petugas parkir akan melayani orang yang datang lebih dulu dengan mendata plat motor pengunjung Mall tersebut dan memberikan kertas parkir kepada pengunjung, sebagai bukti parkir. Setelah pelayanan selesai barulah petugas parkir akan melayani pengantri selanjutnya.
Berikut gambar simulasinya :
Dalam gambar diatas, dapat diasumsikan bahwa motor pertama, dengan plat ‘AB 1000 BC’ sebagai pengantri pertama, kemudian di lanjutkan dengan pengantri yang berikutnya dengan plat ‘AB 8888 BC’ dan seterusnya.

7 Jul 2011

menghitung volume bola dan luas lingkaran versi jeliot

import jeliot.io.*;

public class GlobalMembers
{

public static void main(String[] args)
{


lingkaran s = new lingkaran();

s.bola();
s.hitung();


}
}

public class lingkaran
{


public lingkaran()
{
System.out.print("menghitung volume bola dan luas lingkaran :\n");
r=Input.readDouble();
}
public final void bola()
{
volume = (4 *3.14 *r *r)/3;
}
public final void hitung()
{
luas_lingkaran =3.14 *r *r;
}

private double volume;
private double luas_lingkaran;
private double r;
}

kabisat Jeliot

import jeliot.io.*;


public class kabisat {

public static void main()
{


int thn;


System.out.println( "Menentukan tahun kabisat atau bukan");

System.out.println ( "Masukkan tahun");

thn = Input.readInt();


if (thn % 4 != 0)

System.out.println ("bukan tahun kabisat");

else if ((thn % 400 != 0) && (thn % 100 == 0))

System.out.println ("bukan tahun kabisat");


else

System.out.println ( "tahun kabisat");



}


}

menentukan tahun kabisat

#pragma argsused
#include
#include


class mencari{

public:
void membilang();
void membilang1();
void membilang2();


private:
int x,y,z;
};

void mencari::membilang(){
cout<<"Masukkan tahun:"; cin>>x;
if(x%4==0)
cout<<"Kabisat\n"; else cout<<"Bukan kabisat\n"; cout<<"\n"; } void mencari::membilang1(){ cout<<"Masukkan tahun:"; cin>>y;
if(y%4==0)
cout<<"Kabisat\n"; else cout<<"Bukan kabisat\n"; cout<<"\n"; } void mencari::membilang2(){ cout<<"Masukkan tahun:"; cin>>z;
if(z%4==0)
cout<<"Kabisat\n";
else
cout<<"Bukan kabisat\n";
}


int main(){
mencari x;
x.membilang();
x.membilang1();
x.membilang2();
getch ();
return 0;
}

vektor

C++
#include
#include

using namespace std;

void masukkan(int[100], int);
void penjumlahan(const int[100], const int[100], int, int[100]);
void pengurangan(const int[100], const int[100], int, int[100]);
void cetak_bigInteger(const int A[100],int);

int main(int argc, char *argv[])
{
int n;
int bil1[100], bil2[100];
int jumlah[100];
int kurang[100];


cout<<"Masukkan bilangan : \n"; cin>>n;
cout<<"Bilangan pertama : \n"; masukkan(bil1, n); cetak_bigInteger (bil1, n); cout<< "\nBilangan kedua : \n" <
Versi Jeliot
import jeliot.io.*;

public class Vektor {
int []elemen= new int [100];
int banyak;

public void beri_nilaiBanyak(){

banyak=3;
for(int i=0; iB.banyak)
banyak=A.banyak;
else
banyak=B.banyak;
for(int i=0; i elemen[i]=A.elemen[i]+B.elemen[i];
}
public void perkalian_vektor(float k, Vektor A){
banyak=A.banyak;
for(int i=0; i elemen[i]=A.elemen[i];
}

public static void main() {
Vektor X = new Vektor();
Vektor Y = new Vektor();
Vektor Z = new Vektor();
Z.beri_nilaiBanyak();
Z.masukan(X,Y);
Z.penjumlahan_vektor(X,Y);
System.out.print("\n Hasil penjumlahan 2 Vektor \n" + Z);
Z.perkalian_vektor(3,X);
System.out.print("\n Hasil perkalian skalar dengan Vektor \n" + Z);
}
}

__sorting__

#include
#include


using namespace std;
class sorting {
friend istream& operator >>(istream& in, sorting& a);
friend ostream& operator <<(ostream& out, sorting& a); public: void selection_sort(); private: void minimum(int, int, int&); void tukar(int&, int&); int data[10],n; }; istream& operator >> (istream& in, sorting& a){
cout << "masukkan banyak data :"; cin >> a.n;
for(int i=0; i> a.data[i];
}
}
ostream& operator << (ostream& out, sorting& a){ for(int i=0; i> sort;
cout << endl;
cout << sort;
sort.selection_sort();
cout << endl;
cout << sort;
system("PAUSE");
return EXIT_SUCCESS;
}

rekursif dalam C++

#include
#include

using namespace std;

class node {
public:
int data;
node *berikut;
};

int main(int argc, char** argv) {

//langkah satu

node *baru;
baru = new node;
baru->data = 5;
baru->berikut = NULL;
cout << " Isi data node baru adalah : " << baru->data << endl; //langkah dua node *lain; lain = new node; lain->data = 6;
lain->berikut = NULL;
cout << " Isi data node lain adalah : " << lain->data << endl; //langkah tiga : menyambung rantai baru->berikut = lain;
cout << " Isi data node lain di cetak dari node baru adalah : " ; cout << baru->berikut->data << endl; //langkah empat node *kepala = baru; cout << " Mencetak node pertama dari pointer kepala : "; cout << kepala->data << endl; cout << " Mencetak node kedua dari pointer kepala : "; cout << kepala->berikut->data << endl; //langkah lima : pointer yang jalan - jalan cout << " Menggunakan perulangan untuk mencetak setiap data pada rantai " << endl; node *jalan = kepala; int i = 1; while (jalan != NULL){ cout << " Data ke- " << i << " > " << jalan->data << endl; i++; jalan = jalan->berikut;
}

//langkah enam : bukti bahwa pointer kepala tidak kehilangan data
cout << " Mencetak node pertama dari pointer kepala : "; cout << kepala->data << endl; cout << " Mencetak node kedua dari pointer kepala : "; cout << kepala->berikut->data << endl;

system ("color a0");
system ("PAUSE");
}

Array

#include
#include
using namespace std;

class Mengendalikan_array {
public :
Mengendalikan_array (){
cout<<"Program mengendalikan array"< for(i = 0; i < n; i++){
cout< }
cout< }
int main(int argc, char *argv[])
{
Mengendalikan_array X;
X.input();
X.cetak();

system("PAUSE");
return EXIT_SUCCESS;
}

functions

program dengan fungsi untuk menghitung rata-rata dari 10 bilangan yang diinputkan, fungsi-fungsi yang dibuat adalah:

1. Fungsi input 10 bilangan bulat
2. Fungsi hitung jumlah 10 bilangan bulat
3. Fungsi hitung rata-rata
4. Fungsi tampil hasil

berikut source codenya..

#include

inline void input(float n[9])

{

cout << “Masukkan 10 bilangan ” << endl; for (int i=0;i<=9;i++) { cout << “Input bilangan ke-”<> n[i];

}

}

inline float sum(float n[9])

{

float total=0;

for (int i=0;i<=9;i++)

{

total=total+n[i];

}

return total;

}

inline float avg(float s)

{

float rt=0;

rt=s/10;

return rt;

}

inline void print(float s, float a)

{

cout<<”\nTotal = “<
cout<<”Rata rata = “<
}

int main()

{

float num[9];

float s,a;

cout << “=====================================================================\n”;

cout << “Program menghitung Rata-rata 10 Bilangan dengan menggunakan function\n”;

cout << “=====================================================================\n\n”;

input(num);

s=sum(num);

a=avg(s);

print(s,a);

system(“pause”);

}

4 Jul 2011

Penyisihan Duplikat Dari Sebuah Array

duplikat dari sebuah array menggunakan JELIOT
import to jeliot.io.*;
public class ArrayRemoveDuplicate {
public static void main(String[] args) {
String[] data = {"A", "C", "B", "D", "A", "B", "E", "D", "B", "C"};
System.out.println("Original array : " + Arrays.toString(data));

List list = Arrays.asList(data);
Set set = new HashSet(list);

System.out.print("Remove duplicate result: ");


String[] result = new String[set.size()];
set.toArray(result);
for (String s : result) {
System.out.print(s + ", ");
}
}
}

pointer

Berikut source kode dari pointer..
#include
#include

using namespace std;


class node {
public:
int data;
node*berikut;
};

int main (){
node*baru;
baru= new node;
baru->data=5;
baru->berikut=NULL;
cout<<"Isi data node baru adala:"<data<data=6;
lain->berikut=NULL;
cout<<"Isi data node lain adala:"<data<data=7;
xxx->berikut=NULL;
cout<<"Isi data node lain adalah :"<data<data=8;
oneto->berikut=NULL;
cout<<"Isi data node lain adalah :"<data<data=9;
arone->berikut=NULL;
cout<<"Isi data node lain adalah :"<data<berikut=lain;
cout<<"Isi data node lain dicetak dari node baru adalah:"; cout<berikut->data<berikut=xxx;
cout<<"Isi data node lain dicetak dari node baru adalah:"; cout<berikut->data<berikut=oneto;
cout<<"Isi data node lain dicetak dari node baru adalah:"; cout<berikut->data<berikut=arone;
cout<<"Isi data node lain dicetak dari node baru adalah:"; cout<berikut->data<data<berikut->data<"<data<berikut;
}

cout<<"mencetak node pertama dari pointer kepala:"; cout<data<berikut->data<berikut->berikut->data<berikut->berikut->berikut->data<berikut->berikut->berikut->berikut->data<
system("PAUSE");
return EXIT_SUCCESS;
}

Menghitung Jarak pada Graf dengan 3 Titik Simpul

Berikut source kodenya...

#include
#include

int main ()
{
char kata1;
char kata2;
char kata3;
int a, b, c;

cout<<"Menghitung Jarak pada Graf dengan 3 Titik Simpul"<>kata1;
cout<>kata2;
cout<>kata3;
cout<>a;
cout<<"Inputkan jarak antara titik simpul "<>b;
cout<<"Inputkan jarak antara titik simpul "<>c;
cout< "< "< "< jalur terpendek"<
return 0;
}
Selamat Belajar...

28 Jun 2011

Penjumlahan vektor "vector sum"

           Vector sum
The following
are examples of programs using
jeliot.io.*;

import jeliot.io.*;

public class Vektor {
        int []elemen= new int [100];
        int banyak;
    
    public void beri_nilaiBanyak(){
           
            banyak=3;
            for(int i=0; i            elemen[i]=0;
           
    }
    public void masukan (Vektor A, Vektor B){
         System.out.print("\n Banyak elemen : ");
        banyak=Input.readInt();
        System.out.print("Masukkan data vektor\n ");
        for(int i=0; i                 System.out.print("Data[");
                 System.out.print(i+1);
                 System.out.print("]:");
                 A.elemen[i]=Input.readInt();
        }
        System.out.print("\n \n");
        for(int i=0; i                 System.out.print("s[");
                 System.out.print(i+1);
                 System.out.print("]=");
                 System.out.print((5));
                 System.out.print(A.elemen[i]);
                 System.out.print("\n");
        }
          return banyak;
    }
    public void penjumlahan_vektor(Vektor A, Vektor B){
     if(A.banyak>B.banyak)
     banyak=A.banyak;
     else
     banyak=B.banyak;
     for(int i=0; i     elemen[i]=A.elemen[i]+B.elemen[i];
    }
    public void perkalian_vektor(float k, Vektor A){
     banyak=A.banyak;
     for(int i=0; i     elemen[i]=A.elemen[i];
    }

     public static void main() {
     Vektor X = new Vektor();
     Vektor Y = new Vektor();
     Vektor Z = new Vektor();
     Z.beri_nilaiBanyak();
     Z.masukan(X,Y);
     Z.penjumlahan_vektor(X,Y);
     System.out.print("\n Hasil penjumlahan 2 Vektor \n" + Z);
     Z.perkalian_vektor(3,X);
     System.out.print("\n
The results of scalar multiplication with a vector\n" + Z);
    }
    }

Penjumlahan vektor "vector sum"

           Vector sum
The following
are examples of programs using
jeliot.io.*;

import jeliot.io.*;

public class Vektor {
        int []elemen= new int [100];
        int banyak;
    
    public void beri_nilaiBanyak(){
           
            banyak=3;
            for(int i=0; i            elemen[i]=0;
           
    }
    public void masukan (Vektor A, Vektor B){
         System.out.print("\n Banyak elemen : ");
        banyak=Input.readInt();
        System.out.print("Masukkan data vektor\n ");
        for(int i=0; i                 System.out.print("Data[");
                 System.out.print(i+1);
                 System.out.print("]:");
                 A.elemen[i]=Input.readInt();
        }
        System.out.print("\n \n");
        for(int i=0; i                 System.out.print("s[");
                 System.out.print(i+1);
                 System.out.print("]=");
                 System.out.print((5));
                 System.out.print(A.elemen[i]);
                 System.out.print("\n");
        }
          return banyak;
    }
    public void penjumlahan_vektor(Vektor A, Vektor B){
     if(A.banyak>B.banyak)
     banyak=A.banyak;
     else
     banyak=B.banyak;
     for(int i=0; i     elemen[i]=A.elemen[i]+B.elemen[i];
    }
    public void perkalian_vektor(float k, Vektor A){
     banyak=A.banyak;
     for(int i=0; i     elemen[i]=A.elemen[i];
    }

     public static void main() {
     Vektor X = new Vektor();
     Vektor Y = new Vektor();
     Vektor Z = new Vektor();
     Z.beri_nilaiBanyak();
     Z.masukan(X,Y);
     Z.penjumlahan_vektor(X,Y);
     System.out.print("\n Hasil penjumlahan 2 Vektor \n" + Z);
     Z.perkalian_vektor(3,X);
     System.out.print("\n Hasil perkalian skalar dengan Vektor \n" + Z);
    }
    }

Rekursif

Is the ability of a recursive routine to call itself. Recursive definition is actually contained in the procedures and functions. The difference is that the recursive call to itself can be, but the procedures and functions must be called by the caller procedures and functions. Recursive programming techniques are important and some programming languages ​​support the existence of this recursive process.

The following is an example of a recursive program uses
jeliot.io.*;


import jeliot.io.*;

public class hitung {
 
    public void input(){
    System.out.println("
determine the value n:");
    n=Input.readInt();
    }
    public void proses(){
           jumlah=0;
           total=0;
           rumus=-1;
    for(int j=1; j<=n; j++)
     {
     rumus=(rumus*(-1));
     total=rumus/j;
     jumlah+=total;
     if(j==1)
     System.out.println(+total);
     if(j>1)
     System.out.println(+total);
    
     System.out.println("
sum of series = "+number);
     }
     }
private int n;
private float rumus,jumlah,total;

    public static void main() {
       hitung h=new hitung();
       h.input();
       h.proses();

    }
}

27 Mei 2011

  • Insertion Sort  (mengurutkan data)
                 Insertion Sort yaitu mengurutkan data dari data tak terurut menjadi data terurut dengan metode penyisipan.
Algoritma pengurutan dengan metode Penyisipan.

  • Analisis masalah :
               mengurutkan data dengan metode penyisiapan
  • Algoritmanya :
          Deklarasi :
                           i, j, ditangan : integer
         
          Deskripsi :
                           for j <= 2 to n do
                           ditangan ß data[j]
                           for i ß j-1 asalkan {(i >= 0) dan (data[i] > ditangan)} do  
                           data[i+1] <= data[i]
                           i--
                           endfor
                           data[i+1] ß ditangan
  • Data Uji
         Data awal :
    [8, 4, 7, 3, 1, 2, 6, 5]
         fase 1, 4 masuk
    [4, 8, 7, 3, 1, 2, 6, 5]
         fase 2, 7 masuk
    [4, 7, 8, 3, 1, 2, 6, 5]
         fase 3, 3 masuk
    [3, 4, 7, 8, 1, 2, 6, 5]
         fase 4, 1 masuk
    [1, 3, 4, 7, 8, 2, 6, 5]
         fase 5, 2 masuk
    [1, 2, 3, 4, 7, 8, 6, 5]
         fase 6, 6 masuk
    [1, 2, 3, 4, 6, 7, 8, 5]
         fase 7, 5 masuk
    [1, 2, 3, 4, 5, 6, 7, 8]
         fase 8
    [1, 2, 3, 4, 5, 6, 7, 8]

     
  • Bahasa C++
          

24 Apr 2011

Array berdimensi dua

Operasi yang umumnya dilakukan menggunakan array adalah :
- Mengurutkan bilangan terbesar / terkecil (bubble sort)
- Seleksi data ( selection sort)
- Mengurutkan data dengan metode penyisipan(insertion sort)

Kali ini saya mencoba program mengurutkan data menggunakan metode "bubble sort".
metode pengurutan gelembung (bubble sort) mempunyai perilaku seperti gelembung di mana bila akan diurutkan naik, nilai yang besar akan naik (indeks besar) sementara nilai yang kecil akan turun (ke indeks yang kecil). Setiap data (data pertama) akan dibandingkan dengan data yang ada disebelahnya (dari data kedua sampai selesai). Bila data pertama lebih besar drai data yang sesudahnya, dilakukan penukaran tempat atau posisi data. demikian, sampai data tesebut berurut.
    Berikut contoh Algoritm pengurutan data "bubble sort"

  • Algoritma :     

                    Deklarasi :
                                larik = aray [1..100] of integer
                                i, a : byte
                                k    : larik
                                j, bantu : integer 
      
                    Deskripsi :
                    for i ß 1 to n-1 do
                    for j ß i+1 to n do
                    if x[i] > x[j] then // data sebelah kiri > kanan
        tukar(x[i], x[j])
        endif
                    endfor
                                endfor
  • Data Uji :        

  Data awal :
[8, 4, 7, 3, 1, 2, 6, 5]

  fase 1
[1, 8, 7, 4, 3, 2, 6, 5]

  fase 2
[1, 2, 8, 7, 4, 3, 6, 5]

  fase 3
[1, 2, 3, 8, 7, 4, 6, 5]

  fase 4
[1, 2, 3, 4, 8, 7, 6, 5]

  fase 5
[1, 2, 3, 4, 5, 8, 7, 6]

  fase 6
[1, 2, 3, 4, 5, 6, 8, 7]

  fase 7
[1, 2, 3, 4, 5, 6, 7, 8]

  fase 8
[1, 2, 3, 4, 5, 6, 7, 8]


  • Bahasa C++
#include <iostream.h>
#include <conio.h>

void main()
{
   int data[10];
   int i, j, tmp;
   cout<<"Program Mengurutkan Data"<<endl;
   cout<<"Dengan Metode Bubble Sort"<<endl;
   for(i=0; i<10; i++)
   {
       cout<<"Masukkan data ke "<<(i+1)<<" : ";
      cin>>data[i];
   }

   clrscr();
   cout<<"Data sebelum diurutkan : "<<endl;
   for(i=0; i<10; i++)
   {
       cout<<data[i]<<" ";
   }
   cout<<endl;
for(i=0; i<9; i++)
   {
       for(j=i+1; j<10; j++)
      {
          if(data[i]>data[j])
         {
             tmp = data[i];
            data[i] = data[j];
            data[j] = tmp;
         }
      }
   }

   cout<<"Data setelah diurutkan : "<<endl;
   for(i=0; i<10; i++)
   {
       cout<<data[i]<<" ";
   }
   getch();
}

Array


Macam -macam array :
Array berdimensi satu
Array berdimensi dua
Array berdimensi banyak

 Array berdimensi satu"
Array adalah kumpulan data bertipe sama yang menggunakan nama sama. Dengan mengggunakan array, sejumlah variabel dapat memakai nama yang sama. Antara satu variabel dengan variabel lain di dalam array dibedakan berdasarkan "subscript".
Sebuah subscript berupa bilangan di dalam kurung siku.
Melalui subscript inilah masing-masing elemen array dapat diakses.
Misalkan kita ingin membuat program untuk mencari nilai rata-rata dari 5 buah data nilai yang diinputkan. Pada program ini kita memerlukan 5 buah variabel yang berbeda-beda untuk menyimpan 5 buah nilai.
Contoh programnya sebagai berikut :

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

void main()
{
   float nilai[5];
   float jumlah, rata2;
   cout<<"Program Menghitung Nilai Rata-rata"<<endl;
   for(int i=0; i<5; i++)
   {
       cout<<"Masukkan nilai ke "<<(i+1)<<" : ";
       cin>>nilai[i];
   }
   jumlah = 0;
   for(int i=0; i<5; i++)
   {
       jumlah = jumlah + nilai[i];
   }
   rata2 = jumlah / 5;
   cout<<"Nilai rata-rata adalah "<<rata2<<endl;
   getch();
}

Rekursi

Fungsi dalam C++ dapat dipakai secara rekursi.
Artinya suatu fungsi dapat memanggil fungsi yang merupakan dirinya sendiri.
Contoh penerapan adalah untuk menghitung nilai perpangkatan : "xy"
Dimana y tsb adalah bilangan bulat positif
penyelasaian permasalahan di atas adalah :
    Jika y = 1      xy = x
    Jika tidak      xy = x * xy-1
#include <conio.h>

long int pangkat(int x, int y);

void main()
{
   int x, y;
   long int hasil;
   cout<<"Menghitung x^y"<<endl;
   cout<<"Input x : ";
   cin>>x;
   cout<<"Input y : ";
   cin>>y;
   hasil = pangkat(x, y);
   cout<<x<<"^"<<y<<" = "<<hasil;
   getch();
}

long int pangkat(int x, int n)
{
   if (n == 1)
      return(x);
   else
      return(x * pangkat(x, n-1));
}

Program C++ untuk menentukan bilangan ganjil atau bilangan genap

Untuk membuat program C++ yang menentukan bilangan ganjil atau bilangan genap, terlebih dahulu kita harus bisa membedakan bilangan

ganjil dan genap. Bil. Ganjil adalah Bilangan yang tidak habis dibagi dengan bilangan 2 atau sisa hasil baginya adalah 1. Contoh bilangan

ganjil adalah 1, 3, 5, 7, 9 dan seterusnya. Bil. Genap adalah Bilangan yang Habis dibagi 2 atau sisa hasil baginya adalah 0. Contoh bilangan

genap adalah 2, 4, 6, 8 dan seterusnya. Sebelum bisa menentukan bilangan ganjil dan genap, kita harus mengetahui operator sisa

pembagian (MOD) / modulus.

Operator sisa pembagian menghasilkan sisa hasil bagi, untuk lebih jelasnya lihat contoh berikut :
10 MOD 3 = 1
12 MOD 10 = 2
4 MOD 2 = 0
5 MOD 10 = 5

jadi, logika untuk menentukan bilangan genap adalah bilangan yang bisa dibagi dua, dalam arti bilangan genap adalah bilangan yang jika

dibagi (dengan MOD) dua (2) maka sisa hasil baginya sama dengan nol.
Sedangkan bilangan ganjil adalah sebaliknya, yaitu bilangan yang jika dibagi (MOD) dua (2) sisa hasil baginya sama dengan 1 (bukan 0).
Contoh :
4 MOD 2 = 0 berarti 4 adalah bilangan genap.
13 MOD 2 = 1 berarti 13 adalah bilangan ganjil.
8 MOD 2 = 0 berarti 8 adalah bilangan genap.
25 MOD 2 = 1 berarti 25 adalah bilangan ganjil.

Diatas sudah ada pengertian bil. genap dan bil. ganjil. Nah.. sekarang kita source codenya :

    #include <iostream.h>
    #include <conio.h>
    main()
    {
        clrscr();
        int bil, sisa;
        cout<<"Masukkan sebuah bilangan : ";
        cin>>bil;
        sisa = bil % 2;
        if(sisa == 0)
            cout<<bil<<" adalah bilangan genap"<<endl;
        else
            cout<<bil<<" adalah bilangan ganjil"<<endl;
        getch();
    }

18 Apr 2011

Fibonacci C++

Angka fibonacci adalah urutan angka (deret angka) yang disusun oleh Leoanardo Fibonacci pada tahun 1175 - 1245 M.
Bilangan Fibonacci adalah urutan angka yang diperoleh dari penjumlahan dua angka didepannya, misalnya seperti ini :
0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, dst..
contoh coding C++ program deret fibonacci:

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

int main()
{
  int i,N,a[50];
  printf("Banyak data untuk deret fibonacci : ");
  scanf("%d",&N);
  for (i=0;i<N; i++)
  {
     if(i<2)
      a[i]=i;
     else
      a[i]=a[i-2]+a[i-1];
  }
  printf("\nMenampilkan Deret Fibonacci %d suku pertama\n",N);
  for (i=0; i<N; i++)
    {
  printf("%d\t",a[i]);
    }
  return 0;
}

16 Apr 2011

Program calculator dasar

Matematika sebagai ilmu dasar segala bidang ilmu pengetahuan. matemetika adalah "ilmu yang menggambarkan simpulan-simpulan yang penting".
Dan sekarang mari kita belajar membuat Program C++ dengan menggunakan class untuk menggambarkan suatu object Calculator sederhana. dengan menggunakan nama  class Calculator yang mempunyai 5 dasar method yaitu tambah(+), kurang(-) , kali(*) , bagi(/), input(), dimana Method input() berfungsi menerima input dari user. Program mampu menerima 2 operand dan 1 buah operator dari user dan menampilkan hasilnya.
Silahkan  gunakan variabel – variabel yang anda butuhkan. Selain itu terdapat fungsi display() yang merupakan friend function dari class calculator dan digunakan untuk menampilkan hasil kalkulasi.
Contoh programnya :

#include <iostream>
#include <iomanip>
#include <cmath>

using namespace std;
class Calculator
{
private:
int Bil1, Bil2, Hasil;
public:
//int Hasil;
char Opt;
Calculator();
void tambah();
void kurang();
void kali();
void bagi();
void input(int, int,char);
friend void display(Calculator Cl);
};
Calculator::Calculator()
{
Bil1=Bil2=Hasil=0;
}
void Calculator::input(int bil1, int bil2, char opt)
{
Bil1=bil1;
Bil2=bil2;
Opt=opt;
}
void Calculator::tambah()
{
Hasil=Bil1+Bil2;
}
void Calculator::kurang()
{
Hasil=Bil1-Bil2;

}

void Calculator::kali()
{
Hasil=Bil1*Bil2;

}
void Calculator::bagi()
{
Hasil=Bil1/Bil2;
}
void display(Calculator Cl)
{
cout<<"Hasil dari:" <<Cl.Bil1 << Cl.Opt<<Cl.Bil2<<"="<<Cl.Hasil;
cout<<"\n";
}

int main()
{
Calculator Clc ;
int bil1, bil2;
char opt;
cout<<"Masukan Bilangan pertama: ";
cin >> bil1;
cout<<"Masukan Bilangan kedua: ";
cin >> bil2;
cout<<"Masukan Operator Aritmatika [+,-,:,*]: ";
cin >> opt;
Clc.input(bil1,bil2,opt);

switch (opt)
{
case '+':
Clc.tambah();
break;
case '-':
Clc.kurang();
break;
case '*':
Clc.kali();
break;
case '/':
Clc.bagi();
break;
//default :cout <<”A”;
}
display (Clc);
system ("Pause");
}

Program bilangan faktorial C++

Bilangan faktorial adalah perkalian antara bilangan bulat positif yang kurang dari atau sama dengan n. Faktorial biasanya ditulis dengan n! dan biasa disebut dengan n faktorial. Bilangan faktorial misalnya 4!, itu berarti 4 x 3 x 2 x 1.
contoh program bilangan faktorial C++ :

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

long int faktorial(int n)
{
if (n==0 || n==1)
    return 1;

else
    return n*faktorial(n-1);
}

int main()
{
   int bil, n;
     long int hasil;
     cout << "Masukkan bilangan n = ";
     cin >> n;
     hasil = faktorial(n);
     cout << n << "! = " << hasil;

   getch();
   return 0;
}

15 Apr 2011

Menentukan FPB (Faktor Persekutuan Terbesar)

FPB (Faktor Persekutuan Terbesar)
Algoritma Menentukan FPB Dari Bilangan misalnya A & B :
1. Mulai
2. Masukan bilangan A & B
3. Jika bilangan A lebih kecil dari bilangan B, tukar A dan B
4. Jika A modulus B = 0, fpb adalah B, jika tidak ke step 3
5. A = B, dan B= A modulus B, kembali ke step 3 cetak hasil
6. selesai

Berikut adalah contoh source code c++ tentang faktor persekutuan terbesaar atau FPB :

#include <iostream.h>
#include <conio.h>
int main()
{
int m,n,r;
cout << "Masukkan bilangan pertama : ";
cin >> m;
cout << "Masukan bilangan kedua : ";
cin >> n;
r = m%n;
while (r!=0)
{
m = n;
n = r;
r = m%n;
}
cout << "Faktor Persekutuan Terbesar adalah : " << n ;
getch();
return 0;
}

Program konversi dari jumlah hari ke tahun, bulan, minggu, hari

Dibawah ini merupakan Program C++ untuk mengkonversi dari jumlah hari ke Tahun, Bulan, Minggu, Hari.
Yang di inputkan berupa jumlah Hari.
algoritma : konversi dari hari menjadi tanggal bulan tahun, program konversi hari dengan c, makalah C, program untuk menggabungkan 2 kata yang anda inputkan, program mengkonfersi jumlah tahun ke bulan minggu dan hari, source code c tentang konversi detik.
Source Code nya seperti dibawah ini:


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

main()
{
    long int thn,bln,mgu,jum_hr,sisa_thn,hr,sisa_bln;
    cout<<"Konversi Tahun,Bulan,Minggu dan Hari\n";
    cout<<"====================================\n";
    cout<<"Masukkan Jumlah Hari: "; cin>>jum_hr;  cout<<endl;

    thn=jum_hr/365;
    sisa_thn=jum_hr%365;

    bln=sisa_thn/30;
    sisa_bln=sisa_thn%30;

    mgu=sisa_bln/7;
    hr=sisa_bln%7;

    cout<<jum_hr; cout<<" Hari "<<endl;
    cout<<thn; cout<<" Tahun"<<endl;
    cout<<bln; cout<<" Bulan "<<endl;
    cout<<mgu; cout<<" Minggu "<<endl;
    cout<<hr; cout<<" Hari \n";

   getch();
   return 0;

}

14 Apr 2011

Menghitung 2 buah bil. perkalian, pembagian & akar pangkat 2

Belajar C++.. 
Di bawah ini adalah source code c++ untuk menghitung 2 buah bilangan perkalian, pembagian, dan akar pangkat 2.
Algoritma : kita inputkan 2 buah bilangan dan memilih 1 dari 3 pilihan, yaitu perkalian, pembagian, dan akar pangkat 2.

Source codenya sebagai berikut :

#pragma argsused
    #include <iostream.h>

    #include <math.h>

    #include <conio.h>

    int main()

    {

    int pilihan;

    float bilangan1, bilangan2;

    cout << "Pilihan = n\n";

    cout << "(1) Perkalian\n";

    cout << "(2) Pembagian\n";

    cout << "(3) Akar pangkat 2n\n";

    cout << "\n";

    cout << "Masukkan pilihan (1/2/3) :";

    cin >> pilihan;

    cout << "Masukkan angka pertama : ";

    cin >> bilangan1;

    cout << "Masukkan angka kedua : ";

    cin >> bilangan2;

    switch (pilihan){

    case 1 :cout << "Hasil perkalian kedua bilangan tersebut adalah " << bilangan1*bilangan2 <<endl;break;

    case 2 :cout << "Hasil pembagian kedua bilangan tersebut adalah " << bilangan1 / bilangan2 <<endl;break;

    case 3 :cout << "Akar pangkat 2 bilangan pertama adalah " << sqrt(bilangan1) << "dan bilangan kedua adalah " << sqrt(bilangan2) <<endl;break;

    default: cout << "Jangan ngawur cuiy" <<endl;

    }

    getch();

    }

silahkan mencobaa..

12 Apr 2011

Menghitung jarak antara dua titik

Analisis : Menggunakan variable x1, x2, y1, y2 untuk merepresentasikan titiknya, Variable titik1,titik2 untuk titik tengahnya.Input : x1, x2, y1,y2.
Proses : titik1  diperoleh dengan menjumlahkan x1 dan x2, kemudian dibagi dengan 2, titik2 diperoleh dengan menjumlahkan y1 dan y2, kemudian dibagi dengan 2.
Algoritma:
masukkan x1,x2 & y1,y2.
mencari titik tengahnya dengan perhitungan titik1=(x1+x2)/2 dan titik2=(y1+y2)/2
kemudian menuliskan outputnya titik1, dan titik2

Program menggunakan Borlan C++ : 


#include <iostream>
class Titik{
      friend istream& operator>>(istream& ,Titik&);
      friend ostream& operator<<(ostream& ,Titik&);
      public:
             Titik();
             float titik1();
             float titik2();
      private:
             float x1, x2;
             float y1, y2;
             float TitikTengahx;
             float TitikTengahy;
             };
Titik::Titik(){
               }
float Titik :: titik1(){
                TitikTengahx=(x1+x2)/2;
                return TitikTengahx;
      }
float Titik :: titik2(){
      TitikTengahy=(y1+y2)/2;
      return TitikTengahy;
      }
istream& operator>>(istream& in, Titik& M){
         cout<<"MENGHITUNG TITIK TENGAH"<<endl;
         cout<<"masukkan nilai x1 dan x2 : ";
         in>>M.x1>>M.x2;
         cout<<"masukkan nilai y1 dan y2 : ";
         in>>M.y1>>M.y2;
         return in;
   }

ostream& operator<<(ostream& out, Titik& M){
        out<<"titik tengahnya adalah :("<<M.titik1()<<" , "<<M.titik2()<<")";
        return out;
   }
int main(){
        Titik x;
        cin>>x;
        cout<<x;
      return 0;
}

penggunaan fungsi dalam string

Kelas basic_string merupakan urutan karakter. Berisi semua operasi biasa dari Sequence, dan sebagai tambahan, mengandung operasi string standar seperti pencarian dan penggabungan.
Fungsi dalam string : 1. gabungan dua kata
                                2. konversi ke huruf kapital
                                3. membalikkan kata
berikut source codenya :
#include <iostream.h>
#include <string.h>

int main ()
{
cout<<"fungsi-fungsi dalam string"<<endl<<endl;

cout<<"1.Gabungkan dua kata"<<endl;
cout<<"   inputkan kata ke-1 : ";
char kata1[1][100];
cin>>kata1[1];
cout<<"   inputkan kata ke-2 : ";
char kata2[1][100];
cin>>kata2[1];
cout<<endl<<"   hasil : ";
strcat(kata1[1], kata2[1]);
cout <<kata1[1]<<endl<<endl;



cout<<"2. konversikan ke huruf kapital"<<endl;

cout<<"   inputkan kata dengan huruf kecil : ";
char kapital[1][100];
cin>>kapital[1];

strupr(kapital[1]);
cout<<endl<<"   hasil : ";
cout<<kapital[1]<<endl<<endl;


cout<<"3. membalikkan kata"<<endl;
cout<<"   inputkan kata : ";
char masukan[1][100];
cin>>masukan[1];

strrev(masukan[1]);
cout<<"   hasil : ";
cout<<masukan[1]<<endl<<endl;

return 0;
}

Kemudian kita run :
 inputkan kata  yang pertama dan kata yang kedua. hasilnya kedua kata tersebut akan menggabung.

,,,,,,...........
selanjutnya kata menggunakan huruf kecil dan hasilnya huruf tersebut menjadi huruf kapital.
.........................
ketiga inputkan kata dan hasilnya kata tersebut akan membalik

..........................................


Algoritmanya :
      1. source kode diatas yaitu type string
      2. urutan pertama menjelaskan mengenai gabungan dua kata yang di inputkan melalui keyboard. masing-masing memiliki kata yang berbeda.
      3. urutan yang kedua menjelaskan mengenai huruf kecil menjadi huruf kapital. kata yang kita inputkan dari keyboard harus huruf kecil yang kemudian akan secara otomatis berubah menjadi huruf kapital.
      4. urutan yang terakhir yaitu membalikkan kata. hasil kata yang kita inputkan secara otomatis akan membalik.
      5. hasil akhir kita dapat melihat contoh-contoh dari type string, masih banyak type sting yang belum saya gunakan.

9 Apr 2011

Menukar 2 Variabel

Berikut adalah program "menukar 2 variabel" dalam C++
#include  <iostream.h>
#include  <conio.h>
#include  <string.h>

class menukar
{
friend ostream& operator<<(ostream&, const menukar&);
friend istream& operator>>(istream&, menukar&);
public:
menukar ();
void tukar();
private:
       int a;
       int b;
    };
    menukar::menukar(){
    cout<<"::::Penukaran Dua variable::::"<<endl<<endl;
    }

    istream& operator>>(istream& in, menukar& masuk)
    {

cout<<"_masukkan angka yang akan dibalik :"<<endl;
cout << "1.masukkan Angka a: ";
in  >> masuk.a;
cout << "2.Masukkan Angka b: ";
cin  >>masuk.b;
return in;
}

ostream& operator<<(ostream& out, const menukar& keluar)
{
out<<"_hasil pertukaran angka tersebut:"<<endl;
out<<"Nilai a:"<<keluar.a<<endl;
out<<"Nilai B:"<<keluar.b<<endl;
   return out;
}

void menukar::tukar ()
{
int temp;
temp=a;
a=b;
b=temp;
}

main ()
{
menukar X;
cin>>X;
X.tukar ();
cout<<X;
 getch ();
 return 0;

}

Algoritmanya :

30 Mar 2011

Konstruksi algoritma dari bangun tidur sampai dengan hadir kuliah



  • –Minimal 4 kejadian
  • –Setiap kejadian ada beberapa kondisi
  • –Terdiri dari 2 – 5 pilihan aksi

if saya bangun jam 4:30
then saya segera ambil air whudu dan langsung sholat subuh

else

     if saya tidak sholat shubuh
        saya akan merapikan tempat tidur
else
    if setelah merapikan tempat tidur
       saya membaca buku

else
    if setelah saya membaca buku
      saya mandi

else
   if saya bersiap-siap untuk pergi kekampus

else
   then saya pergi kekampus jalan kaki
 

23 Mar 2011

Latihan individu


-Membuat algoritma dan program untuk mencari titik tengah sebuah garis yang ujung titiknya adalah A(x1,y1) dan B(x2,y2).


 #include <iostream.h>


 void titik_tengah (float x1, float y1, float x2, float y2, float hasil, float hasilx, float hasily){
        hasil = x1 + x2;
        hasilx = hasil / 2;
        hasil = 0;
        hasil = y1 + y2;
        hasily = hasil / 2;
        cout<<"\n\nKoordinat Titik Tengah T adalah : x=" << hasilx << ", y=" << hasily;
        cout<<" => T(x, y) === T(" << hasilx << ", " << hasily << ")";


}


int main(){


        float x1, y1, x2, y2;
        float hasil, hasilx, hasily;
        cout<<"Menghitung Titik Tengah\n\n";
        cout<<"A.....T.....B\n\n";
        cout<<"Masukkan Koordinat titik A\n";
        cout<<"Ax : ";
        cin>>x1;
        cout<<"Ay : ";
        cin>>y1;
        cout<<"\nMasukkan Koordinat titik B\n";
        cout<<"Bx : ";
        cin>>x2;
        cout<<"By : ";
        cin>>y2;


        titik_tengah(x1,y1,x2,y2,hasil,hasilx, hasily);


        cin>>x1;
        return 0;
}


-program untuk menghitung determinan matriks berordo 2x2

berikut source codenya : 
#include <iostream.h>

  class ORDO {
    private:
      int a, b, c, d;
      float hasil;
    public:

     void Set_Input(){
      cout<<"menghitung menghitung determinan matriks berordo 2x2"<<endl;
      cout<<"|"<<"a"<<" "<<"b"<<"|"<<endl;
      cout<<"|"<<"c"<<" "<<"d"<<"|"<<endl;
      cout<<"masukkan bilangan a :";
      cin>>a;
      cout<<"masukkan bilangan b :";
      cin>>b;
      cout<<"masukkan bilangan c :";
      cin>>c;
      cout<<"masukkan bilangan d :";
      cin>>d;
      cout<<"\n";
      }
     void Set_Proses(){
      hasil = (a*d)-(b*c);
      }
     void Set_Output(){
      cout<<"hasil ordo adalah :"<<hasil<<endl;
      cout<<"|"<<a<<" "<<b<<"|"<<endl;
      cout<<"|"<<c<<" "<<d<<"|"<<endl;
     }
    };
  int main(){

  int x;
   ORDO O;
   O.Set_Input();
   O.Set_Proses();
   O.Set_Output();
  cin>>x;

    return 0;
  }