Posted by : admin Minggu, 19 April 2015

buat gan gan yang lagi pusink buat tugas sorting & searching ini ane punya listing programnya komplit..... silakan di copy paste,jangan lupa tinggalkan pesan...

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


kosong()

{

cout<<"ANDA SALAH MEMASUKKAN KODE"<<endl;

}



sorting()

{

#include "conio.h"
#include "stdio.h"
{



int i, j, iMin;

int n, Urut;

int Tmp, code;

int Arr[100];

do {





printf("=====================================\n");

printf("| Pilihan Menu Program Sorting |\n");

printf("=====================================\n");

printf("| 1. Selection Sorting |\n");

printf("| 2. Bubble Sorting |\n");

printf("| 3. Insertion Sorting |\n");

printf("| 4. Marge sorting |\n");

printf("| 5. Keluar . . . |\n");

printf("=====================================\n\n");

printf("Masukan Pilihan Anda [1-5] : ");

scanf("%d", &code);

switch (code) {



case 1 :

printf("\nInputkan banyak data yang akan diurutkan : ");

scanf("%i", &n);

Urut = 1;

for(i = 0; i < n; i++) {

printf("Masukan data ke %i : ", i + 1);

scanf("%i", &Arr[i]);

}

for(i = 0; i < n - 1; i++) {

iMin = i;

for(j = Urut; j < n; j++) {

if(Arr[j] < Arr[iMin]) {

iMin = j;

if(Arr[i] != Arr[iMin]) {

Tmp = Arr[i];

if(Arr[i] > Arr[iMin]) { Arr[i] = Arr[iMin]; Arr[iMin] = Tmp; } } } } Urut = Urut + 1; } printf("\nSetelah Pengurutan\n"); for(i = 0; i < n; i++) {

printf("Elemen ke %i : %i\n", i + 1, Arr[i]);

}

getch();

break;



case 2 :

printf("\nInputkan banyak data yang akan diurutkan : ");

scanf("%i", &n);

for(i = 0; i < n; i++) {

printf("Masukan data ke %i : ", i + 1);

scanf("%i", &Arr[i]);

}

for(i = 1; i < n; i++) {

for(j = 0; j < n - 1; j++) {

if(Arr[j] > Arr[j + 1]) { Tmp = Arr[j]; Arr[j] = Arr[j + 1]; Arr[j + 1] = Tmp; } } } printf("\nSetelah Pengurutan\n"); for(i = 0; i < n; i++) {

printf("Elemen ke %i : %i\n", i + 1, Arr[i]);

}



getch();

break;





case 3 :

printf("\nInputkan banyak data yang akan diurutkan : ");

scanf("%i", &n);

for(i = 0; i < n; i++) {

printf("Masukan data ke %i : ", i + 1);

scanf("%i", &Arr[i]);

}

for(i = 1; i < n; i++) {

Tmp = Arr[i];

j = i - 1;

while(Arr[j] >= Tmp && j > 0) { Arr[j + 1] = Arr[j]; j = j - 1; } if(Tmp >= Arr[j]) { Arr[j + 1] = Tmp; } else { Arr[j + 1] = Arr[j]; Arr[j] = Tmp; } } printf("\nSetelah Pengurutan\n"); for(i = 0; i < n; i++) {

printf("Elemen ke %i : %i\n", i + 1, Arr[i]);

}

getch();

break;



case 4 :

printf("\nInputkan banyak data yang akan diurutkan : ");

scanf("%i", &n);

for(i = 0; i < n; i++) {

printf("Masukan data ke %i : ", i + 1);

scanf("%i", &Arr[i]);

}

for(i = 1; i < n; i++) {

Tmp = Arr[i];

j = i - 1;

while(Arr[j] <= Tmp && j > 0) { Arr[j + 1] = Arr[j]; j = j - 1; } if(Tmp <= Arr[j]) {

Arr[j + 1] = Tmp;

} else {

Arr[j + 1] = Arr[j];

Arr[j] = Tmp;

}

}

printf("\nSetelah Pengurutan\n");

for(i = 0; i < n; i++) {

printf("Elemen ke %i : %i\n", i + 1, Arr[i]);

}

getch();

break;





default : {

printf("\nSilahkan Tekan Enter Untuk Keluar . . . "); }}



} while(code >=1 && code <= 4);

getch();

}

}

