Anda di halaman 1dari 21

Nama : Made Ayu Dusea Widyadara

NPM : 09.1.03.02.0567/P
Kelas : 1C

ALGORITMA
1. Algoritma, Flowchart, dan Program untuk mengetahui apakah bilangan tersebut adalah bilangan genap atau
bilangan ganjil.
Algoritma
1. Mulai 6. Maka bil adalah bil_genap
2. Deklarasikan bil 7. Selain itu
3. Masukkan nilai bil 8. Bil adalah bil_ganjil
4. Apakah bil termasuk bil_genap? 9. Tampilkan hasil
5. Jika bil mod 2 == 0 10. Selesai

Flowchart

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

void main(){
clrscr();
int n;
printf("masukan bilangan =");scanf("%d",&n);
if(n%2==0){
printf("bilangan genap");
}
else
{
printf("bilangan ganjil");
}
getch();
}
Nama : Made Ayu Dusea Widyadara
NPM : 09.1.03.02.0567/P
Kelas : 1C

2. Menentukan bilangan terbesar dari 3 buah bilangan yang diinputkan


Algoritma:
(1) baca bilangan 1
(2) baca bilangan 2
(3) bandingkan bilangan 1 dan bilangan 2, kita ambil yang lebih besar, jika kedua bilangan tersebut
sama besar, dapat kita ambil bilangan 1, dan sebut bilangan tersebut MAX
(4) baca bilangan 3
(5) bandingkan MAX dengan bilangan 3, dan pilih yang lebih besar, jika keduanya sama besar, pilih
MAX dan sebut bilangan tersebut MAX.
(6) keluarkan sebagai output MAX

Read(Bil1,Bil2,)
If Bil1 >= Bil 2 then
MAX = Bil1
Else MAX = Bil2
Read (Bil3)
If Bil3 >= MAX then
MAX = Bil3
Write (MAX)
Nama : Made Ayu Dusea Widyadara
NPM : 09.1.03.02.0567/P
Kelas : 1C

3. Bilangan prima
Deklarasi variable FAKTOR = 0.
Masukkan bilangan bulat positif BILANGAN.
Proses looping A=1 sampai dengan BILANGAN:
Jika BILANGAN modulus A sama dengan 0, tambah 1 nilai variabel FAKTOR.
Lanjutkan looping.
Jika variabel FAKTOR = 2, cetak Bilangan Prima. Jika tidak, cetak Bukan Bilangan Prima.
Selesai.

#include<stdio.h>
main()
{
int bilangan, faktor=0, a;

printf("Masukkan bilangan bulat positif: ");


scanf("%d", &bilangan);

for (a=1; a<=bilangan; a++)


{
if (bilangan%a == 0)
{
faktor++;
}
}

if (faktor == 2)
{
printf("%d adalah Bilangan Prima.", bilangan);
}
else
{
printf("%d bukan Bilangan Prima.", bilangan);
}
getch();
}
Nama : Made Ayu Dusea Widyadara
NPM : 09.1.03.02.0567/P
Kelas : 1C

Macam-macam sorting
Sorting adalah proses menyusun elemen elemen dengan tata urut tertentu dan proses tersebut terimplementasi
dalam bermacam aplikasi. Kita ambil contoh pada aplikasi perbankan. Aplikasi tersebut mampu menampilkan
daftar account yang aktif.
Hampir seluruh pengguna pada sistem akan memilih tampilan daftar berurutan secaraascending demi kenyamanan
dalam penelusuran data.
Beberapa macam algoritma sorting telah dibuat karena proses tersebut sangat mendasar dan sering digunakan. Oleh
karena itu, pemahaman atas algoritma algoritma yang ada sangatlah berguna.

1. Selection Sort (Ascending):


Pengurutan dilakukan dengan memilih elemen terbesar dan menempatkan pada posisinya,
kemudian mencari element terbesar berikutnya dan menempatkan pada tempatnya, dan
seterusnya.
Proses pengurutan dengan menggunakan metode selection sort secara terurut naik adalah :

1. Mencari data terkecil dari data pertama sampai data terakhir, kemunian di tukar posisinya dengan data
pertama.
2. mencari data terkecil dari data kedua sampai data terakhir, kemudian di tukar dengan posisinya dengan data
kedua.
3. mencari data terkecil dari data ketiga sampai data terakhir, kemudian di tukar posisinya dengan data ketiga
4. dan seterusnya sampai semua data turut naik. apabila terdapat n buah data yang akan di urutkan, maka
membutukan (n - 1) langkah pengurutan, dimana data terakhir yaitu data ke-n tidak perlu di urutkan karena
hanya tinggal satu satunya.

Contoh:
Nama : Made Ayu Dusea Widyadara
NPM : 09.1.03.02.0567/P
Kelas : 1C
Nama : Made Ayu Dusea Widyadara
NPM : 09.1.03.02.0567/P
Kelas : 1C

