Friday, April 29, 2011

Menentukan bilangan prima atau bukan

Sebelum kita membuat program untuk menentukan bilangan prima, kita harus tahu dulu apa bilangan prima itu. Untuk mengetahui bilangan prima, kita akan merujuk kepada Sifat-Sifat Operasi Himpunan. Lebih jelasnya mengenai bilangan prima : 
 
Jika p bilangan bulat, p tidak sama dengan 0 dan p tidak sama dengan 1, hanya mempunyai pembagi 1 dan p, maka p disebut bilangan prima. Bilangan bulat selain bilangan prima disebut bilangan komposit.
Contoh bilangan-bilangan  prima : 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, …. 
Contoh bilangan-bilangan komposit : 4, 6, 8, 9, 10, 12, 14, 15, 16, 18, 20, 21, 22, 24, 25, 26, 27, 28, 30, 32, 33, 34, 35, 36, … (Kuliah Aljabar Modern, oleh Don Tasman)

Memenuhi permintaan sahabat di Forum-AlgoritmaSTMIK, kita akan membuat program C++ untuk menentukan apakah bilangan yang kita input adalah bilangan prima atau bukan (Soal praktikum 5 nomor 4). Selengkapnya mengenai praktikum 1 sampai praktikum 6 silahkan ke sini.


#include "stdio.h"
#include "conio.h"
main()
{
 clrscr();
 int bil,jumlah,i;
 jumlah=0;
 printf("Samin MT Musa mencari bilangan prima\n");
 printf("Masukkan sebuah bilangan  : ");scanf("%d",&bil);
   for (i=1;i<=bil;i++)
   if (bil%i==0)
     jumlah++;
     if (jumlah==2)
        printf("%d adalah bilangan prima",bil);
     else
        printf("%d bukan bilangan prima",bil);
 getch();
}

Hasil eksekusi program :



Semoga bisa membantu.

Read More

Praktikum 1 sampai 6

Terinspirasi dari pertanyaan teman-teman pada Forum-AlgoritmaSTMIK dan terbatasnya waktu saya untuk membuka forum tersebut, maka saya membuat aplikasi kecil yang sangat sederhana hanya untuk membantu teman-teman yang kebingungan dengan tugas praktikum. Saya sadar dengan segala keterbatasan dan kekurangan saya dalam membuatnya, namun saya hanya berniat untuk membantu karena bagi saya percuma kita memiliki ilmu kalau ilmu tersebut tidak berguna bagi orang lain. Maka dengan ilmu yang sedikit ini saya ingin membantu dan berbagi (...ingatlah akhirat kata "WALI" dalam Tomat).

Sekarang kita langsung saja ke aplikasinya.
  • Saat pertama aplikasi dijalankan 

  • Setelah memilih materi praktikum yang diinginkan akan ditampilkan listing programnya

  • Screenshoot aplikasi dengan pilihan didalamnya. Jika tombol minimize diklik (tanda minus pada kontrol box pojok kanan atas jendela aplikasi) aplikasi akan diminimize ke system tray (perhatikan ikon aplikasi pada pojok kanan bawah). Pilihan ini juga terdapat pada popup menu saat menekan klik kanan pada jendela aplikasi. Keterangan ini saya berikan karena kemarin ada teman yang masih bingung menggunakannya. Bagi yang expert pasti sudah tahu menggunakannya.

Yang ingin mencobanya silahkan menghubungi saya pada saminmusa@gmail.com
Maklumlah belum punya file hosting.
Semoga membawa manfaat.

Read More

Wednesday, November 3, 2010

Menampilkan bilangan ganjil dari angka 1 s/d 100



Untuk menampilkan bilangan ganjil dari angka 1 sampai dengan angka 100 algoritmanya adalah sebagai berikut : 
Bilangan ganjil dari 1 sampai 100 = 1,3,5,7,9,…………,99
Catatan : bilangan apa saja yag dimod2=1 adalah bilangan ganjil
Untuk nilai I = 1 to 100 lakukan
      Jika nilai Imod2 = 1 maka
                        Cetak nilai



      Untuk programnya dalam bahasa pascal adalah :


