Program Quick Sort Ascending C++

Berikut Codingnya... Program Quick Sort Ascending



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

void quicksort( int arr[], int left, int right)
{
int i=left, j=right;
int tmp;
int pivot=arr[(left+right)/2];

while(i<=j)
{
while(arr[i]<pivot)
i++;
while(arr[j]>pivot)
j--;
if(i<=j)
{
tmp=arr[i];
arr[i]=arr[j];
arr[j]=tmp;
i++;
j--;
}
}

if(left<j)
quicksort(arr,left,j);
if(i<right)
quicksort(arr,i,right);
}

void main()
{
int arr[100];
int i,n,lb,ub;
lb=0;
cout<<"PROGRAM QUICK SORT ASCENDING\n";
cout<<"_____________________________ \n\n";
cout<<"masukkan banyak data yang di urut: "; cin>>n;

ub=n;
cout<<"masukkan data-datanya: \n\n";
for(i=1; i<=n; i++)
{
cout<<"\tdata ke- "<<i<<" : "; cin>>arr[i];
}

quicksort(arr,lb,ub);
cout<<"\nHasil pengurutan data: ";
for(i=1; i<=n; i++)
cout<<" "<<arr[i];
getch();
 }

Program Selection Sort Ascending C++

Berikut codingnya Program Selection sort ascending

#include<conio.h>
#include<stdio.h>
typedef int larik[10];
void input(larik A, int n)
{
int i;
for(i=0; i<n; i++)
{
printf("data[%d]= ",i);
scanf("%d",&A[i]);
}}

void output(larik A,int n)
{
int i;
for(i=0; i<n; i++)
{
printf("%d\t",A[i]);
}}

void seleksi_min(larik A,int n)
{
int i,j,idx_mak,temp;
for(i=0; i<n; i++)
{
idx_mak=i;
for(j=i+1; j<n; j++)
{
if(A[j]<=A[idx_mak])
{
idx_mak=j;
}}
temp=A[i];
A[i]=A[idx_mak];
A[idx_mak]=temp;
}}


void main()
{
larik A;
int n;
printf("Program Selection Sort Ascending\n ");
printf("Banyak data: "); scanf("%d",&n);
input(A,n); printf("\n");

printf("Sebelum terurut\n");
output(A,n); printf("\n");

seleksi_min(A,n);printf("\nSetelah terurut\n");
output(A,n); printf("\n");

getch();
}

Program Insertion Sort Ascending C++

Berikut Program Insertion Sort Ascending..

#include<iostream.h>
#include<conio.h>
int data[10],data2[10];
int n;
void tukar(int a, int b)
{
    int t;
    t=data[b];
    data[b]=data[a];
    data[a]=t;
}
void insertion_sort()
{
    int temp,i,j;
    for(i=1; i<=n; i++)
    {
        temp=data[i];
        j=i-1;
        while(data[j]>temp&&j>=0)
            {
                data[j+1]=data[j];
                j--;
            }
        data[j+1]=temp;
    }
}
void main()
{
int i;
cout<<"PROGRAM INSERTION SORT ASCENDING"<<endl;
cout<<"Masukkan jumlah data: "; cin>>n;
for(int i=1; i<=n; i++)
    {
    cout<<"Masukkan data ke "<<i<<" : "; cin>>data[i];
    }
insertion_sort();
cout<<"Data setelah di sort: ";
for(i=1; i<=n; i++)
    {
    cout<<" "<<data[i];
    }getch();
}

Program Bubble Sort Ascending C++

Gambar di atas adalah hasil output dari program Bubble sort ascending.... Semoga bermanfaat. Berikut programnya

#include <stdio.h>
#include <conio.h>
int main()
{
int array[100],n,c,d,swap;
printf("PROGRAM BUBBLE SORT ASCENDING\n");
printf("_____________________________ \n");
printf("Berapa data yang akan di proses: "); scanf("%d",&n);
printf("Ada %d data yang akan di proses: \n",n);
for(c=0; c<n; c++)
scanf("%d",&array[c]);
for(c=0; c<(n-1); c++)
{
for(d=0; d<n-c-1; d++)
{
if(array[d]>array[d+1])
{
swap=array[d];
array[d]=array[d+1];
array[d+1]=swap;
}
}
}
printf("Data setelah di proses: \n");
for(c=0; c<n; c++)
printf("%d  ",array[c]);
getch();
return 0;
}

