- Back to Home »
- trik »
- sorting dan searching C++
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; }
#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; }