uses crt;
var I: integer;
begin
   clrscr;
  for I:= 1 to 100 do
  begin
   if I mod 2= 1 then
       write(I:5);
end;
  Readln;
end.


        Hasilnya :



Read More

Saturday, October 23, 2010

Input Bilangan Ganjil atau Genap

Program ini digunakan untuk menentukan apakah bilangan yang diinput termasuk bilangan ganjil atau bilangan genap. Metode yang digunakan adalah metode pemilihan.

      uses crt;
      var
      bilangan : integer;
      begin
           clrscr;
           write('Masukan sebuah bilangan='); Readln(bilangan);
           if (bilangan mod 2)= 0 then
                writeln('Bilangan yang Anda input adalah bilangan genap')
           else
                writeln('Bilangan yang Anda input adalah bilangan ganjil');
           Readln;
      End.
Read More

Menampilkan bilangan kelipatan 3 dan 5 dari 1 s/d 30

Untuk menampilkan bilangan kelipatan 3 dan kelipatan 5 dari angka 1 sampai 30 dalam bahasa pascal adalah

uses crt;
var I,A,B: integer;
begin
  clrscr;
  A:= 3;
  B:= 5;
  for I:= 1 to 6 do
  begin
    write (A,B);
    A:= A+3;
    B:= B+5;
  end;
  Readln;
          End.
Read More

Menampilkan bilangan prima dari angka 1 s/d 20

Program untuk menampilkan bilangan prima yang dimulai dari angka 1 sampai dengan angka 20 algoritmanya adalah :
Bilangan prima dari angka 1 s/d 20 = 2,3,5,7,11,13,17,19
Bilangan prima adalah bilangan yang bisa dibagi dengan bilangan 1 dan bilangan itu sendiri.
2: 2 mod 1=0, 2 mod 2=0
3: 3 mod 1=0, 3 mod 2=0, 3 mod 3=0
4: 4 mod 1=0, 4 mod 2=0, 4 mod 3=1, 4 mod 4=0
      5: 5 mod 1=0, 5 mod 2=1, 5 mod 3=2, 5 mod 4=1, 5 mod 5=0

 Program dalam bahasa pascal adalah sebagai berikut :


Uses crt;
Var i, pembagi, jumlah0 : integer;
Begin
  clrscr;
  for i:=2 to 20 do
Begin
       jumlah0:=0;
       for pembagi :=1 to i do
       begin
         if i mod pembagi=0 then
            jumlah0:=jumlah0+1;
       end;
       if jumlah0=2 then
         write(i:5);
  end;
  readln;
End.


Hasilnya :

Read More

Menampilkan bilangan genap dari angka 1 s/d 50

Untuk menampilkan bilangan genap yang dimulai dari angka 1 sampai dengan angka 50, susunan algoritmanya adalah sebagai berikut : 
Bilangan genap dari 1 sampai 50 = 2,4,6,8,10,12,14,16,18, …… 50
Catatan : bilangan apa saja yag dimod2=0 adalah bilangan genap
Untuk nilai I = 1 to 50 lakukan
      Jika nilai Imod2 = 0 maka
                        Cetak nilai

      Untuk program dalam bahasa pascal adalah :


uses crt;
var I : integer;
begin
clrscr;
  for I:= 1 to 50 do
begin
    if I mod 2= 0 then
       write(I:5);
end;
  Readln;
                  end.

Hasilnya :

Read More

Menampilkan bilangan kelipatan 3 dari angka 1 s/d 20


Untuk menampilkan bilangan kelipatan 3 dari angka 1 sampai dengan angka 20, algoritmanya adalah :

