Membuat Program Algoritma Brute Force 2 (Pencarian, Sort Bilangan) Menggunakan C-Free/Turbo C++
Assalamu’alaikum…
Dalam
Pembahasan sebelumnya saya telah memberikan contoh program Algoritma Brute Force Pencarian Index. Kali ini, saya ingin memberikan sedikit pengetahuan tentang Membuat Program Algoritma Brute Force 2 (Pencarian
Bilangan, Sorting Bilangan, Perkalian Matrix) Menggunakan C-free atau Turbo C++.
Disini saya akan memberikan Listing Program, Dan Logika Programnya +
Output-nya, oke deh langsung saja ya disimak.. :
1. Listing Program :
#include<stdio.h>
#include<conio.h>
#include<iostream.h>
void prima (),bsort(),kalimatriks();
main() {
start :
int x;
clrscr();
printf ("\n \t Algoritma Brute Force \n");
printf ("\n ==========================================");
printf ("\n \t 1. PencarianBilangan Prima");
printf ("\n \t 2. Sorting Bilangan");
printf ("\n \t 3. PerkalianMatriks");
printf ("\n \t 4. Exit ");
printf ("\n ========================================= \n");
printf ("\n MasukkanPilihan (1-4) : ");
scanf ("%d",&x);
switch(x) {
case 1 : prima ();
goto start;
case 2 : bsort();
goto start;
case 3 : kalimatriks();
goto start;
case 4 : return 0;
default :clrscr();
printf("\n \n \n \n \n \n \t \t \t Anda Salah memasukkan Input");
printf("\n \t \t Program Akan DirestartSetelahAndaMenekanTombol Enter");
getch();
goto start; }}
void prima () {
intbil,j;
clrscr();
printf ("\t \t \t PencarianBilangan Prima \n \n \n");
printf ("Masukkan Data Yang InginDiinput: ");
scanf("%d",&bil);
for(j=2;j<=bil;j++) {
if ((j%2>0)&&(j%3>0)&&(j%5>0)&&(j%7>0) || (j==2)||(j==3)||(j==5)||(j==7))
printf ("%i ",j); }
getch(); }
voidbsort() {
inti,j,temp,n,bil[100];
clrscr();
printf ("\t \t \t Sorting Bilangan \n \n \n" );
printf ("Masukkanjumlahbilangan: " );
scanf ("%d",&n);
for(i=0;i<n;i++) {
printf ("Bilanganke-%d \t: ",i+1);
scanf ("%d",&bil[i]); }
printf ("\n");
for(i=0;i<n-1;i++) {
for(j=n-1;j>i;j--) {
if (bil[i] >bil[j]) {
temp = bil[i];
bil[i] = bil[j];
bil[j] = temp; } } }
printf ("Sorting:");
for(i=0;i<n;i++) {
printf ("%d",bil[i]);
if (i!= n-1) {
printf (","); } }
getch(); }
voidkalimatriks() {
inti,j,k,temp,ordo,ma[10][10],mb[10][10],mc[10][10];
clrscr();
printf ("\t \t \t PerkalianMatriks \n \n \n");
printf ("MasukkanOrdoMatriks: ");
scanf ("%d", &ordo);
printf ("Matriks A: ");
for(i=0;i<ordo;i++) {
for(j=0;j<ordo;j++) {
gotoxy((j+1)*5,i+6);
scanf ("%d", &ma[i][j]); } }
printf ("\n");
printf ("Matriks B: ");
for(i=0;i<ordo;i++) {
for(j=0;j<ordo;j++) {
gotoxy((j+1)*5,i+8+ordo);
scanf ("%d", &mb[i][j]); } }
for(i=0;i<ordo;i++) {
for(j=0;j<ordo;j++) {
temp = 0;
for(k=0;k<ordo;k++) {
temp += ma[i][k] * mb[k][j]; }
mc[i][j] = temp; } }
printf ("\n \n");
printf ("HasilMatriks A * Matriks B: ");
for(i=0;i<ordo;i++) {
for(j=0;j<ordo;j++) {
gotoxy((j+1)*5,i+11+ordo*2);
printf ("%d",mc[i][j]); } }
getch(); }
#include<conio.h>
#include<iostream.h>
void prima (),bsort(),kalimatriks();
main() {
start :
int x;
clrscr();
printf ("\n \t Algoritma Brute Force \n");
printf ("\n ==========================================");
printf ("\n \t 1. PencarianBilangan Prima");
printf ("\n \t 2. Sorting Bilangan");
printf ("\n \t 3. PerkalianMatriks");
printf ("\n \t 4. Exit ");
printf ("\n ========================================= \n");
printf ("\n MasukkanPilihan (1-4) : ");
scanf ("%d",&x);
switch(x) {
case 1 : prima ();
goto start;
case 2 : bsort();
goto start;
case 3 : kalimatriks();
goto start;
case 4 : return 0;
default :clrscr();
printf("\n \n \n \n \n \n \t \t \t Anda Salah memasukkan Input");
printf("\n \t \t Program Akan DirestartSetelahAndaMenekanTombol Enter");
getch();
goto start; }}
void prima () {
intbil,j;
clrscr();
printf ("\t \t \t PencarianBilangan Prima \n \n \n");
printf ("Masukkan Data Yang InginDiinput: ");
scanf("%d",&bil);
for(j=2;j<=bil;j++) {
if ((j%2>0)&&(j%3>0)&&(j%5>0)&&(j%7>0) || (j==2)||(j==3)||(j==5)||(j==7))
printf ("%i ",j); }
getch(); }
voidbsort() {
inti,j,temp,n,bil[100];
clrscr();
printf ("\t \t \t Sorting Bilangan \n \n \n" );
printf ("Masukkanjumlahbilangan: " );
scanf ("%d",&n);
for(i=0;i<n;i++) {
printf ("Bilanganke-%d \t: ",i+1);
scanf ("%d",&bil[i]); }
printf ("\n");
for(i=0;i<n-1;i++) {
for(j=n-1;j>i;j--) {
if (bil[i] >bil[j]) {
temp = bil[i];
bil[i] = bil[j];
bil[j] = temp; } } }
printf ("Sorting:");
for(i=0;i<n;i++) {
printf ("%d",bil[i]);
if (i!= n-1) {
printf (","); } }
getch(); }
voidkalimatriks() {
inti,j,k,temp,ordo,ma[10][10],mb[10][10],mc[10][10];
clrscr();
printf ("\t \t \t PerkalianMatriks \n \n \n");
printf ("MasukkanOrdoMatriks: ");
scanf ("%d", &ordo);
printf ("Matriks A: ");
for(i=0;i<ordo;i++) {
for(j=0;j<ordo;j++) {
gotoxy((j+1)*5,i+6);
scanf ("%d", &ma[i][j]); } }
printf ("\n");
printf ("Matriks B: ");
for(i=0;i<ordo;i++) {
for(j=0;j<ordo;j++) {
gotoxy((j+1)*5,i+8+ordo);
scanf ("%d", &mb[i][j]); } }
for(i=0;i<ordo;i++) {
for(j=0;j<ordo;j++) {
temp = 0;
for(k=0;k<ordo;k++) {
temp += ma[i][k] * mb[k][j]; }
mc[i][j] = temp; } }
printf ("\n \n");
printf ("HasilMatriks A * Matriks B: ");
for(i=0;i<ordo;i++) {
for(j=0;j<ordo;j++) {
gotoxy((j+1)*5,i+11+ordo*2);
printf ("%d",mc[i][j]); } }
getch(); }
2. Logika Program
#include<stdio.h>
=> Berfungsi sebagai “#include”
memasukkan file header dalam source code, “stdio.h” untuk menggunakan fungsi standar input dan output.
#include<conio.h>
=> Berfungsi sebagai “conio.h”
untuk menggunakan fungsi getch, clrscr, berserta mengontrol input dan output .
#include<iostream.h>
=> Berfungsi sebagai
“iostream.h”untuk berkas-berkas yang berisi deklarasi untuk berbagai fungsi yang dibutuhkan oleh perangkat lunak, atau
class-class yang dibutuhkan.
void prima (),bsort(),kalimatriks();
=> Berfungsi sebagai
pemberian nama class yang akan digunakan nantinya.
main() {
start :
int x;
clrscr();
printf ("\n \t Algoritma Brute Force
\n");
printf ("\n ==========================================");
printf ("\n \t 1. PencarianBilangan
Prima");
printf ("\n \t 2. Sorting Bilangan");
printf ("\n \t 3. PerkalianMatriks");
printf ("\n \t 4. Exit ");
printf ("\n
========================================= \n");
printf ("\n MasukkanPilihan (1-4) :
");
scanf ("%d",&x);
=> Berfungsi sebagai
“start:” bisa disebut nama class yang akan dipanggil nantinya, pada saat
pemilihan menu. “%d”berfungsi mengambil angka
yang bersifat desimal, yang akan disimpan ke dalam variable “x”
switch(x) {
case 1 : prima
();
goto start;
case 2 : bsort();
goto start;
case 3 :
kalimatriks();
goto start;
case 4 : return
0;
default :clrscr();
printf("\n \n \n \n \n \n \t \t \t Anda Salah memasukkan Input");
printf("\n \t \t Program Akan DirestartSetelahAndaMenekanTombol
Enter");
getch();
goto start; }}
=> Berfungsi sebagai “switch (x)” akan menggunakan isi dari
variable “x” yang telah kita isi tadi, dan akan berpindah sesuai nomor
panggilan class yang kita inginkan dengan perintah “goto nama_kelas;”. Dan “return
0;” untuk terminated program tersebut.
void prima () {
intbil,j;
clrscr();
printf ("\t \t \t PencarianBilangan Prima
\n \n \n");
printf ("Masukkan Data Yang InginDiinput:
");
scanf("%d",&bil);
for(j=2;j<=bil;j++) {
if
((j%2>0)&&(j%3>0)&&(j%5>0)&&(j%7>0) ||
(j==2)||(j==3)||(j==5)||(j==7))
printf ("%i
",j); }
getch(); }
=> Berfungsi sebagai
“void prima()” memberi nama class. Menurut perintah di atas ini adalah angka
akan dimulai dari “2 3 5 7 ...”dan selalu
bersifat integer.
voidbsort() {
inti,j,temp,n,bil[100];
clrscr();
printf ("\t \t \t Sorting Bilangan \n \n
\n" );
printf ("Masukkanjumlahbilangan: " );
scanf ("%d",&n);
for(i=0;i<n;i++) {
printf ("Bilanganke-%d \t: ",i+1);
scanf ("%d",&bil[i]); }
printf ("\n");
for(i=0;i<n-1;i++) {
for(j=n-1;j>i;j--) {
if (bil[i]
>bil[j]) {
temp = bil[i];
bil[i] = bil[j];
bil[j] =
temp; } } }
printf ("Sorting:");
for(i=0;i<n;i++) {
printf ("%d",bil[i]);
if (i!= n-1) {
printf
(","); } }
getch(); }
=> Berfungsi sebagai
“void bsort()” memberi nama class bsort. Di sini variable bersifat integer
semua. Dan yang telah diberikan tanda “fungsi” adalah inti dari pencarian
bilangan pengurutan dengan membandingkan nilai yang diturunkan dari yang telah
kita masukkan sebelumnya di atas. Setelah
itu baru diurut kan sesuai yang kecil pertama.
voidkalimatriks() {
inti,j,k,temp,ordo,ma[10][10],mb[10][10],mc[10][10];
clrscr();
printf ("\t \t \t PerkalianMatriks \n \n
\n");
printf ("MasukkanOrdoMatriks: ");
scanf ("%d", &ordo);
printf ("Matriks A: ");
for(i=0;i<ordo;i++) {
for(j=0;j<ordo;j++) {
gotoxy((j+1)*5,i+6);
scanf ("%d",
&ma[i][j]); } }
printf ("\n");
printf ("Matriks B: ");
for(i=0;i<ordo;i++) {
for(j=0;j<ordo;j++) {
gotoxy((j+1)*5,i+8+ordo);
scanf ("%d",
&mb[i][j]); } }
for(i=0;i<ordo;i++) {
for(j=0;j<ordo;j++) {
temp = 0;
for(k=0;k<ordo;k++) {
temp += ma[i][k]
* mb[k][j]; }
mc[i][j] = temp;
} }
printf ("\n \n");
printf ("HasilMatriks A * Matriks B:
");
for(i=0;i<ordo;i++) {
for(j=0;j<ordo;j++) {
gotoxy((j+1)*5,i+11+ordo*2);
printf
("%d",mc[i][j]); } }
getch(); }
=> Berfungsi sebagai “void
kalimatriks()” memberi nama variable. Fungsi dari sintax di atas ini berfungsi
untuk mengkalikan matriks A dengan matrix B dan jumlah ordo akan sama, misal
kita masukkan “ordonya 3 = baris 3 * kolom 3”. Fungsi yang sangat harus diperhatikan adalah fungsi for yang bersarang.
3. Output Program
Tampilan menu :
Prima :
Sorting Bilangan :
Perkalian matriks :
Mungkin itu saja penjelasan Mengenai Membuat Program Algoritma Brute Force 2 (Pencarian Bilangan, Sorting
Bilangan, Perkalian Matrix) Menggunakan C-free atau Turbo C++. apa yang
telah saya pelajari di Lab Tehnik Informatika Gunadarma Mata Kuliah Perancangan Analisis Algoritma, semoga
bermanfaat.. terima kasih.. ^^
Wassalamu'alaikum...
Thanks To : Tio, dan Subki
Download C-Free (Pro) : Disini Atau Disini
Wassalamu'alaikum...
Thanks To : Tio, dan Subki
Download C-Free (Pro) : Disini Atau Disini
Ini sepertinya bahasa pemograman ya mas, agak sulit juga dipahami kalau nggak punya basic IT yang matang. Terimakasih mas faris atas share nya ya :)
ReplyDeletebener banget mba, ini memang bahasa pemrograman C, hehehehee..
Deleteterima kasih atas kunjungannya ya mba... ^^
saya cuma bisa vb doang gan.. c++ blom bisa caranya
ReplyDeletesaya juga masih belajar ko kang.. hehehe.. ^^
Deleteterima kasih atas kunjungannya ya.. ^^
Rumit Mas. Dulu saya tahunya print f untuk mencetak, for dan teman-temannya merupakan pengulangan. Ini juga saya tahu dari belajar PHP dulu.
ReplyDeleteyaps benar banget mas print f itu untuk mencetak, hehehe..
Deletesaya juga masih belajar mas nedrik.. ^^
terima kasih atas kunjungannya ya.. ^^
kalo souce codenya yg perkalian matrix ada ga ka?
ReplyDeletepada source kode diatas sudah tersedia perkalian matrix ko, coba deh liat lagi.. ^^ cuma kalau yang perkalian matrix saja belum ada nih, maaf yah.. ^^
Deleteterima kasih atas kunjungannya.. ^^
info baru nich buat saya, harus membaca dulu dengan cermat agar ngerti :)
ReplyDeletemakasih sharingnya mas ^^
sama sama mba, semoga bermanfaat.. ^^
Deleteterima kasih atas kunjungannya.. ^^
mas, kenapa ya fungsi gotoxy gak bisa dideklarasikan, kira kira ada ga ya fungsi lainnya tapi memiliki kegunaan yang sama? mohon penjelasannya ya ^^
ReplyDeleteyang ane tau ya gan, fungsi gotoxy itu menempatkan koordinat kursor pada layar gitu deh pokoknya, jadi kursor itu akan secara otomatis ditemptakan di gotoxy yang sobat buat
Deletekalo kegunaan yang sama, kata temen ane pake "spasi" aja, hahaha
terima kasih atas kunjungannya ^^
good job gan,artikel ini sangat menarik sekali untuk disimak,keren deh ,,tentunya kami mempunyai wawasan baru yang kami dapatkan setelah membacanya,thanx yah :-)
ReplyDeletealhamdulillah kalau seperti itu gan ^^, jangan lupa disharing ya jika memang bermanfaat ^^
Deleteterima kasih atas kunjungannya ^^
Gi mana program.y kalau perkalian 1 smpai 10?
ReplyDeleteMas kalo yg sorting nya ada step by stepnya gimana ya? Ga tiba² langsung ke sorting gitu mas
ReplyDelete