Fungsi dalam C++

FUNGSI

Dasar Teori
Function ( Fungsi ) merupakan blok dari kode yang dirancang untuk melaksanakan tugas khusus. Pada intinya fungsi berguna untuk :
  • Mengurangi pengulangan penulisan program yang berulangan atau sama.
  • Program menjadi terstruktur, sehingga mudah dipahami dan dikembangkan.
Fungsi-fungsi yang sudah kita kenal sebelumnya adalah fungsi main(), yang bersifat mutlak, karena fungsi ini program akan dimulai, sebagai contoh yang lainnya fungsi printf() yang mempunyai tugas untuk menampilkan informasi atau data kelayar dan masih banyak lainnya.
Struktur Fungsi
Sebuah fungsi sederhana mempunyai bentuk penulisan sebagai berikut :
nama_fungsi(argumen)
            {
                        … pernyataan / perintah;
                        … pernyataan / perintah;
                        … pernyataan / perintah;
            }
Prototipe Fungsi
Prototipe fungsi digunakan untuk menjelaskan kepada kompiler mengenai :
  • Tipe keluaran fungsi.
  • Jumlah parameter.
  • Tipe dari masing-masing parameter.
Salah satu keuntungan pemakai prototipe, kompiler akan melakukan konversi antara tipe parameter dalam definisi dan parameter saat pemanggilan fungsi tidak sama atau akan menunjukkan kesalahan jika jumlah parameter dalam definisi dan saat pemanggilan berbeda.
Contoh prototipe fungsi :
float total ( float a, float b); (menggunakan titik koma)
Jika dalam penggunaan fungsi yang dideklarasikan dengan menggunakan prototipe, maka bentuk definisi harus diubah. Sebagai contoh pada pendefinisian berikut :
float total(a, b)
float a, y;
Bentuk pendefinisian diatas harus diubah menjadi bentuk modern pendefinisian fungsi :
float total(float a, float b) (Tidak menggunakan titik koma)
Parameter Fungsi
Terdapat dua macam para parameter fungsi, yaitu :
  1. Parameter formal adalah variabel yang ada pada daftar parameter dalam definisi fungsi.
  2. Parameter Aktual adalah variabel yang dipakai dalam pemanggilan fungsi.
Bentuk penulisan Parameter Formal dan Parameter Aktual.
  1. Pemanggilan dengan nilai ( Call by Value )
Pemanggilan dengan nilai merupakan cara yang dipakai untuk seluruh fungsi buatan yang telah dibahas didepan. Pada pemanggilan dengan nilai, nilai dari parameter aktual akan ditulis keparameter formal. Dengan cara ini nilai parameter aktual tidak bisa berubah, walaupun nilai parameter formal berubah.
  1. Pemanggilan dengan Referensi (Call by Reference)
Pemanggilan dengan reference merupakan upaya untuk melewatkan alamat dari suatu variabel kedalam fungsi. Cara ini dapat dipakai untuk mengubah isi suatu variabel diluar fungsi dengan melaksanakan pengubahan dilakukan didalam fungsi.
Inline Function
Fungsi inline ( inline function ) digunakan untuk mempercepat proses program, terutama program-program yang menggunakan sering menggunakan fungsi, terutama program-program yang menggunakan pernyataan perulangan proses seperti for, while dan do – while. Inline function dideklarasikan dengan menyisipkan kata kunci inline didepan tipe data.
Function Overloading
Function Overloading adalah mendefinisikan beberapa fungsi, sehingga memiliki nama yang sama. Dapat diartikan bahwa fungsi yang overload berarti menyediakan versi lain dari fungsi tersebut. Salah satu kelebihan dari C++ adalah Overloading. Sebagai contoh membentuk fungsi yang sama dengan tipe yang berbeda-beda dan dibuatkan pula nama fungsi yang berbedabeda pula.
Fungsi Untuk Operasi String
Kompiler seperti Borland C++ maupun TURBO C++ menyediakan sejumlah fungsi yang berkaitan dengan operasi string, antara lain :
  1. Fungsi Manipulasi String
  2. Fungsi Konversi string