Bilangan kelipatan 3 : 3,6,9,12,15,18,21,24 ... dst
Nilai diatas jika dimod3 hasilnya 0
3mod3 = 0       6mod3 = 0       9mod3 = 0
12mod3 = 0     15mod3 = 0
Untuk nilai i = 1 sampai 20 lakukan
Jika nilai i mod 3 = 0 maka
            cetak i


Untuk program dalam bahasa pascal adalah:


uses crt;
var i : integer;
begin
     clrscr;
     for i : = 1 to 20 do
     begin
     if i mod 3 = 0 then
          write(i:5);
     end;
     readln;
end.


Hasilnya : 
 
Read More

Friday, October 22, 2010

KONSEP DASAR PEMROGRAMAN PASCAL

1.1 Perkembangan Pascal
Pascal adalah bahasa tingkat tinggi yang orientasinya pada segala tujuan, dirancang oleh Prof. Niklaus Wirth dari Technical University di Zurich, Switzerland. Nama pascal diambil sebagai penghargaan terhadap Blaise Pascal, ahli matematik dan philosophi terkenal abad 17 dari Perancis.

1.2 Struktur Program Pascal
Struktur dari suatu program pascal terdiri dari sebuah judul program dan suatu blok program atau badan program. Blok program dibagi lagi menjadi dua bagian, yaitu : bagian deklarasi dan bagian pernyataan. Secara ringkas, struktur suatu program pascal dapat terdiri dari :
1. Judul program
2. Blok program
    a. Bagian deklarasi
        - deklarasi label
        - deklarasi konstanta
        - deklarasi tipe
        - deklarasi variable
        - deklarasi prosedur
        - deklarasi fungsi
    b. Bagian pernyataan
        Program pascal yang paling sederhana adalah program yang hanya terdiri dari 
        sebuah bagian pernyataan  saja.

        Begin
        End.
Bentuk umum dari bagian pernyataan adalah :
        Begin
           Statement;
        End .

Contoh :
Begin
     Writeln ( ‘Saya pascal’ );
     Writeln ( ‘--------------‘ )
End .

Program pascal tidak mengenal aturan penulisan di kolom tertentu, jadi boleh ditulis mulai kolom berapapun. Penulisan statement-statement pada contoh program yang menjorok masuk beberapa kolom tidak mempunyai pengaruh diproses, hanya dimaksudkan supaya mempermudah pembacaan program, sehingga akan lebih terlihat bagian-bagiannya, dan baik untuk dokumentasi.
Judul program sifatnya optional dan tidak signifikan didalam program. Jika ditulis dapat digunakan untuk memberi nama program dan daftar dari parameter tentang komunikasi program dengan lingkungannya yang sifatnya sebagai dokumentasi saja. Judul program bila ditulis harus terletak pada awal dari program dan diakhiri dengan titik koma.

Contoh :
Program contoh ;
Begin
     Writeln ( ‘Samin’ );
     Writeln( ‘---------------‘ );
End .

1.3 Deklarasi
Bagian deklarasi digunakan bila didalam program menggunakan pengenal (identifier) yang dapat berupa label, konstanta, tipe, variable, prosedur dan fungsi.

1.3.1 Deklarasi Konstanta
Definisi konstanta diawali dengan kata cadangan Const diikuti oleh kumpulan identifier yang diberi suatu nilai konstanta. Data konstanta nilainya sudah ditentukan dan pasti, tidak dapat dirubah didalam program.
Program contoh_konstanta;
Const
     Potongan = 0.2 ;
     Gaji = 25000 ;
     Namaperusahaan = ‘PT ABC’ ;
Begin
     Writeln ( ‘Potongan =’, Potongan ) ;
     Writeln ( ‘Gaji =’, Gaji ) ;
     Writeln ( ‘Nama =’, Namaperusahaan) ;
End .