//----------------------------------------







void binary(){

int dt[100], target, first, mid, last, x, temp;

cout<<"Masukan Banyaknya data: "; cin>>x; cout<<"\n\n";

for (int a=1; a<=x; a++){

cout<<"Data ke-"<<a<<" : "; cin>>dt[a];} for (int a=1; a<x; a++){

int b=a+1;

for (int c=1; c<b; c++){

if (dt[b]<dt[c]){

temp=dt[c];

dt[c]=dt[b];

dt[b]=temp;

}}}

cout<<"\n\n";

cout<<"Masukkan data yang akan dicari: "; cin>>target; first = 1; last = x; int sisa = (first + last) % 2; if (sisa==1){ mid = (first + (last - 1)) / 2; } else{ mid = (first + last) / 2; } cout<<endl;

int ketemu=0;

if (target==dt[mid]){

ketemu = 1;

}

else if (target>dt[mid]){ for (int b = mid+1; b<=x; b++){

if (dt[b]==target){

ketemu = 1;

}}}

else if (target<dt[mid]){

for (int b = 1; b<mid; b++){

if (dt[b]==target){

ketemu = 1;

}}}



if (ketemu>0){ cout<<"Data ditemukkan"<<endl;

}

else{

cout<<"Data tidak ditemukan"<<endl;

}}





void sequential() {

int z, s, dt, posisi, ketemu = 0;

int data[50];



cout<<"Masukan berapa banyak data: ";

cin>>s; cout<<"\n——————————————\n";

for (z = 0; z < s; z++) {

cout<<"masukkan data ke "<<z+1<<" = ";

cin>>data[z];} cout<<"\n——————————————\n";

cout<<"data yang ingin dicari: ";

cin>>dt; ketemu = 0; cout<<"——————————————\n";

for (z = 0; z < s; z++) {

if (data[z] == dt) {

ketemu = 1;

posisi = z;

cout<<"\nData: "<<dt<<" ditemukan di posisi "<<posisi+1;

}

}

if (ketemu == 0) cout<<"data tidak ditemukan";

cout<<"\n——————————————\n"; }







searching ()

{

{

int pil;





do{

cout<<"\n===================================================\n";

cout<<" [ MENU UTAMA SEARCHING ]\n";

cout<<"===================================================\n\n";

cout<<"| 1. Sequential Search |\n";

cout<<"| 2. Binary Search | \n";

cout<<"| 3. Keluar | \n";

cout<<"\n Pilihan [1-3] : ";cin>>pil; cout<<"————————————————–\n";

switch(pil){

case 1:sequential();

cout<<"\n tekan sembarang tombol untuk kembali ke menu\n";

break;

case 2:binary();

cout<<"\n tekan sembarang tombol untuk kembali ke menu\n";

break;

}

getch(); }



while(pil != 3);

cout<<"tekan sembarang tombol untuk keluar\n";

getch();

}

}





















//-----------------------------------------------

int main()

{

char kode,kodea;

int x;

clrscr;

printf("==========================*****==========================\n");

printf("_________________________PROGRAM_________________________\n");

printf("^^^^^^__MENU UTAMA PROGRAM SORTING DAN SEARCHING__^^^^^^ \n");

printf("NAMA : NANANG SUPARNO \n");

printf("NIM : 12108733 \n");

printf(" \t 1. SORTING \n");

printf(" \t 2. SEARCHING \n");

printf("==========================*****==========================\n");



cout<<" Masukan Pilihan[1 / 2] :";cin>>kode; if(kode=='1') { sorting(); } else if(kode=='2') { searching (); } else { kosong(); } cout<<endl<<endl; getch(); return 0; }
semoga bermanfaat

Leave a Reply

Subscribe to Posts | Subscribe to Comments

- Copyright © CATATANKUDesigned by - Railimis -