NIM : 202025002
PRODI : TEKNIK KIMIA
Deskripsi :
1. Masukan panjang
2. Masukan lebar
3. Hitung keliling = 2 * panjang + 2 * lebar
4. Tampilkan keliling ke layar
2. Flowchart
Notasi Flowchart merupakan gambar atau bagan yang
menampilkan proses langkah-langkah dari suatu pemecahan masalah
dalam program. Gambar ini dinyatakan dalam simbol. Maka dari itu
setiap simbol menyatakan proses tertentu.
Simbol-simbol flowchart yang biasa dipakai adalah adalah simbol-
simbol flowchart standart yang di keluarkan oleh ANSI dan ISO
2
3. Pseudocode
Pseudocode adalah notasi algortima yang penulisannya menyerupai
bahasa pemrograman tingkat tinggi. Keuntungan menggunakan
pseudocode adalah kemudahan mentranslasi ke bahasa pemrograman
karena ada hubungan anatara bentuk dan isi pseudocode dengan bahasa
pemrograman.
Contoh penulisan notasi Pseudocode untuk menghitung keliling
persegi panjang :
Algoritma : Keliling_Persegi_Panjang
/* dimasukkan nilai panjang (p) dan lebar (l). Carilah dan cetak keliling
persegi panjang */
Deklarasi :
p, l, K = real
Deskripsi :
1. Start
2. Read ( p )
3. Read ( l )
4. K 2 * p + 2 * l
5. cout << “K”;
6. End
Tipe Bentukan
Tipe bentukan adalah tipe yang didefenisikan sendiri oleh
pemogram (user defined type data). Tipe bentukan di susun oleh satu
atau lebih tipe dasar. Ada 2 macam tipe bentukan :
Tipe dasar yang diberi nama tipe baru
Tipe terstruktur
3
2. Operator
Operator adalah simbol-simbol khusus yang digunakan untuk
mengoperasikan suatu nilai data .
Operator Aritmatika
Operator Relasi
Operator Bolean
Precendence
Asosiatif
Operator Logika
Lamban Lambang
3. Eksresi
Ekspresi adalah transformasi nilai menjadi keluaran yang
dilakukan melalui suatu perhitungan (komputasi). Ekspresi terdiri atas
operand dan operator, contoh ekspresi: “a + b”.Hasil Evaluasi dari
sebuah Ekpresi adalah nilai yang sesuai dengan type operand yang
dipakai
4. DEFINISI RUNTUNAN(SEQUENCE)
Sequence atau runtunan dalam struktur algoritma adalah bahwa
instruksi-insturksi dalam algoritma diproses secara beruntun langkah demi
langkah dari awal sampai akhir dimulai dari langkah pertama hingga langkah
terakhir. Harus selalu diingat, bahwa Runtunan ini juga berlaku di dalam
bahasa pemrograman,
4
Contoh:
- Masukan Panjang8cm
- Masukan Lebar3cm
- Hitung luas persegi panjang, luasPanjang*Lebar
- Cetak luas persegi panjang
5. DEFINISI PEMILIHAN(SELECTION)
Pada umumnya instruksi algoritma setidaknya akan mengandung pemilihan,
atau selection, instruksi ini akan muncul apabila ada kasus yang memiliki 2
atau lebih alternatif penyelesaian.
Contoh :
Contoh pseudocode:
{ Judul }
Membandingkan_dua_nilai
{ Kamus }
a, b: Integer
keterangan: String
{ Algoritma }
Input(a, b);
{ Pemilihan - 2 Kasus }
5
If a > b Then
keterangan <- 'A lebih besar dari B'
Else
keterangan <- 'B lebih besar dari A'
Output(keterangan)
6. DEFINISI PENGULANGAN(REPETITION)
Struktur dasar algoritma yang ketiga adalah pengulangan atau repitition,
artinya kasus-kasus pemecahan masalah dalam algoritma maupun bahasa
pemrograman pada kenyataannya tidak akan lepas dari kasus-kasus yang
membutuhkan pengulangan. Di algoritma sendiri untuk mengatasi kasus
pengulangan data, memiliki intruksi tersendiri, dengan intruksi tersebut
pengulangan akan lebih mudah ditulis secara singkat dan praktis daripada
harus di tulis satu-persatu.
Contoh Pengulangan :
Dalam kasus di algoritma yang membuat sebuah data harus diulang
beberapa kali, misal untuk kasus mencetak angka 1 sampai 5.
Penyelesaian pengulangan sebenarnya sangat mudah, bisa saja kita tulis satu
persatu misal;
Penjelasan Contoh :
Membuat intruksi pengulangan dengan menuliskannya satu persatu
tentunya bukanlah cara praktis, jika hanya 5 baris mungkin saja bisa dibuat
secara manual, ditulis satu-satu, namun bagaimana jika yang harus diulang
sebanyak 1.000 (seribu baris misalnya), saya yakin anda akan kerepotan
menuliskannya.
Oleh karena itu karena kerap sekali pengulangan ditemukan di kasus-
kasus pemecahan masalah terkomputerisasi, maka di algoritma dikenal
struktur pengulangan yang akan lebih memudahkan dan mempercepat
penulisan proses pengulangan secara praktis dan cepat. (pengulangan ini
biasanya dipelajari di materi algoritma Looping/ pengulangan).
6
fungsi. Modul yang sudah dirancang dapat dipasang ke dalam program lain
yang membutuhkan Teknik pemrograman modular (procedure dan function)
Modularisasi memberikan dua keuntungan
Contoh :
8. FUNGSI / FUNCTION
Fungsi (Function) adalah suatu program terpisah dalam blok sendiri yang
berfungsi sebagai sub-program (modul program) yang merupakan sebuah
program kecil untuk memproses sebagian dari pekerjaan program utama.
Fungsi digunakan untuk mengumpulkan beberapa perintah yang sering
dipakai dalam sebuah program. Fungsi juga bisa diartikan sebagai bagian
dari program yang dapat digunakan kembali. contoh kasus struktur algoritma
yang melibatkan fungsi
7
Algoritma Menghitung persegi panjang tanpa Fungsi
algoritma hitung_persegi_panjang;
DEKLARASI
panjang : integer
lebar : integer
luas : integer
ALGORITMA:
lebar 5
panjang 10
luas panjang * lebar
write(luas)
8
nilai [9]:= 106 ; artinya kita memasukan nilai 106 kedalam indeks 1. dst..
Bagaimana jika memasukan nilai kedelam indeks yang tidak ada di dalam
memori array, maka akana out of range, karena nilai yagn di input tidak ada
no indeksnya.
9
{
int data[8] = {8,10,6,
-
2,11,7,1,100};
int cari;
int flag=0;
printf(“masukkan data yang ingin dicari = “);scanf(“%d”,&cari);
for(int i=0;i<8;i++)
{
if(data[i] == cari) flag=1;
}
if(flag==1) printf(“Data ada
!
\
n”);
else printf(“Data tidak ada!
\
n”);
getch();
return 1;
}
Algoritma Pengurutan
1. Bubble Sort
Bubble sort adalah salah satu metodepengurutan exchanging yang
bersifat langsung dan termasuk jenis pengurutan yang paling sederhana.
Nama bubble sort sendiri berasal dari sifat nilai elemen terbesar yang
selalu naik ke atas (ke akhir dari list) seperti gelembung udara(bubble).
2. Insertion
Algoritma insertion sort adalah sebuah algoritma sederhana yang cukup
efisien untuk mengurutkan sebuah list yang hampir terurut. Algorima
ini juga biasa digunakan sebagai bagian dari algoritma yang lebih
canggih. Cara kerja algoritma ini adalah dengan mengambil elemen list
satu-per-satu dan memasukkannya di posisi yang benar seperti
namanya.
3. Merge sort
Merge sort ini memanfaatkan sebuah fungsi merge dengan spesifikasi
mengurutkan 2 buah list yang elemen tiap list sudah terurut. Dengan ide
ini list yang akan diproses dibagi-bagi dulu menjadi list yang lebih kecil
hingga tingal satu elemen. Setelah itu digabung kembali dari dua list
menjadi satu, lalu digabung kembali terus sampai menjadi 2 list besar
yang setelah dimerge akan menghasilkan list yang sudah terurut.
10
Sorting jenis ini sangat berguna saat kita akan memproses jumlah
elemen yang sangat banyak.
4. Quick Sort
Quick sort merupakan divide and conquer algorithm. Algoritma ini
mengambil salah satu elemen secara acak (biasanya dari tengah) lalu
menyimpan semua elemen yang lebih kecil di sebelah kirinya dan
semua elemen yang lebih besar di sebelah kanannya. Hal ini dilakukan
secara rekursif terhadap elemen di sebelah kiri dan kanannya sampai
semua elemen sudah terurut.
11