1.3.2 Deklarasi Variabel
Variabel adalah identifier yang berisi data yang dapat diubah-ubah nilainya didalam program. Menggunakan kata cadangan Var sebagai judul didalam bagian deklarasi variable dan diikuti oleh satu atau lebih identifier yang dipisahkan koma, diikuti dengan titik dua dan tipe dari datanya diakhiri dengan titik koma.
Contoh :
Var
   Total, Gaji, Tunjangan : real ;
   Jumlahanak : integer ;
   Keterangan : string [25] ;
Begin
   Gaji : = 500000 ;
   Jumlahanak : = 3 ;
   Tunjangan : = 0.25 * Gaji + Jumlahanak * 30000 ;
   Total : = Gaji + Tunjangan ;
   Keterangan : = ‘Karyawan Teladan’ ;
   Writeln ( ‘ Gaji bulanan = Rp. ‘ , Gaji ) ;
   Writeln ( ‘ Tunjangan = Rp. ‘ , Tunjangan ) ;
   Writeln ( ‘ Total gaji = Rp. ‘ , Total ) ;
   Writeln ( ‘ Keterangan = Rp. ‘ , Keterangan ) ;
End .

1.3.3 Deklarasi Tipe
Pascal menyediakan beberapa macam tipe data, yaitu :
1. tipe data sederhana, terdiri dari :
    a. Tipe data standar : integer, real, char, string, Boolean.
    b. Tipe data didefinisikan pemakai : enumerated atau scalar, subrange
2. Tipe data terstruktur : array, record, file, set
3. Tipe data penunjuk
Contoh :
Type
Pecahan = real ;
Bulat = integer ;
Huruf = string [25] ;
Begin
     ……..
     ……..
     ……..
End .

1.3.4 Deklarasi Label
Jika program menggunakan statement Goto untuk meloncat ke suatu statement yang tertentu, maka dibutuhkan suatu label pada statement yang dituju dan label tersebut harus di deklarasikan terlebih dahulu pada bagian deklarasi. Menggunakan kata cadangan Label diikuti oleh kumpulan identifier label dengan dipisahkan oleh koma dan diakhiri dengan titik koma.
Contoh :
Label
   100, selesai ;
Begin
   Writeln ( ‘Bahasa’ ) ;
   Goto 100 ;
   Writeln ( ‘Cobol’ ) ;
100 :
   Writeln ( ‘Pascal’ ) ;
Goto selesai ;
   Writeln ( ‘Fortran’ ) ;
Selesai :
End .

1.3.5 Deklarasi Prosedur
Prosedur merupakan bagian yang terpisah dari program dan dapat diaktifkan dimanapun didalam program. Prosedur dibuat sendiri bilamana program akan dibagi-bagi menjadi beberapa blok-blok modul. Prosedur dibuat didalam program dengan cara mendeklarasikannya dibagian deklarasi prosedur. Menggunakan kata cadangan Procedure.
Contoh :
Procedure tambah ( x, y : integer ; var hasil : integer ) ;
Begin
     Hasil : = x + y ;
End ;
{program utama}
var
z : integer ;
Begin
     Tambah ( 2, 3, z ) ;
     Writeln ( ‘ 2 + 3 = ‘, z );
End .

1.3.6 Deklarasi Fungsi
Fungsi juga merupakan bagian program yang terpisah mirip dengan prosedur, tetapi ada beberapa perbedaannya. Kata cadangan yang digunakan Function.
Contoh :
Function Tambah ( x, y : integer ) : integer ;
Begin
     Tambah : = x + y ;
End ;
{program utama}
Begin
     Writeln ( ‘ 2 + 3 = ‘ , Tambah ( 2, 3)) ;
End .

1.4 Unit
Suatu unit adalah kumpulan dari konstanta, tipe-tipe data, variable, prosedur dan fungsi-fungsi. Tiap-tiap unit tampak seperti suatu program Pascal yang terpisah. Unit standar sudah merupakan kode mesin (sudah dikompilasi), bukan kode sumber Pascal lagi dan sudah diletakkan di memori pada waktu menggunakan pascal. Untuk menggunakan suatu unit, harus diletakkan suatu anak kalimat Uses diawal blok program, diikuti oleh daftar nama unit yang digunakan.

