Design Pemrograman

 
Ada 4 tipe dasar konstruksi algoritma, yaitu: 
  1. Assignment 
  2. Sequence 
  3. Selection 
  4. Repetition 
Assignment 
memberikan nilai pada indetifier atau variabel. Variabel adalah tampungan suatu nilai data, contoh variabel panjang menampung nilai panjang sebuah persegi. 

Panjang ← 15        artinya variabel Panjang diberi nilai 15 

Didalam Assignment terdapat 3 macam perlakuan terhadap nilai data, yaitu: 
  • Updating value: memperbarui isi variabel, contoh: Panjang ← Panjang + 1
    Isi Variabel panjang diperbarui dengan menambahkan angka 1 pada nilai sebelumnya.
  • Copying value: meng-copy isi suatu variabel ke variabel lain, contoh: Lebar ← Panjang
    Variabel Lebar diisi value yang sama dengan variabel Panjang.
  • Swap value: menukar isi 2 variabel, disini kita perlu menggunakan variabel penampung lainnya.
    Jika kita akan menukar nilai variabel Lebar dan Panjang maka:
    Tampung ← Lebar       //nilai variabel Lebar di-copy ke variabel Tampung
    Lebar ← Panjang       //nilai variabel Panjang di-copy ke variabel Lebar
    Panjang ← Tampung       //nilai variabel Tampung di-copy ke variabel Panjang

Sequence 
sejumlah langkah (baris perintah) yang dilakukan satu demi satu secara urut. Dalam design algoritma sequence tidak ada kondisi yang diuji atau langkah yang diulang. Contoh: program menghitung luas segitiga:
Pseudocode:
DECLARE Alas, Tinggi: INTEGER
DECLARE Luas : REAL

INPUT Alas, Tinggi
Luas ← Alas / 2 * Tinggi
OUTPUT Luas

Selection
adanya kondisi tertentu yang diuji. Contoh dalam menentukan jenis suatu bilangan:


Pseudocode:
DECLARE Bilangan : INTEGER

INPUT Bilangan

IF Bilangan MOD 2 = = 0 
     THEN
          OUTPUT "Bilangan Genap"
     ELSE
          THEN
               OUTPUT "Bilangan Ganjil"
ENDIF

Pada contoh diatas, yang merupakan kondisi untuk diuji adalah Bilangan MOD 2 = = 0. MOD adalah fungsi yang menghitung sisa pembagian. Bilangan MOD 2 berarti sisa pembagian bilangan : 2. 

Contoh: jika Bilangan = 5, maka Bilangan MOD 2 = 5 MOD 2
sisa bagi (5:2) = 1 jadi jika bilangan yang dimasukkan adalah 5 maka OUTPUT nya adalah "Bilangan Ganjil" karena Bilangan MOD 2 ≠ 0

Repetition 
sejumlah langkah (berupa baris-baris perintah) yang dilakukan secara berulang. Misalnya menghitung jumlah huruf dalam sebuah teks.




Pseudocode:
DECLARE Teks : STRING
DECLARE Indeks, JumlahHuruf : INTEGER

JumlahHuruf ← 0
OUTPUT "Masukkan teks campuran: "
INPUT Teks
FOR Indeks ← 1 TO LENGTH(Teks)
     IF UCASE(Teks[Indeks]) >= "A" AND UCASE(Teks[Indeks]) <= "Z"
          JumlahHuruf ← JumlahHuruf + 1
     ENDIF
ENDFOR
OUTPUT "Jumlah huruf : ",JumlahHuruf

Penjelasan Pseudocode diatas:
  1. Nilai awal JumlahHuruf = 0
  2. Tampilkan kalimat "Masukkan teks campuran:"
  3. Masukkan isi/ value variabel Teks
  4. Untuk nilai Indeks = 1 hingga Indeks = Panjang(Teks) ulang :
    • Jika huruf ke-Indeks pada Teks yang dijadikan huruf besar diantara "A" hingga "Z"
    • maka nilai variabel JumlahHuruf ditambah 1
  5. Tampilkan "Jumlah huruf: ", JumlahHuruf.
Penjelasan Flowchart diatas:
  1. Mulai
  2. JumlahHuruf diberi nilai awal 0
  3. Tampilkan kalimat "Masukkan teks campuran:"
  4. Masukkan isi/ value variabel Teks.
  5. Nilai Indeks diisi 1
  6. Apakah nilai Indeks <= Panjang(Teks)?
    • Jika Ya, 
      • Apakah huruf ke-Indeks pada Teks yang dijadikan huruf besar diantara "A" hingga "Z"
      • Jika Ya, maka nilai variabel JumlahHuruf ditambah 1
      • Nilai variabel Indeks ditambah 1
      • Kembali ke langkah-6
    • Jika Tidak, lanjutkan ke lankah ke-7
  7. Tampilkan "Jumlah huruf: ", JumlahHuruf.

Ada 2 tipe perulangan, yaitu:
  • Pre-Condition (kondisi perulangan di depan), menggunakan: WHILE
  • Post-Condition (kondisi perulangan di akhir), menggunakan: REPEAT

Latihan Soal:
Buatlah rancangan program dalam bentuk pseudocode dan flowchart untuk memeriksa apakah keyword yang dimasukkan sudah benar sesuai kriteria sebagai berikut:
  1. Panjang keyword = 15 karakter
  2. Sebanyak 5 karakter pertama harus terdiri dari angka "0" hingga "9"
  3. Sebanyak 10 karakter lainnya harus terdiri dari huruf.
Jika keyword yang dimasukkan tidak sesuai kriteria maka akan ditampilkan pesan: "Keyword tidak sesuai"



Icon-1
Icon-2
Icon-3
Icon-4
Icon-5
 << Back

3 comments:

  1. bu, untuk yang repetition tidak paham bu

    ReplyDelete
  2. bu, caranya seleksi cuma 5 huruf/angka dari depan sama cuma 10 huruf/angka dari belakang untuk dicek apakah itu huruf atau angka gimana ya bu?

    ReplyDelete