Anda di halaman 1dari 11

NO.

1 PROGRAM DAN PENJELASAN

#include<stdio.h>//memasukan library input output

int main(){ //bagan fungsi utama

int s, t, u, max, my, z[255];//deklarasikan s, t, u, max, my, z[255]

FILE *in, *ot;//membuat pointer

in = fopen("databubble.txt","r");//pointer untuk membaca file databubble

ot = fopen("bubblesort.txt", "w");//pointer untuk membuat file bubblesort

for(t=0;fscanf(in, "%d,", &z[t])!=EOF;t++)//perulangan untuk membaca isi file dan


memasukkan ke array t

fclose(in);//menutup pointer in

my = 0;//variabel my bernilai 0

for(s=t-1;s>0;s--,my++)//perulangan outer untuk menempatkan bilangan dengan


urutan akhir

for(u=0;u<s;u++)//perulangan inner untuk mencari bilangan terbesar

if(z[u]>z[u+1])//jika z ke s lebih keci dari z ke u

max = z[u];//maka, max sama dengan nilai z ke s


z[u] = z[u+1];//nilai z ke s sama dengan z ke u

z[u+1] = max;//nilai z ke u sama dengan data max

printf("Jumlah Loop = %d", my);//keluarkan jumlah loop dengan variabel my

for(s=0;s<t;s++)//perulangan untuk mencetak hasil urutan

if(s<=t-2)//jika belum array ke 1 dari akhir maka

fprintf(ot, "%d,", z[s]);//tuliskan array z ke a dengan koma (,)

else//jika sudah maka

fprintf(ot, "%d", z[s]);//tuliskan array ke s

fclose(ot);//menutup pointer ot

return 0;

}
SCREENSHOT SAAT PROGRAM BERJALAN NO.1
SCREENSHOT HASIL NOTEPAD NO. 1
FLOWCHART NO. 1
NO. 2 PROGRAM DAN PENJELASAN

#include<stdio.h>//memasukan library input output

int main()//membuat fungsi main

int s, t, u, min, my, z[255];//deklarasikan s, t, u, min, my, z[255]

FILE *in, *ot;//membuat pointer

in = fopen("dataselection.txt","r");//pointer untuk membaca file dataselection

ot = fopen("selectionsort.txt", "w");//pointer untuk membuat file selectionsort

for(t=0;fscanf(in, "%d,", &z[t])!=EOF;t++)//fungsi untuk membaca isi file dan


memasukkan ke array t

fclose(in);//menutup pointer in

my = 0;//variabel my bernilai 0

for(s=0;s<t-1;s++,my++)//perulangan outer untuk menempatkan bilangan


dengan urutan awal

for(u=s+1;u<t;u++)//perulangan inner untuk mencari bilangan terkecil

if(z[s]>z[u])//jika x ke a lebih kecil dari z ke u

min= z[s];//maka, min sama dengan nilai z ke s


z[s]= z[u];//nilai z ke a sama dengan z ke u

z[u]= min;//nilai z ke u sama dengan data min

printf("Jumlah Loop = %d", my);//outputkan jumlah loop dengan variabel my

for(s=0;s<t;s++)//perulangan untuk mencetak hasil urutan

if(s<=t-2)//jika belum array ke 1 dari akhir maka

fprintf(ot, "%d,", z[s]);//tuliskan array z ke s dengan koma (,)

else//jika sudah maka

fprintf(ot, "%d", z[s]);//tuliskan array ke s

fclose(ot);//menutup pointer ot

return 0;

}
SCREENSHOT SAAT PROGRAM BERJALAN NO. 2
SCREENSHOT HASIL NOTEPAD NO. 2
FLOWCHART NO. 2

Anda mungkin juga menyukai