1.4.1 Unit System
Sebenarnya adalah pustaka dari runtime Turbo Pascal yang mendukung semua proses yang dibutuhkan pada waktu runtime. Unit system berisi semua prosedur dan fungsi standar turbo pascal. Unit system ini akan secara otomatis digunakan didalam program, sehingga boleh tidak disebutkan didalam anak kalimat Uses.

1.4.2 Unit Crt
Digunakan untuk memanipulasi layer teks ( windowing, peletakkan cursor dilayar, color untuk teks, kode extanded keyboard dan lainnya). Unit standar crt hanya dapat digunakan oleh program yang digunakan dikomputer IBM PC, IBM AT, IBM PS/2 atau yang kompatibel dengannya.
Contoh :
Uses crt ;
Begin
     Clrscr ;
     Writeln ( ‘Hallo’ ) ;
     Writeln ( ‘-------‘ ) ;
End .
Prosedur standar yang menggunakan unit crt adalah :

Fungsi standar yang menggunakan unit Crt adalah :
KeyPressed
ReadKey
WhereX
WhereY

1.4.3 Unit Printer
Merupakan unit yang sangat kecil dirancang untuk penggunaan printer didalam program.
Contoh :
Uses printer ;
Begin
     Writeln ( Lst, ‘Hallo’ ) ;
     Writeln ( Lst, ‘-------‘ ) ;
End .

1.4.4 Unit Dos
Digunakan bila akan menggunakan prosedur-prosedur dan fungsi-fungsi standar yang berhubungan dengan DOS call, semacam DetTime, SetTime, DiskSize, DiskFree dan lainnya.
Contoh :
Uses Dos ;
Begin
     Writeln ( DiskFree(0), ‘ byte sisa isi disk ‘ ) ;
End .

1.4.5 Unit Graph
menyediakan suatu kumpulan rutin grafik yang canggih, sehingga dapat memanfaatkannya untuk keperluan-keperluan pembuatan grafik.
contoh :
Uses graph ;
Var
DriveGrafik, ModeGrafik : integer ;
I, x, y : integer ;
Begin
     DriveGrafik : = detect ;
     …….
     …….
End .

Read More

ALGORITMA PEMROGRAMAN

PEMROGRAMAN KOMPUTER
Program komputer adalah rangkaian kata perintah yang telah dimengerti oleh komputer untuk dikerjakannya. Kata-kata perintah tersebut membentuk suatu bahasa yang disebut dengan bahasa pemrograman. Sebagaimana bahasa pada manusia, bahasa pemrograman juga terdiri atas banyak macam bahasa, dan memiliki aturannya masing-masing. Sulitnya, komputer saat ini belum diberi hak inisiatif, sehingga jika ada sedikit saja kesalahan penulisan perintah oleh pemrogram, ia tidak mau memakluminya atau berusaha memperbaiki sendiri kesalahan tersebut. Serta merta ia “ngambek” dan tidak mau mengerjakan perintah-perintah lainnya. Komputer diciptakan melalui logika manusia, karenanya, ia bekerja secara logis, tanpa campur-tangan “perasaan.”

ALGORITMA PEMROGRAMAN
Orang yang telah terbiasa “bergaul” dengan komputer menggunakan satu bahasa pemrograman tertentu (tingkat mahir), biasanya tidak lagi memerlukan kertas coret-coretan untuk membuat suatu program komputer. Namun bagi pemula, pembelajar, atau yang belum mahir, diperlukan kertas coret-coretan tersebut. Kertas coret-coretan itu akan digunakan untuk menyusun algoritma (langkah-langkah penyelesaian masalah), flowcharting (alur logika perintah, yang merupakan aplikasi dari algoritma), maupun menuliskan perintah sesuai
dengan kaidah dari bahasa pemrograman yang akan digunakannya. Sewaktu menyusun algoritma, kita tidak perlu tahu (atau tidak perlu menyesuaikan dengan) bahasa pemrograman yang nanti akan kita gunakan. Hal utama yang kita pikirkan adalah kaidah (hirarki) dari komputer itu sendiri, yaitu input-proses-output. Input adalah data yang harus ada (sudah ada/ sudah tersedia), yang dapat diproses dengan aturan-aturan tertentu untuk menghasilkan output seperti yang dikehendaki. Data yang ada harus logis (masuk akal) bahwa “ia” dapat diproses untuk menghasilkan output.