Sekian terimakasih . . .:-)

Array dalam C++

ARRAY

Dasar Teori
Array adalah kelompok variabel dengan tipe sejenis dan dinyatakan dengan nama yang sama. Dengan kata lain, array merupakan tipe khusus yang menyatukan sekelompok variabel dengan tipe yang sama.

Array 1 Dimensi 

       Array 1 dimensi pada dasarnya senarai (deretan) variabel bertipe serupa. Kita lebih dahulu menciptakan variabel array dari tipe yang dikehendaki. int monthDays[];
Meskipun deklarasi telah menetapkan bahwa monthDays adalah variabel array, namun sesungguhnya tidak ada array yang diciptakan pada saat itu. Nilai dari monthDays adalah nilai null yang merepresentasikan array tanpa nilai dan bukan bernilai nol.
Bentuk umum new() untuk array 1 dimensi adalah sebagai berikut:
array-var = new( ) type[size]
Dalam hal ini,  type  menspesifikasikan  tipe  data  yang  dialokasikan,  size menspesifikasikan jumlah dari elemen array, dan array-var adalah variabel array yang dirangkai ke array. Dengan demikian, untuk menggunakan new(), kita harus menspesifikasikan tipe dan jumlah elemen untuk dialokasikan. Elemen-elemen di array yang dialokasikan oleh new( ) akan secara otomatis dinisialisasi ke nol.

Array 2 Dimensi

 Array 2 dimensi tersusun dalam bentuk baris dan kolom, dimana indeks pertama menunjukkan baris dan indeks kedua menunjukkan kolom.
Bentuk umum deklarasi array 2 dimensi
Contoh :


Sekian terimakasih. . .:-)

Perulangan dalam C++


Dasar Teori
Pernyataan for
Pernyataan for pada dasarnya sama dengan pernyataan while, yaitu digunakan untuk mengulang pelaksanaan pernyataan tertentu selama kondisi tertentu terpenuhi, cuma di dalamnya terdapat pernyataan untuk pra dan pasca pelaksanaan statement. Bentuk umum pernyataan ini adalah:

for ([prestatement]; [ekspresi]; [poststatement]) statement;

Algoritma pernyataan ini adalah:

prestatement;
ulangi:
statement;
poststatement;
if (ekspresi)
goto ulangi;
endif

Contoh source code:
#include <iostream.h>
 void main()
 {
 int i;
 for(i=1; i<=4; i++)
 {
 cout<<i<<".Hello \n";
 }
 }


Pernyataan while
Pernyataan while digunakan untuk mengulang pelaksanaan pernyataan tertentu selama kondisi tertentu terpenuhi. Bentuk umum pernyataan ini adalah:
while (ekspresi) statement;
Di mana ekspresi adalah ekspresi ordinal (mengembalikan nilai bilangan bulat). Statement akan dilakukan secara berulang selama ekspresi bernilai bukan 0.

Algoritma pernyataan ini adalah:

ulangi:
if (ekspresi)
statement;
goto ulangi;
endif

Contoh source code:
#include <iostream.h>
void main()
{
int i;
i=1;
while(i<=4)
{
cout<<i<<".Hello \n";
i++;
}
}

Pernyataan do-while
Pernyataan do-while pada dasarnya sama dengan pernyataan while, yaitu digunakan untuk mengulang pelaksanaan pernyataan tertentu selama kondisi tertentu terpenuhi, cuma letak pengujian kondisinya adalah di akhir pernyataan tersebut. Bentuk umum pernyataan ini adalah:
do statement; while (ekspresi);
Di mana ekspresi adalah ekspresi ordinal (mengembalikan nilai bilangan bulat). Statement akan dilakukan secara berulang selama ekspresi bernilai bukan 0.

Algoritma pernyataan ini adalah:

ulangi:
statement;
if (ekspresi)
goto ulangi;
endif

Contoh source code:
#include <iostream.h>
void main()
{
int i;
i=1;
do
{
cout<<i<<".Hello \n";
i++;
}
while (i<=4);
}

Sekian terimakasih . . .:-)