2. Bubble Sort
Konsep Buble Sort
Metode pengurutan gelembung (Bubble Sort) diinspirasikan oleh gelembung sabun yang berada dipermukaan air.
Karena berat jenis gelembung sabun lebih ringan daripada berat jenis air, maka gelembung sabun selalu terapung ke
atas permukaan. Prinsip di atas dipakai pada pengurutan gelembung.

Bubble sort (metode gelembung) adalah metode/algoritma pengurutan dengan dengan cara melakukan penukaran
data dengan tepat disebelahnya secara terus menerus sampai bisa dipastikan dalam satu iterasi tertentu tidak ada
lagi perubahan. Jika tidak ada perubahan berarti data sudah terurut. Disebut pengurutan gelembung karena masing-
masing kunci akan dengan lambat menggelembung ke posisinya yang tepat

contoh kasus bubble sort


Nama : Made Ayu Dusea Widyadara
NPM : 09.1.03.02.0567/P
Kelas : 1C
Nama : Made Ayu Dusea Widyadara
NPM : 09.1.03.02.0567/P
Kelas : 1C
Nama : Made Ayu Dusea Widyadara
NPM : 09.1.03.02.0567/P
Kelas : 1C

3. Metode Penyisipan Langsung (Straight Insertion Sort) / Insertion sort


Ilustrasi :
Data dicek satu per satu mulai dari yang kedua sampai dengan yang terakhir. Apabila
ditemukan data yang lebih kecil daripada data sebelumnya, maka data tersebut disisipkan
pada posisi yang sesuai. Akan lebih mudah apabila membayangkan pengurutan kartu.
Pertama-tama anda meletakkan kartu-kartu tersebut di atas meja, kemudian melihatnya
dari kiri ke kanan. Apabila kartu di sebelah kanan lebih kecil daripada kartu di sebelahkiri, maka ambil kartu tersebut
dan sisipkan di tempat yang sesuai.
Contoh:
Nama : Made Ayu Dusea Widyadara
NPM : 09.1.03.02.0567/P
Kelas : 1C
Nama : Made Ayu Dusea Widyadara
NPM : 09.1.03.02.0567/P
Kelas : 1C

4. Metode Penggabungan (Merge Sort)


Metode penggabungan biasanya digunakan pada pengurutan berkas. Prinsip dari
metode penggabungan sebagai berikut : mula-mula diberikan dua kumpulan data yang
sudah dalam keadaan urut. Kedua kumpulan data tersebut harus dijadikan satu table
sehingga dalam keadaan urut.
Contoh:
Nama : Made Ayu Dusea Widyadara
NPM : 09.1.03.02.0567/P
Kelas : 1C

5. Quick Sort
Algoritma sortir yang efisien yang ditulis oleh C.A.R. Hoare pada 1962. Dasar strateginya adalah memecah dan
menguasai. Quicksort dimulai dengan menscan daftar yang disortir untuk nilai median. Nilai ini, yang disebut
tumpuan (pivot), kemudian dipindahkan ke satu sisi pada daftar dan butir-butir yang nilainya lebih besar dari
tumpuan di pindahkan ke sisi lain.
Contoh
Nama : Made Ayu Dusea Widyadara
NPM : 09.1.03.02.0567/P
Kelas : 1C
Nama : Made Ayu Dusea Widyadara
NPM : 09.1.03.02.0567/P
Kelas : 1C

6. Metode Shell (Shell Sort)


Metode ini disebut juga dengan metode pertambahan menurun (diminishing
increment). Metode ini dikembangkan oleh Donald L. Shell pada tahun 1959, sehingga
sering disebut dengan Metode Shell Sort. Metode ini mengurutkan data dengan cara
membandingkan suatu data dengan data lain yang memiliki jarak tertentu, kemudian
dilakukan penukaran bila diperlukan
Contoh:
Nama : Made Ayu Dusea Widyadara
NPM : 09.1.03.02.0567/P
Kelas : 1C
Nama : Made Ayu Dusea Widyadara
NPM : 09.1.03.02.0567/P
Kelas : 1C

7. Radix sort
Ide dasar dari metode Radix sort ini adalah
mengkategorikan data-data menjadi sub kumpulan
subkumpulan data sesuai dengan nilai radix-nya,
mengkonkatenasinya, kemudian
mengkategorikannya kembali berdasar nilai radix
contoh:
Nama : Made Ayu Dusea Widyadara
NPM : 09.1.03.02.0567/P
Kelas : 1C
Nama : Made Ayu Dusea Widyadara
NPM : 09.1.03.02.0567/P
Kelas : 1C
Nama : Made Ayu Dusea Widyadara
NPM : 09.1.03.02.0567/P
Kelas : 1C
Nama : Made Ayu Dusea Widyadara
NPM : 09.1.03.02.0567/P
Kelas : 1C

Ilustrasi sorting

Ilustrasi searching
Nama : Made Ayu Dusea Widyadara
NPM : 09.1.03.02.0567/P
Kelas : 1C

Ilustrasi knapsack

Anda mungkin juga menyukai