PERLUNYA PERINTAH BAHASA PEMROGRAMAN DI DALAM ALGORITMA
Meskipun sudah dikatakan, bahwa sewaktu kita menyusun algoritma kita tidak perlu tahu bahasa pemrograman apa yang akan digunakan kelak, namun, untuk penulisan algoritma yang lebih efisien dan efektif, maka penggunaan sebagian perintah yang ada di dalam bahasa pemrograman perlu dilakukan juga. Adapun perintah bahasa pemrograman yang paling sering digunakan untuk menyusun algoritma adalah bahasa pemrogrman yang terstrukutur, seperti Pascal, C, SNOBOL, PL/1, dan sebagainya.

PERLUNYA PROSEDUR
Toh akhirnya, kita tidak akan mungkin hanya membuat algoritmanya saja melainkan dilanjutkan ke pembuatan programnya. Karenanya, algoritma sebaiknya dibuat sedemikian rupa agar setiap perintah yang ada di dalamnya dapat diaplikasikan langsung ke dalam bahasa pemrograman. Itulah perlunya prosedur. Misalkan kata “operand” di algoritma di atas yang tidak dapat langsung diaplikasikan di dalam bahasa pemrogramannya, kita buat saja prosedur dari algoritma tersebut yang mendefinisikan apa itu “operand.”

PERLUNYA STANDAR PENGGUNAAN PERINTAH BAHASA PEMROGRAMAN
Sulit memang membuat standardisasi penggunaan perintah bahasa pemrograman di sebuah algoritma. Sulit karena ada yang hanya memahami satu bahasa pemrogrman saja sehingga ia tak mau menggunakan perintah di bahasa pemrograman lain.
Namun, itu sebatas cara penulisan saja, misalkan di BASIC A = 10, di Pascal berlaku A := 10, namun untuk perintah looping, umumnya memiliki alur logika yang sama, yaitu dalam penggunaan FOR-NEXT, REPEAT-UNTIL, DO WHILEENDDO, WHILE-WEND, dan sebagainya. Jadi, meskipun tidak ada standar yang pasti, paling-paling hanya berbeda cara penulisannya saja, namun sama dalam alur logikanya. Jadi, ternyata, standardisasi semacam ini tidak diperlukan.
Read More

ALGORITMA & FLOWCHART

1. DEFINISI ALGORITMA
Terdapat beberapa definisi mengenai kata Algoritma :
1. Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang
    disusun secara sistematis (Rinaldi Munir :2002).
2. Algoritma adalah urutan logis pengambilan keputusan untuk pemecahan
    masalah (KBBI :1988).
3. Algoritma adalah suatu himpunan hingga dari instruksi-instruksi yang secara
    jelas memperinci langkah-langkah proses pelaksanaan, dalam pemecahan
    suatu masalah tertentu, atau suatu kelas masalah tertentu, dengan dituntut
    pula bahwa himpunan instruksi tersebut dapat dilaksanakan secara mekanik
    (Team Gunadarma :1988).

2. CIRI ALGORITMA
Menurut Donald E. Knuth, algoritma mempunyai lima ciri penring :
1. Algoritma harus berhenti setelah mengerjakan sejumlah langkah terbatas.
2. Setiap langkah harus didefinisikan secara tepat dan tidak berarti dua.
3. Algoritma memiliki nol atau lebih masukan (input).
4. Algoritma mempunyai nol atau lebih keluaran (output).
5. Algoritma harus sangkil (efektif)

3. NOTASI PENULISAN
Di bawah ini dikemukakan beberapa notasi yang digunakan dalam penulisan
algoritma, antara lain :
1) Notasi yang dinyatakan dalam kalimat deskriptif
    Dengan notasi ini, deskripsi setiap langkah dijelaskan dengan bahasa
    yang jelas. Notasi ini cocok untuk algoritma yang pendek, namun untuk
    masalah yang algoritmanya besar, notasi ini jelas tidak efektif. Selain itu,
    pengkonversian notasi algoritma ke notasi bahasa pemrograman
    cenderung relatif sukar.
Contoh :
Algoritma Bilangan_Maksimum
Diberikan tiga buah bilangan bulat. Carilah bilangan bulat
maksimum diantara ketiga bilangan tersebut.
Deskripsi :
(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

2) Notasi yang dinyatakan dengan pseudo code
Pseudocode adalah notasi yang menyerupai bahasa pemrograman tingkat
tinggi. Keuntungan menggunakan notasi pseudo code adalah kemudahan
mengkonversinya lebih tepat yang disebut mentranslasi ke notasi bahasa
pemrograman, karena terdapat korespondensi antara setiap pseudo code
dengan notasi bahasa pemrograman.
Contoh :
Algoritma Bilangan_Maksimum
{ Dibaca tiga buah bilangan dari piranti masukan. Carilah
bilangan bulat maksimum diantara ketiga bilangan tersebut }
Deklarasi :
Bil1,Bil2,Bil3 : integer {bilangan yang dicari maksimumnya}
MAX : integer {variabel bantu}

Deskripsi :
   Read (Bil1,Bil2)
   If Bil1 >= Bil 2 then
        Bil1 = MAX
   Else Bil2 = MAX
   Read (Bil3)
   If Bil3 >= MAX then
        Bil3 = MAX
   Write (MAX)

3) Notasi yang dinyatakan dalam flow chart
Sama halnya dengan notasi deskriptif, notasi ini cocok untuk algoritma
yang pendek, namun untuk masalah yang algoritmanya besar, notasi ini
jelas tidak efektif. Selain itu, pengkonversian notasi algoritma ke notasi
bahasa pemrograman cenderung relatif sukar.
Contoh : Algoritma Bilangan_Maksimum dalam flow char

4. TEKS ALGORITMA
Pada dasarnya, teks algoritma disusun atas tiga bagian (blok) : bagian judul
(header) agoritma, bagian deklarasi, dan bagian deskripsi. Setiap bagian dapat
diberi komentar untuk memperjelas maksud teks yang dituliskan. Komentar
biasanya ditulis menggunakan kurung kurawal.
1) Judul Algoritma
Judul algoritma adalah bagian yang terdiri atas nama algoritma dan
penjelasan (spesifikasi) tentang algoritma tersebut. Nama algoritma
sebaiknya singkat, namun cukup menggambarkan apa yang akan
dilakukan oleh algoritma tersebut. Di bawah nama algoritma disertai
dengan penjelasan singkat (intisari) tentang apa yang dilakukan oleh
algoritma. Penjelasan di bawah nama algoritma sering dinamakan juga
spesifikasi algoritma. Algoritma harus ditulis sesuai dengan spesifikasi
yang didefinisikan.
Contoh :
Algoritma Luas_Lingkaran
{ Menghitung luas lingkaran untuk ukuran jari-jari tertentu.
Algoritma menerima masukan jari-jari lingkaran, menghitung
luasnya, lalu cetak luasnya ke piranti keluaran }
2) Deklarasi
Di dalam algoritma, deklarasi nama adalah bagian untuk mendefinisikan
semua nama yang dipakai di dalam algoritma. Nama tersebut dapat
berupa nama terapan, nama peubah, nama tipe, nama prosedur dan
nama fungsi.
Contoh :
Deklarasi :
Panjang = integer {tipe data bilangan bulat}
Lebar = integer
Luas = real {tipe data bilangan pecahan}
3) Deskripsi
Deskripsi adalah bagian terpenting dari struktur algoritma. Bagian ini berisi
uraian langkah-langkah penyelesaian masalah. Langkah-langkah ini
dituliskan dengan notasi yang lazim dalam penulisan algoritma. Setiap
langkah algoritma dibaca dari langkah paling atas hingga langkah paling
bawah. Urutan penulisan menentukan urutan pelaksanaan perintah.
Contoh :
Deskripsi :
Read (nama)
Read (NIM)
Read (nilai)
If (nilai < 45) then
Grade = E
Else if (nilai >= 45) and (nilai < 60) then
Grade = D
Else if (nilai >= 60) and (nilai < 70) then
Grade = C
Else if (nilai >= 70) and (nilai < 80) then
Grade = B
Else
Grade = A
Write (nama)
Write (NIM)
Write (nilai)

5. STRUKTUR DASAR ALGORITMA
Algoritma berisi langkah-langkah penyelesaian suatu masalah. Langkah-langkah
tersebut dapat berupa runtunan aksi, pemilihan aksi, dan pengulangan
aksi. Ketiga jenis langkah tersebut membentuk konstruksi suatu algoritma. Jadi,
sebuah algoritma dapat dibangun dari tiga buah struktur dasar, yaitu :
1) Runtunan (sequence)
Sebuah runtunan terdiri dari satu atau lebih instruksi. Tiap instruksi
dikerjakan secara berurutan sesuai dengan urutan penulisannya, yakni
sebuah instruksi dilaksanakan setelah instruksi sebelumnya selesai
dikerjakan.
2) Pemilihan (selection)
Adakalanya sebuah instruksi dikerjakan jika kondisi tertentu dipenuhi. Tiap-
tiap instruksi akan diseleksi oleh kondisi, apabila instruksi memenuhi
kondisi yang diminta, maka instruksi akan dijalankan.
3) Pengulangan (repetition)
Salah satu kelebihan komputer adalah kemampuannya untuk
mengerjakan pekerjaan yang sama berulang kali tanpa mengenal lelah.
Kita tidak perlu menulis instruksi yang sama berulang kali, tetapi cukup
melakukan pengulangan dengan instruksi yang tersedia.

 Algoritma Konversi
{ Terdapat tiga sub bagian (menu) dari program konversi. Pertama,
konversi nilai dolar ke rupiah. Nilai tukar dan jumlah dolar diinput
dari piranti masukan. Kedua, konversi Kilo meter (KM) ke meter (m).
Nilai kilometer diinput dari piranti masukan. Ketiga, konversi
Celcius ke Fahrenheit. Nilai celcius diinput dari piranti masukan.
Ketiga nilai diolah dengan masing-masing rumus yang berbeda.
Hasilnya dicetak ke piranti keluaran }
Deklarasi :
Pilih, Tukar, Dolar, KM = Integer
Nilai1, Nilai2, Celcius = Integer
Nilai3 = Real
Lagi = Char
Deskripsi :
Cetak (judul program)
Cetak (pilihan)
Baca (Pilih)
If (Pilih=1) then
Baca (Tukar)
Baca (Dolar)
Nilai1 = Tukar * Dolar
Cetak (Nilai1)
ElseIf (Pilih=2) then
Baca (KM)
Nilai2 = KM * 1000
Cetak (Nilai2)
Elseif (Pilih=3) then
Baca (Celcius)
Nilai3 = (Celcius * 1.8) + 32
Cetak (Nilai3)
Else
Cetak (Peringatan)
Endif
Baca (Lagi)
If (Lagi = ‘Y’) then goto (x,y)
Cetak (selesai)

Flowchart Program Konversi

Read More