materi UTS TIK

MAPEL : T I K

Algoritma dan Flowchart
Algoritma adalah urutan langkah-langkah yang disusun secara logis untuk memecahkan suatu permasalahan logika atau matematika dalam pengambilan keputusan.

Definisi Algoritma
Algoritma adalah urutan langkah logis tertentu untuk memecahkan suatu masalah. Yang ditekankan adalah urutan langkah logis, yang berarti algoritma harus mengikuti suatu urutan tertentu, tidak boleh melompat-lompat. (Dari Microsoft Press Computer and Internet Dictionaary 1997, 1998)
Alur pemikiran dalam menyelesaikan suatu pekerjaan yang dituangkan secara tertulis. Yang ditekankan pertama adalah alur pikiran, sehingga algoritma seseorang dapat juga berbeda dari algoritma orang lain. Sedangkan penekanan kedua adalah tertulis, yang artinya dapat berupa kalimat, gambar, atau tabel tertentu. (Dari Algoritma dan Struktur Data dengan C, C++, dan Java oleh Moh Sjukani hal 1)

PENDAHULUAN

Beberapa langkah dalam proses pembuatan suatu program atau software :

1.    Mendefinisikan masalah dan menganalisanya
Langkah awal yang harus dilakukan adalah mengidentifikasikan masalah antara lain tujuan dari pembuatan program, parameter-parameter yang digunakan, fasilitas apa saja yang akan disediakan oleh program. Kemudian menentukan metode atau algoritma apa yang akan diterapkan untuk menyelesaikan masalah tersebut dan terakhir menentukan bahasa program  yang digunakan untuk pembuatan program.

2.    Merealisasikan dengan langkah-langkah berikut :
Secara umum, struktur suatu program terdiri dari beberapa bagian yaitu :

1.    Input
Bagian ini merupakan proses untuk memasukkan data ke komputer melalui device yang ada misalnya keyboard, mouse, scanner dll. Program melakukan proses membaca data yang akan diolah dari device tersebut.

2.    Output
Bagian ini merupakan proses untuk menampilkan data yang telah diolah, melaporkan hasil pegolahan data melalui device seperti monitor, printer dll. Program melakukan proses mencetak data ke device tersebut.

3.    Proses Pengolahan Data
Bagian ini merupakan proses mengolah data yang diinputkan dengan menerapkan metode-metode, teknik-teknik, algoritma-algoritma yang ada. Proses ini menghasilkan data output yang akan dioutputkan kepada pengguna program.

4.    Penyimpanan Data
Bagian ini merupakan proses menyimpan data dalam memori atau device penyimpanan data seperti disket, harddisk, CD dll.

Berikut ini adalah blok diagram struktur dari suatu program secara umum.
[color=olive][b]Flowchart[/b][/color]

Flowchart adalah gambaran dalam bentuk diagram alir dari algoritma-algoritma dalam suatu program, yang menyatakan arah alur program tersebut.
Berikut adalah beberapa simbol yang digunakan dalam menggambar suatu flowchart :


SIMBOL
NAMA
FUNGSI
TERMINATOR
Permulaan/akhir program
GARIS ALIR
(FLOW LINE)
Arah aliran program
PREPARATION
Proses inisialisasi/pemberian harga awal
PROSES
Proses perhitungan/proses pengolahan data
INPUT/OUTPUT DATA
Proses input/output data, parameter, informasi
PREDEFINED PROCESS
(SUB PROGRAM)
Permulaan sub program/proses menjalankan sub program
DECISION
Perbandingan pernyataan, penyeleksian data yang memberikan pilihan untuk langkah selanjutnya
ON PAGE CONNECTOR
Penghubung bagian-bagian flowchart yang berada pada satu halaman
OFF PAGE CONNECTOR
Penghubung bagian-bagian flowchart yang berada pada halaman berbeda


komponen-komponen diagram alir, maka perlu kiranya disampaikan aturan-aturan dalam perancangan diagram alir tersebut, yaitu :
1.     Diagram alir digambarkan dengan orientasi dari atas ke bawah dan dari kiri ke kanan;
2.     Setiap kegiatan/proses dalam diagram alir harus dinyatakan secara eksplisit;
3.     Setiap diagram alir harus dimulai dari satu Start State dan berakhir pada satu atau lebih Terminal Akhir/Terminator/Halt State;
4.     Gunakan Connector dan Off-Page Connector state dengan label yang sama untuk menunjukkan keterhubungan antar path algoritma yang terputus/terpotong, misalnya sebagai akibat pindah/ganti halaman.

Contoh : Buat algoritma untuk menentukan apakah suatu bilangan merupakan bilangan ganjil atau bilangan genap.

Algoritmanya :
1.    Bagi bilangan dengan bilangan 2
2.    Hitung sisa hasil bagi pada langkah 1.
3.    Bila sisa hasil bagi sama dengan 0 maka bilangan itu adalah bilangan genap tetapi bila sisa hasil bagi sama dengan 1 maka bilangan itu adalah bilangan ganjil.


Dari contoh algoritma di atas tentang menentukan apakah suatu bilangan adalah bilangan ganjil atau bilangan genap, flowchart dari program adalah sebagai berikut :





















Soal Latihan

1.    Buat algoritma untuk menentukan apakah suatu bilangan merupakan bilangan prima atau bukan, kemudian buat flowchart untuk program tersebut !
2.    Buat algoritma untuk mencetak N buah bilangan prima yang pertama, kemudian buat flowchart untuk program tersebut !
3.    Buat algoritma untuk menentukan jenis akar dari suatu persamaan kuadrat, kemudian buat flowchart untuk program tersebut !
4.    Buat algoritma untuk menghitung jumlah N suku dari deret aritmatika berikut :   
Sn = 3 + 7 + 11 + …… + (4n-1)
5.    Buat algoritma untuk menghitung nilai faktorial dari suatu bilangan, kemudian buat flowchart untuk program tersebut !
6.    Buat flowchart untuk mencetak pasangan nilai X dan Y dimana hubungan antara X dan Y memenuhi persamaan Y = X3 – 2X +1 dan nilai x berubah dari –10 sampai 10 !


PENGANTAR ALGORITMA
Definisi Program/Pemrograman adalah kumpulan instruksi-instruksi tersendiri yang biasanya disebut source code yang dibuat oleh programmer (pembuat program)

Paradigma Pemrograman
1.    Pemrograman Prosedural
•    Berdasarkan urutan-urutan, sekuensial
•    Program adalah suatu rangkaian prosedur untuk memanipulasi data. Prosedur merupakan kumpulan instruksi yang dikerjakan secara berurutan.
•    Harus mengingat prosedur mana yang sudah dipanggil dan apa yang sudah diubah.

2. Pemrograman Fungsional
•    Berdasarkan teori fungsi matematika
•    Fungsi merupakan dasar utama program

3.    Pemrograman Terstruktur
•    Secara berurutan dan terstrukrtur
•    Program dapat dibagai-bagi menjadi prosedur dan fungsi
Contoh: PASCAL dan C

4.    Pemrograman Modular
•    Pemrograman ini membentuk banyak modul
•    Modul merupakan kumpulan dari prosedur dan fungsi yang berdiri sendiri
•    Sebuah program dapat merupakan kumpulan modul-modul
Contoh: MODULA-2 atau ADA



5.    Pemrograman Berorientasi Obyek
•    Pemrograman berdasarkan prinsip obyek, dimana obyek memilik data/ variabel/ property dan method/event/prosedur yang dapat dimanipulasi
Contoh: C++, Object Pascal, dan Java

6.    Pemrograman Berorientasi Fungsi
•    Pemrograman ini berfokus pada suatu fungsi tertentu saja. Sangat tergantung
pada tujuan pembuatan bahasa pemrograman ini
Contoh: SQL (Structured Query Language), HTML, XML dan lain-lain

7.    Pemrograman Deklaratif
•    Pemrograman ini mendeskripsikan suatu masalah dengan pernyataan daripada
memecahkan masalah dengan implementasi algoritma
Contoh: Bahasa Pemrograman PROLOG

Struktur Sistem Komputer
Siklus Hidup Perangkat Lunak (Software)
Dilihat dari Struktur Sistem Komputer dan Siklus diatas, Algoritma Pemrograman dan Struktur Data menempati posisi dibagian software dan di bagian implementasi karena bagian implementasi merupakan bagian dimana pemrogram melakukan proses coding (pembuatan program).


Algoritma

Asal kata Algoritma berasal dari nama Abu Ja’far Mohammed Ibn Musa al-Khowarizmi, ilmuan Persia yang menulis kitab al jabr w’al-muqabala (rules of restoration and reduction) sekitar tahun 825 M

Contoh Algoritma dalam kehidupan nyata:
Jika seorang ingin memasak atau membuat kue, baik itu melihat resep ataupun tidak pasti akan melakukan suatu langkah-langkah tertentu sehingga masakannya atau kuenya jadi
Jika seseorang ingin mengirim surat kepada kenalannya di tempat lain, langkah yang harus dilakukan adalah
1. Menulis surat
2. Surat dimasukkan ke dalam amplop tertutup
3. Amplop ditempeli perangko secukupnya.
4. Pergi ke Kantor Pos terdekat untuk mengirimkannya
Dalam bidang komputer, algoritma sangat diperlukan dalam menyelesaikan berbagai masalah pemrograman, terutama dalam komputasi numeris. Tanpa algoritma yang dirancang baik maka proses pemrograman akan menjadi salah, rusak, atau lambat dan tidak efisien.

Pelaksana algoritma adalah Komputer
Manusia dan komputer berkomunikasi dengan cara: manusia memberikan perintah-perintah kepada komputer berupa instruksi-instruksi yang disebut program. Alat yang digunakan untuk membuat program tersebut adalah bahasa pemrograman.
Bahasa pemrograman sangat bermacam-macam: C, C++, Pascal, Java, C#, Basic, Perl, PHP, ASP, JSP, J#, J++ dan masih banyak bahasa lainnya. Dari berbagai bahasa pemrograman cara memberikan instruksinya berbeda-beda namun bertujuan menghasilkan autput yang sama.

Kriteria Algoritma Menurut Donald E. Knuth
1.     Input    :     algoritma dapat memiliki nol atau lebih inputan dari luar
2.     Output    :     algoritma harus memiliki minimal satu buah output keluaran
3.     Definiteness (pasti)    :     algoritma memiliki instruksi-instruksi yang jelas dan tidak ambigu
4.     Finiteness (ada batas)    :     algoritma harus memiliki titik berhenti (stopping role)
5.     Effectiveness    :     algoritma sebisa mungkin harus dapat
    (tepat dan efisien)        dilaksanakan dan efektif

Contoh instruksi yang tidak efektif adalah: A = A + 0 atau A = A * 1
Namun ada beberapa program yang memang dirancang untuk unterminatable: contoh Sistem Operasi

Jenis Proses Algoritma
1. Sequence Process    : instruksi dikerjakan secara sekuensial, berurutan.
2. Selection Process    : instruksi dikerjakan jika memenuhi kriteria tertentu
3. Iteration Process    : instruksi dikerjakan selama memenuhi suatu kondisi tertentu.
4. Concurrent Process    : beberapa instruksi dikerjakan secara bersama

Contoh Algoritma
Algoritma menghitung luas persegi panjang:
1. Masukkan panjang (P)
2. Masukkan lebar (L)
3. L ← P * L
4. Tulis L

Dalam Algoritma, tidak dipakai simbol-simbol / sintaks dari suatu bahasa pemrograman tertentu, melainkan bersifat umum dan tidak tergantung pada suatu bahasa pemrograman apapun juga Notasi-notasi algoritma dapat digunakan untuk seluruh bahasa pemrograman manapun



















Pseudo Code
Declaring :
Bilangan               : Integer
Jumlah                  : Integer
Counter               : Integer
Description :
Read (Bilangan)
a= Bilangan ganjil
b=a+2
c=b+2
p← p+1
x← a+b+c
IF p=3 THEN
PRINT”Total”
ELSE
PRINT”Read Bilangan”
ENDIF























Definisi Pseudo-code
Kode atau tanda yang menyerupai (pseudo) atau merupakan pejelasan cara menyelesaikan suatu masalah. Pseudo-code sering digunakan oleh manusia untuk menuliskan algoritma.
Problem: mencari bilangan terbesar dari dua bilangan yang diinputkan
Contoh Pseudo-code:
1. Masukkan bilangan pertama
2. Masukkan bilangan kedua
3. Jika bilangan pertama > bilangan kedua maka kerjakan langkah 4, jika tidak, kerjakan
langkah 5.
4. Tampilkan bilangan pertama
5. Tampilkan bilangan kedua
Contoh Algoritma
1. Masukkan bilangan pertama (a)
2. Masukkan bilangan kedua (b)
3. if a > b then kerjakan langkah 4
4. print a
5. print b
Contoh Lain Algortima dan Pseudo-code:
Pseudo-code Algoritma
Nilai A ditambah dengan 5 A ← A + 5
Cetak nilai A bila lebih besar dari 10 IF A > 10 THEN PRINT A
Dari dua bilangan A dan B, cari
bilangan yang terbesar
IF A > B THEN PRINT A ELSE PRINT
B

Langkah-langkah dalam pemrograman komputer
1. Mendefinisikan masalah
Ini merupakan langkah pertama yang sering dilupakan orang. Menurut hukum Murphy
(oleh Henry Ledgard):
“Semakin cepat menulis program, akan semakin lama kita dapat menyelesaikannya”.
Hal tersebut berlaku untuk permasalahan yang kompleks. Tentukan masalahnya, apa
saja yang harus dipecahkan dengan menggunakan komputer, dan apa inputan serta
outputnya.

2. Menemukan solusi
Setelah masalah didefinisikan, maka langkah berikutnya adalah menentukan solusi.
Jika masalah terlalu kompleks, maka ada baiknya masalah tersebut dipecah menjadi
modul-modul kecil agar lebih mudah diselesaikan.
Contohnya masalah invers matriks, maka kita dapat membagi menjadi beberapa
modul:
- meminta masukkan berupa matriks bujur sangkar
- mencari invers matriks
- menampilkan hasil kepada pengguna

Dengan penggunaan modul tersebut program utama akan menjadi lebih singkat dan
mudah dilihat.

3. Memilih algoritma
Pilihlah algoritma yang benar-benar sesuai dan efisien untuk permasalahan tersebut

4. Menulis program
Pilihlah bahasa yang mudah dipelajari, mudah digunakan, dan lebih baik lagi jika sudah dikuasai, memiliki tingkat kompatibilitas tinggi dengan perangkat keras dan platform lainnya.

5. Menguji program
Setelah program jadi, silahkan uji program tersebut dengan segala macam kemungkinan yang ada, termasuk error-handlingnya sehingga program tersebut akan benar-benar handal dan layak digunakan.

6. Menulis dokumentasi
Penulis dokumentasi sangat penting agar pada suatu saat jika kita akan melakukan perubahan atau membaca source code yang sudah kita tulis dapat kita ingat-ingat lagi dan kita akan mudah membacanya. Caranya adalah dengan menuliskan komentarkomentar kecil tentang apa maksud kode tersebut, untuk apa, variabel apa saja yang digunakan, untuk apa, dan parameter-parameter yang ada pada suatu prosedur dan fungsi.

7. Merawat program
Program yang sudah jadi perlu dirawat untuk mencegah munculnya bug yang sebelumnya tidak terdeteksi. Atau mungkin juga pengguna membutuhkan fasilitasbaru yang dulu tidak ada.




[b]Flowchart[/b]
Flowchart adalah jenis diagram, yang mewakili sebuah algoritma atau proses, menunjukkan langkah-langkah sebagai kotak dari berbagai jenis, dan pesanan mereka dengan menghubungkan ini dengan panah. Representasi diagram dapat memberikan solusi langkah-demi-langkah untuk masalah tertentu. Data direpresentasikan dalam kotak-kotak, dan panah menghubungkan mereka mewakili aliran / arah aliran data. Flowchart digunakan dalam menganalisis, merancang, mendokumentasikan atau mengelola proses atau program di berbagai bidang [1].
Sejarah
Metode terstruktur pertama untuk mendokumentasikan aliran proses, "aliran proses grafik", diperkenalkan oleh Frank Gilbreth kepada anggota American Society of Mechanical Engineers (ASME) pada tahun 1921 dalam presentasi "Proses Charts-Langkah Pertama di Menemukan One Way Terbaik ". Alat Gilbreth dengan cepat menemukan cara mereka ke dalam kurikulum teknik industri. Pada awal 1930-an, seorang insinyur industri, Allan H. Mogensen mulai melatih orang-orang bisnis dalam penggunaan beberapa alat teknik industri di Konferensi Kerja Penyederhanaan di Lake Placid, New York.
Lulusan 1944 kelas Mogensen 's, Seni Spinanger, mengambil alat kembali ke Procter and Gamble di mana dia mengembangkan Program disengaja mereka Metode Ubah. Lulusan lain 1944, Ben S. Graham, Direktur Teknik di Formcraft Standar Daftar Corporation, mengadaptasi diagram alir proses pengolahan informasi dengan perkembangan dari bagan aliran multi-proses untuk menampilkan beberapa dokumen dan hubungan mereka. [2] Pada tahun 1947, ASME mengadopsi serangkaian simbol yang berasal dari karya asli Gilbreth sebagai Standar ASME untuk Proses Charts oleh Mishad, Ramsan & Raiaan.
Douglas Hartree menjelaskan bahwa Herman Goldstine dan John von Neumann mengembangkan diagram alur (awalnya, diagram) untuk merencanakan program komputer. [3] akun kontemporer-Nya didukung oleh insinyur IBM [4] dan oleh kenangan pribadi Goldstine itu. [5] pemrograman asli aliran grafik dari Goldstine dan von Neumann dapat dilihat dalam laporan tidak diterbitkan mereka, "Perencanaan dan pengkodean masalah bagi alat komputasi elektronik, Bagian II, Volume 1" (1947), yang direproduksi dalam karya von Neumann dikumpulkan [6].
Flowchart digunakan untuk menjadi sarana populer untuk menggambarkan algoritma komputer dan masih digunakan untuk tujuan ini. [7] teknik modern seperti diagram UMLactivity dapat dianggap sebagai perpanjangan dari diagram alur. Pada 1970-an popularitas diagram alur sebagai metode sendiri menurun ketika interaktif terminal komputer dan generasi ketiga bahasa pemrograman menjadi alat umum perdagangan, karena algoritma dapat dinyatakan jauh lebih ringkas dan readably sebagai kode sumber dalam bahasa tersebut. Seringkali pseudo-kode yang digunakan, yang menggunakan idiom umum bahasa tersebut tanpa benar-benar mengikuti rincian satu tertentu.
Flowchart blok bangunan
Contoh flowchart sederhana untuk menghitung faktorial N (10!)
Sebuah flowchart untuk menghitung faktorial N (10!) Di mana N! = (1 * 2 * 3 * 4 * 5 * 6 * 7 * 8 * 9 * 10), lihat gambar. Flowchart ini merupakan "lingkaran dan setengah" - situasi yang dibahas dalam buku teks pengantar pemrograman yang membutuhkan baik duplikasi komponen (menjadi baik di dalam dan di luar loop) atau komponen untuk diletakkan di dalam cabang di loop. (Catatan:. Beberapa buku merekomendasikan ini "loop dan setengah" karena dianggap struktur buruk, bukan sebuah 'priming membaca' harus digunakan dan loop harus kembali kembali ke pertanyaan awal dan bukan di atas [8])
[Sunting] Simbol
Sebuah diagram alur khas dari buku teks ilmu komputer yang lebih tua mungkin memiliki jenis berikut simbol:
Mulai dan akhiri simbol
Direpresentasikan sebagai lingkaran, oval atau empat persegi panjang bulat, biasanya yang berisi kata "Start" atau "End", atau frase lain sinyal awal atau akhir dari suatu proses, seperti "submit penyelidikan" atau "menerima produk".
Panah
Menampilkan apa yang disebut "aliran kontrol" dalam ilmu komputer. Sebuah panah yang datang dari satu simbol dan berakhir pada simbol lain menyatakan bahwa kontrol lolos ke simbol panah menunjuk ke.
Langkah-langkah pengerjaan
Direpresentasikan sebagai persegi panjang. Contoh: "Tambahkan 1 ke X"; "mengganti bagian diidentifikasi"; "simpan perubahan" atau mirip.
Input / Output
Direpresentasikan sebagai genjang. Contoh: Dapatkan X dari pengguna; tampilan X.
Bersyarat atau keputusan
Direpresentasikan sebagai berlian (belah ketupat). Ini biasanya berisi Ya / Tidak ada pertanyaan atau Benar / Salah tes. Simbol ini adalah unik karena memiliki dua anak panah keluar dari itu, biasanya dari titik bawah dan titik yang tepat, salah satu sesuai dengan Ya atau Benar, dan satu sesuai ke Tidak atau Salah. Tanda panah harus selalu labeled.A keputusan diperlukan dalam suatu diagram alur. Lebih dari dua panah dapat digunakan, tetapi ini biasanya indikator yang jelas bahwa keputusan yang kompleks sedang diambil, dalam hal ini mungkin perlu dipecah-pecah lebih lanjut, atau diganti dengan simbol "yang telah ditentukan proses".
Sejumlah simbol lain yang memiliki mata uang kurang universal, seperti:
• Sebuah Dokumen direpresentasikan sebagai persegi panjang dengan dasar bergelombang;
• A input manual diwakili oleh genjang, dengan bagian atas miring tidak teratur naik dari kiri ke kanan. Sebuah contoh akan untuk menandakan pemasukan data dari formulir;
• Sebuah Manual operasi diwakili oleh suatu trapesium dengan sisi sejajar terpanjang di atas, untuk mewakili operasi atau penyesuaian untuk proses yang hanya dapat dilakukan secara manual.
• Sebuah File Data direpresentasikan oleh silinder.
Flowchart mungkin berisi simbol-simbol lain, seperti konektor, biasanya direpresentasikan sebagai lingkaran, untuk mewakili jalan konvergen dalam flowchart. Lingkaran akan memiliki lebih dari satu panah yang masuk ke mereka tapi hanya satu keluar. Beberapa diagram alur mungkin hanya memiliki titik panah untuk panah lain sebagai gantinya. Ini berguna untuk mewakili berulang-ulang proses (apa yang dalam Ilmu Komputer disebut loop). Sebuah lingkaran mungkin, misalnya, terdiri dari konektor di mana kontrol pertama masuk, langkah-langkah pengolahan, bersyarat dengan satu panah keluar loop, dan satu akan kembali ke konektor. Off-halaman konektor sering digunakan untuk menandakan sambungan ke proses (bagian lain) yang diadakan pada selembar atau layar. Adalah penting untuk mengingat untuk menjaga hubungan logis dalam rangka. Semua proses harus mengalir dari atas ke bawah dan kiri ke kanan.
Jenis-jenis flowchart

 Contoh flowchart sistem.
Sterneckert (2003) menyarankan bahwa diagram alur dapat dimodelkan dari perspektif kelompok pengguna yang berbeda (seperti manajer, analis sistem dan panitera) dan bahwa ada empat tipe umum: [9]
• Dokumen diagram alur, menunjukkan kontrol atas aliran-dokumen melalui sistem
• Data diagram alur, menunjukkan kontrol atas data mengalir dalam suatu sistem
• Sistem flowchart menunjukkan kontrol pada tingkat fisik atau sumber daya
• Program flowchart, menunjukkan kontrol dalam sebuah program dalam suatu sistem
Perhatikan bahwa setiap jenis diagram alur memfokuskan pada beberapa jenis kontrol, bukan pada aliran tertentu itu sendiri. [9]
Namun ada beberapa klasifikasi ini. Sebagai contoh Andrew Veronis (1978) bernama tiga jenis dasar flowchart:. Bagan alur sistem, diagram alur umum, dan diagram alur rinci [10] Pada tahun yang sama Marilyn Bohl (1978) menyatakan "dalam praktiknya, dua jenis diagram alur yang digunakan dalam solusi perencanaan: diagram alur sistem dan diagram alur program ... "[11] Baru-baru ini Mark A. Fryman (2001) menyatakan bahwa ada lebih banyak perbedaan." Keputusan diagram alur, diagram alur logika, diagram alur sistem, diagram alur produk, dan diagram alur proses hanya beberapa dari berbagai jenis diagram alur yang digunakan dalam bisnis dan pemerintah "[12].
Selain itu, teknik diagram ada banyak yang mirip dengan diagram alur tapi membawa nama yang berbeda, seperti diagram UMLactivity.
Perangkat lunak
Sebuah template kertas dan pensil untuk menggambar diagram alur, akhir tahun 1970.
Setiap program menggambar dapat digunakan untuk membuat diagram flowchart, tetapi ini tidak akan memiliki data model dasar untuk berbagi data dengan database atau program lain seperti sistem manajemen proyek atau spreadsheet. Beberapa alat menawarkan dukungan khusus untuk menggambar flowchart. Paket perangkat lunak yang ada yang dapat membuat diagram alur secara otomatis, baik secara langsung dari kode sumber, atau dari bahasa flowchart deskripsi. On-line berbasis Web versi program tersebut tersedia
Catatan
1. ^ SEVOCAB: Software dan Kosakata Sistem dan Teknik. Term: bagan alir. Diperoleh 31 Juli 2008.
2. ^ Graham, Jr, Ben S. (10 Juni 1996). "Orang-orang datang pertama". Keynote Alamat dan Workflow Kanada. http://www.worksimp.com/articles/keynoteworkflowcanada.htm.
3. ^ Hartree, Douglas (1949). Menghitung Instrumen dan Mesin. University of Illinois Press. hal. 112.
4. ^ Bashe, Charles (1986). IBM Awal Komputer. The MIT Press. hal. 327.
5. ^ Goldstine, Herman (1972). Komputer dari Pascal ke Von Neumann. Princeton University Press. hal 266-267. ISBN0-691-08104-2.
6. ^ Taub, Abraham (1963). John von Neumann Collected Works. 5. Macmillan. hal 80-151.
7. ^ Bohl, Rynn: "Tools untuk Desain Terstruktur dan Berorientasi Objek", Prentice Hall, 2007.
8. ^ Farrell, Joyce (2008). "Pemrograman Logika dan Desain, ed 5". Komprehensif
9. ^ Ab Alan B. Sterneckert (2003) Manajemen Insiden Kritis. hal. 126
10. ^ Andrew Veronis (1978) Mikroprosesor: Desain dan Aplikasi. hal. 111
11. ^ Marilyn Bohl (1978) Panduan bagi pemrogram. hal. 65.
12. ^ Mark A. Fryman (2001) Kualitas dan Perbaikan Proses. hal. 169

[color=red]PENGANTAR BAHASA PEMROGRAMAN TURBO PASCAL[/color]

License Agreements

Sebelum anda membaca isi dari buku digital (e-book) ini, anda harus membaca dengan

baik dan menyetujui seluruh isi dari persetujuan lisensi (License Agreements) yang dimuat

di halaman ini.

Seluruh materi yang ada di dalam e-book ini merupakan hak cipta dari penulis. Walau

demikian isi dari e-book ini dapat dicetak dan didistribusikan dalam bentuk hard copy

melalui media printing atau fotocopy. Pendistribusian dari e-book ini harus melampirkan

setiap halaman yang ada di dalam e-book, termasuk pula halaman License Agreements ini.

Isi dari buku ini tidak boleh diubah tanpa persetujuan dari penulis. Penulis harus

mengetahui setiap perubahan yang akan dibuat oleh pihak ketiga terhadap isi e-book ini.

Melalui lisensi ini penulis hanya ingin para pembaca menyadari betapa sakitnya bila karya

yang telah dibuat oleh penulis-penulis (termasuk penulis yang lain) dibajak oleh orang-

orang tak bertanggung jawab sehingga penulis tersebut tidak mendapat credit atau

penghargaan atas karyanya sendiri.

Selain hal di atas, pembaca juga harus menyetujui paling tidak 3 hal dari 5 hal yang ada di

bawah ini:

1. Pembaca setuju untuk mengurangi penggunaan kendaraan pribadi sebanyak 30%

atau lebih.

2. Pembaca setuju untuk menghemat listrik dalam kegiatan sehari-hari.

3. Pembaca setuju untuk menghemat penggunaan air dalam kegiatan sehari-hari.

4. Pembaca setuju untuk membuang sampah pada tempat yang benar. :)

5. Pembaca setuju untuk membuat suatu karya digital sebagai bentuk dukungan

terhadap Comptius dan mungkin akan diperlombakan.

Bila anda tidak menyetujui isi dari Copyright License, anda dapat segera menutup e-book

ini. Lisensi ini hanya berlaku untuk karya yang dibuat oleh William.

Pengantar Bahasa Pemrograman Pascal

Page 2 / 11

Pengenalan Pascal

Pascal merupakan salah satu bahasa pemrograman tingkat tinggi. Pemrograman tingkat

tinggi menandakan bahwa Pascal banyak menggunakan bahasa manusia dalam penulisan

sintaksnya.

Beberapa bahasa pemrograman tingkat tinggi lainnya yang ada yaitu BASIC dan DELPHI.

Sedangkan bahasa pelrograman tingkat rendah yaitu bahasa pemrograman yang masih

banyak menggunakan tanda-tanda sehingga bahasa ini cenderung lebih “kotor”. Beberapa

bahasa pemrograman tingkat rendah yang sering digunakan adalah C, C++ dan Java.

Mari kita melihat perbedaan antara bahasa Pascal dan C untuk pembanding dalam sintaks

yang digunakan:

PASCAL

uses crt;
var a : integer;
begin
clrscr;
writeln('Masukkan nilai antara 0 sampai 100 : ');
readln(a);
if a > 5 then begin
writeln('Nilai a lebih besar dari 5');
writeln('Tekan sembarang tombol untuk keluar');
end
else begin
writeln('Nilai a lebih kecil atau sama dengan 5');
writeln('Tekan sembarang tombol untuk keluar');
end;
readkey;
end.

C

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

int a;

void main() {
clrscr();
printf(“Masukkan nilai antara 0 sampai 100 : “);
scanf(“%d”, &a);
if (a > 5) {
printf(“Nilai a lebih besar dari 5\nTekan sembarang tombol untuk keluar”);
} else {

Pengantar Bahasa Pemrograman Pascal

Page 3 / 11

printf(“Nilai a lebih kecil atau sama dengan 5\nTekan sembarang tombol
untuk keluar”);
}
getch();
}

Dua penggalan program di atas akan menghasilkan program yang sama persis yaitu

meminta sebuah input berupa angka antara 0 sampai 100. Kemudian sebuah tulisan akan

muncul tergantung dari nilai input yang dimasukkan.

Dari 2 bahasa tersebut, dapat dilihat bahwa dalam bahasa Pascal lebih sederhana dan

lebih banyak menggunakan bahasa manusia. Sedangkan dalam bahasa C, lebih banyak

penggunaan simbol.

Turbo Pascal dan C merupakan program compiler. Compiler sendiri berarti program

yang menerjemahkan tulisan berupa kode program menjadi bahasa mesin yang dapat

dimengerti oleh komputer. Proses yang dilakukan disebut compile atau compiling. Suatu

program dapat di-compile dengan menggunakan kombinasi tombol Alt + F9. Sedangkan

untuk menjalankan program, tombol yang dapat digunakan adalah Ctrl + F9. Bila selama

proses compile terdapat error atau kesalahan dalam penulisan program, maka Turbo

Pascal atau C akan memberitahukan letak kesalahan tersebut sehingga pengguna dapat

memperbaikinya di halaman editor.

Turbo Pascal merupakan bahasa yang case insensitive yang berarti penulisan dalam huruf

kapital maupun huruf kecil tidak dipermasalahkan. Akan tetapi pada C yang case sensitive,

maka penulisan huruf kapital atau kecil harus benar-benar diperhatikan.

Untuk pembahasan berikutnya, kita akan menggunakan program Turbo Pascal dengan

bahasa pemrograman Pascal sebagai pengantar contoh. Perlu diingat bahwa bila anda

telah menguasai satu bahasa pemrograman, maka anda akan dengan cukup mudah

berpindah ke bahasa pemrograman lainnya selama anda memiliki dasar algoritma dan

logika yang baik. Oleh sebab itu, pada pembahasan yang selanjutnya, yang akan

ditekankan adalah algoritma dan logika, bukan sintaks dan function / procedure yang

terdapat dalam Turbo Pascal. Function atau procedure yang telah disediakan oleh Turbo

Pascal dapat anda pelajari sendiri penggunaannya melalui Help yang terdapat di Turbo

Pascal.

Pengantar Bahasa Pemrograman Pascal

Page 4 / 11

Struktur kode

Pada setiap kode pemrograman, terdapat aturan yang harus dipatuhi agar program

tersebut dapat menjalankan (compile) suatu program dengan baik tanpa error. Struktur

utama pada Turbo Pascal adalah sebagai berikut.

program

uses

label

const

type

var

procedure

function

begin

statement;

...

end.

Tulisan yang diapit oleh tanda kurung kurawal {} adalah comment dan tidak dianggap

sebagai bagian program ketika di-compile oleh compiler. Pada baris pertama, anda dapat

mendeklrasikan nama program. Umumnya untuk mengefisiensikan pengerjaan suatu

program (khususnya pada lomba), baris pertama dapat diacuhkan atau dilewatkan.

Baris kedua yaitu “USES” merupakan deklarasi penggunaan unit dalam Turbo Pascal. Unit

merupakan bagian dari program yang berisi kumpulan function dan procedure. Contoh

fungsi yang banyak digunakan adalah CRT, dengan function yang terdapat di dalamnya

yaitu clrscr dan readkey. Anda dapat menjalankan suatu program tanpa menggunakan

USES, akan tetapi anda hanya dapat menggunakan function dan procedure yang sudah

terkandung secara native dalam Turbo Pascal. Contohnya anda tidak dapat menggunakan

clrscr atau readkey tanpa CRT, tetapi bisa menggunakan writeln dan readln tanpa CRT

tersebut karena CRT merupakan unit untuk pengolahan output ke layar dan input dari

keyboard.

Label digunakan bersamaan dengan keyword GOTO. GOTO sendiri jarang digunakan

karena tidak efisien dan cenderung membingungkan penggunanya.

Const digunakan untuk mendeklarasikan suatu konstan. Konstan merupakan suatu

keyword yang memiliki nilai tertentu. Misalnya bila anda mendeklrasikan PI sebagai 3.14,

maka ketika anda menggunakan PI pada baris program, PI akan digantikan dengan 3.14.

Type digunakan untuk mendeklarasikan suatu tipe data baru dari tipe data yang sudah ada

Pengantar Bahasa Pemrograman Pascal

... ; {deklarasi nama program}

... ; {deklarasi penggunaan unit}

... ; {deklarasi label}

... ; {deklarasi konstant}

... ; {deklarasi tipe data}

... ; {deklarasi variabel}

... ; {deklarasi procedure}

... ; {deklarasi function}

{program ditulis di sini}

Page 5 / 11

sebelumnya. Berguna ketika harus menggunakan pointer.

Var digunakan untuk mendeklarasikan suatu variabel. Variabel yang dideklarasikan harus

memiliki tipe data tertentu. Penjelasan dalam penggunaan variabel akan dibahas di bagian

berikutnya.

Procedure dan function merupakan sub-program. Procedure tidak mengembalikan

nilai, sedangkan function mengembalikan nilai. Procedure dan function mengandung

suatu penggalan program yang dapat dipanggil oleh program utama atau sub-program

yang lainnya. Bila anda belum mengerti maksud dari “mengembalikan nilai” maka anda

dapat membayangkan bahwa hasil dari function dapat dimasukkan ke dalam suatu

variabel atau menghasilkan suatu nilai, sedangkan procedure hanya menjalankan suatu

potongan program. Contoh procedure adalah writeln dan clrscr karena kedua procedure

tersebut tidak mengembalikan nilai apapun. Sedangkan contoh function adalah “sqrt”

yang akan mengembalikan nilai berupa akar kuadrat dari bilangan yang dimasukkan.

Sebagai informasi: “procedure” adalah istilah yang digunakan pada Pascal. Pada bahasa

pemrograman yang lainnya, biasa disebut “function yang tidak mengembalikan nilai” atau

“void function”.

Program utama yang akan dijalankan oleh Turbo Pascal dapat ditulis diantara BEGIN

sampai dengan END.

Variabel dan tipe data

Terdapat beberapa tipe data yang dapat dipergunakan dalam suatu variabel, di antaranya

adalah (beserta range yang dapat diterima):

Integer

Integer (-2^15 sampai 2^15), word (0 sampai 2^16), shortint (-2^7 sampai 2^7), byte (0

sampai 2^7), longint (-2^23 sampai 2^23)

Float / Real

Real (6 byte), singel (4 byte), double (8 byte), extended (10 byte), comp (8 byte)

Boolean

Bernilai TRUE atau FALSE (1 atau 0)

Char

Merupakan integer yang telah dikonversikan ke kode ASCII.

Pengantar Bahasa Pemrograman Pascal

Page 6 / 11

Array

Merupakan deretan suatu variabel yang bertipe data sama. Pembahasan yang lebih

lengkap akan terdapat di bagian tersendiri. String merupakan array dari char.

Algoritma dasar

Pada dasarnya terdapat beberapa algoritma yang harus dikuasai dalam pemrograman

yaitu:

1. Operator

2. Input/output: Bagaimana meminta suatu input dan menampilkan suatu output.

3. Selection: Bagaimana membuat program yang dapat memilih bagian yang akan

dijalankan.

4. Repetition / looping: Bagaimana membuat program yang dapat mengulang suatu

bagian program yang dijalankan.

Rangkuman operator

Dalam bahasa pemrograman, sebuah proses dibagi menjadi 2 yaitu operand dan operator.

Operand dapat berupa variabel atau nilai. Sedangkan operator merupakan tanda-tanda

yang dipak`i untuk mengolah.

Terdapat banyak jenis operator, tapi 4 jenis yang perlu dipelajari untuk saat ini adalah

assignment operator, arithmatic operator, comparison operator, logical operator.

Assignment operator ditandai dengan :=, dan digunakan untuk memberi nilai ke suatu

variabel.

Arithmatic operator ditandai dengan *, /, +, -, div, mod. Digunakan untuk

pengolahan nilai matematika.

Comparison / Relational operator ditandai dengan =, <, >, <=, >=, <>, dan IN.

Digunakan untuk perbandingan 2 nilai sehingga menghasilkan nilai true dan false.

Logical operator ditandai dengan AND, OR, XOR dan NOT. Digunakan untuk

perbandingan logika antara dua pernyataan atau lebih.

Penting: penggunaan = dan := harus diperhatikan karena penggunaan operator ini

terkadang salah tempat.

Input Output:

Terdapat 2 jenis input/output secara umum yaitu layar/keyboard dan file.

Pengantar Bahasa Pemrograman Pascal

Page 7 / 11

Input menggunakan readln() dan read(). Dalam penggunaan melalui keyboard, kedua

procedure ini tidak berbeda. Akan tetapi bila input berasal dari file, kedua procedure akan

berbeda dalam mengambil input. Readln() akan mengambil input dalam suatu baris,

kemudian cursor akan dipindahkan ke baris selanjutnya. Pada read() akan mengambil

input dalam suatu baris, kemudian cursor akan dipindahkan ke sebelah bagian yang

diinput. Bila tidak ada lagi bagian yang dapat diinput, maka cursor baru dipindah ke

bawah.

Output menggunakan writeln() dan write(). Penggunaannya hampir sama dengan yang

read() dan readln(). Pada writeln dan write, keduanya akan berpengaruh baik di file

maupun di layar.

Contoh program:

uses crt;
var a,b: integer;
begin
clrscr;
write('Masukkan bilangan antara 1 - 100: ');
readln(a);
b:= a * 2;
writeln('Bilangan yang dimasukkan adalah ', a);
writeln('Bilangan setelah dikali 2 adalah ', b);
readkey;
end.

Rangkuman Selection

Selection merupakan salah satu proses program di samping sequential (pengerjaan secara

berurut) dan repetition / looping. Dalam selection, program akan memilih bagian yang

akan dijalankan (sehingga terdapat bagian yang tak dijalankan).

Umumnya selection menggunakan IF ... THEN ... ELSE ..., akan tetapi terdapat pula CASE

... OF. Penggunaan IF lebih umum digunakan bila terdapat pilihan yang tidak terlalu

banyak dan eksekusi baris program yang panjang.

Blok pertama untuk IF dijalankan bila condition yang digunakan bernilai TRUE,

sedangkan blok ELSE dijalankan bila nilai conditionnya adalah FALSE.

Contoh:

uses crt;
var bil1, bil2: integer;
begin
clrscr;
write('Masukkan bilangan 1 : ');
readln(bil1);
write('Masukkan bilangan 2 : ');
readln(bil2);

Pengantar Bahasa Pemrograman Pascal

Page 8 / 11

if bil1<bil2 then begin
writeln('Bilangan 1 lebih kecil');
end
else begin
writeln('Bilangan 2 lebih kecil');
end
readkey;

end.

Penggunaan IF dapat dikombinasikan sehingga suatu blok IF dapat menampung blok IF

yang lainnya (nested selection). Penggunaan IF tidak selalu harus selalu bersama ELSE

(simple selection). IF juga dapat digunakan lebih dari satu kondisi setelah ELSE (linear

selection) atau pada IF yang sama menggunakan operator logika / logical operator

(combined selection). Contohnya adalah seperti baris program di bawah:

if (condition1) then begin
if (condition2) then begin
statement1;
stetement2;
end
else if (condition3) then begin
statement3;
statement4;
end
else begin
statement5;
end;
statement6;
statement7;
if (condition4) then begin
statementx;
statementy;
end;
end
else if (conditionx AND conditiony OR conditionz) begin
statement01;
statement02;
end;

Penting: Ada baiknya setiap blok IF selalu dipisahkan dan ditandai dengan spasi kosong

atau menggunakan TAB untuk menghindari kebingungan dalam pembuatan blok

statement.

Rangkuman Repetition / Looping

Repetition dapat digunakan untuk menjalankan suatu bagian program secara berulang-

ulang sesuai dengan kondisi yang ada.

Looping pada Pascal menggunakan beberapa keyword seperti FOR...DO, WHILE...DO dan

REPEAT...UNTIL.

FOR...DO dipergunakan ketika nilai yang akan digunakan sudah diketahui dengan nilai

yang ada di dalamnya selalu ditambah atau dikurangi satu ketika mengalami perulangan.

Pengantar Bahasa Pemrograman Pascal

Page 9 / 11

Sintaks:

FOR variable := startindex (TO/DOWNTO) endindex DO BEGIN

statement;

END;

Dari sintaks di atas, terdapat dua jenis perubahan yang dapat digunakan, yaitu TO dan

DOWNTO. TO akan menghasilkan nilai incremental atau penambahan satu setiap kali

terjadi perulangan. Sedangkan DOWNTO akan menghasilkan nilai decremental atau

pengurangan satu setiap kali terjadi perulangan.

Contoh penggunaan FOR...DO:

for i:=1 to 10 do begin

write(i,' ');

end;

for j:=10 downto 1 do begin

write(j,' ');

end;

WHILE...DO dapat digunakan tanpa harus ada perubahan pada nilai kondisi. Selama

kondisi masih bernilai TRUE, maka perulangan akan dilakukan terus.

Sintaks:

WHILE (condition) DO BEGIN

statement;

END;

Contoh penggunaan WHILE...DO:

i:=10;

while i>2 do begin

i:=i-2;

writeln(i);

end;

REPEAT...UNTIL berfungsi hampir sama dengan WHILE...DO. Pada REPEAT...UNTIL,

looping akan berhenti justru ketika kondisi bernilai TRUE. Selain itu kondisi akan diuji

pada akhir perulangan sehingga blok di dalam perulangan akan dijalankan minimal satu

kali walaupun kondisi yang ada masih FALSE.

Pengantar Bahasa Pemrograman Pascal

Page 10 / 11

Sintaks:

REPEAT

statement;

UNTIL (condition);

Contoh penggunaan REPEAT...UNTIL:

i:=10;

repeat

i:=i-3;

writeln(i);

until i<1;

Dari penggalan program di atas, dapat dilihat bahwa REPEAT...UNTIL tidak memerlukan

BEGIN dan END untuk menjalankan suatu blok statement.

TIPS: Gunakan variabel i, j, k, dan seterusnya untuk menandai indeks perulangan atau

looping.

PENGANTAR BAHASA PEMROGRAMAN TURBO PASCAL

License Agreements

Sebelum anda membaca isi dari buku digital (e-book) ini, anda harus membaca dengan

baik dan menyetujui seluruh isi dari persetujuan lisensi (License Agreements) yang dimuat

di halaman ini.

Seluruh materi yang ada di dalam e-book ini merupakan hak cipta dari penulis. Walau

demikian isi dari e-book ini dapat dicetak dan didistribusikan dalam bentuk hard copy

melalui media printing atau fotocopy. Pendistribusian dari e-book ini harus melampirkan

setiap halaman yang ada di dalam e-book, termasuk pula halaman License Agreements ini.

Isi dari buku ini tidak boleh diubah tanpa persetujuan dari penulis. Penulis harus

mengetahui setiap perubahan yang akan dibuat oleh pihak ketiga terhadap isi e-book ini.

Melalui lisensi ini penulis hanya ingin para pembaca menyadari betapa sakitnya bila karya

yang telah dibuat oleh penulis-penulis (termasuk penulis yang lain) dibajak oleh orang-

orang tak bertanggung jawab sehingga penulis tersebut tidak mendapat credit atau

penghargaan atas karyanya sendiri.

Selain hal di atas, pembaca juga harus menyetujui paling tidak 3 hal dari 5 hal yang ada di

bawah ini:

1. Pembaca setuju untuk mengurangi penggunaan kendaraan pribadi sebanyak 30%

atau lebih.

2. Pembaca setuju untuk menghemat listrik dalam kegiatan sehari-hari.

3. Pembaca setuju untuk menghemat penggunaan air dalam kegiatan sehari-hari.

4. Pembaca setuju untuk membuang sampah pada tempat yang benar. :)

5. Pembaca setuju untuk membuat suatu karya digital sebagai bentuk dukungan

terhadap Comptius dan mungkin akan diperlombakan.

Bila anda tidak menyetujui isi dari Copyright License, anda dapat segera menutup e-book

ini. Lisensi ini hanya berlaku untuk karya yang dibuat oleh William.

Pengantar Bahasa Pemrograman Pascal

Page 2 / 11

Pengenalan Pascal

Pascal merupakan salah satu bahasa pemrograman tingkat tinggi. Pemrograman tingkat

tinggi menandakan bahwa Pascal banyak menggunakan bahasa manusia dalam penulisan

sintaksnya.

Beberapa bahasa pemrograman tingkat tinggi lainnya yang ada yaitu BASIC dan DELPHI.

Sedangkan bahasa pemrograman tingkat rendah yaitu bahasa pemrograman yang masih

banyak menggunakan tanda-tanda sehingga bahasa ini cenderung lebih “kotor”. Beberapa

bahasa pemrograman tingkat rendah yang sering digunakan adalah C, C++ dan Java.

Mari kita melihat perbedaan antara bahasa Pascal dan C untuk pembanding dalam sintaks

yang digunakan:

PASCAL

uses crt;
var a : integer;
begin
clrscr;
writeln('Masukkan nilai antara 0 sampai 100 : ');
readln(a);
if a > 5 then begin
writeln('Nilai a lebih besar dari 5');
writeln('Tekan sembarang tombol untuk keluar');
end
else begin
writeln('Nilai a lebih kecil atau sama dengan 5');
writeln('Tekan sembarang tombol untuk keluar');
end;
readkey;
end.

C

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

int a;

void main() {
clrscr();
printf(“Masukkan nilai antara 0 sampai 100 : “);
scanf(“%d”, &a);
if (a > 5) {
printf(“Nilai a lebih besar dari 5\nTekan sembarang tombol untuk keluar”);
} else {

Pengantar Bahasa Pemrograman Pascal

Page 3 / 11

printf(“Nilai a lebih kecil atau sama dengan 5\nTekan sembarang tombol
untuk keluar”);
}
getch();
}

Dua penggalan program di atas akan menghasilkan program yang sama persis yaitu

meminta sebuah input berupa angka antara 0 sampai 100. Kemudian sebuah tulisan akan

muncul tergantung dari nilai input yang dimasukkan.

Dari 2 bahasa tersebut, dapat dilihat bahwa dalam bahasa Pascal lebih sederhana dan

lebih banyak menggunakan bahasa manusia. Sedangkan dalam bahasa C, lebih banyak

penggunaan simbol.

Turbo Pascal dan C merupakan program compiler. Compiler sendiri berarti program

yang menerjemahkan tulisan berupa kode program menjadi bahasa mesin yang dapat

dimengerti oleh komputer. Proses yang dilakukan disebut compile atau compiling. Suatu

program dapat di-compile dengan menggunakan kombinasi tombol Alt + F9. Sedangkan

untuk menjalankan program, tombol yang dapat digunakan adalah Ctrl + F9. Bila selama

proses compile terdapat error atau kesalahan dalam penulisan program, maka Turbo

Pascal atau C akan memberitahukan letak kesalahan tersebut sehingga pengguna dapat

memperbaikinya di halaman editor.

Turbo Pascal merupakan bahasa yang case insensitive yang berarti penulisan dalam huruf

kapital maupun huruf kecil tidak dipermasalahkan. Akan tetapi pada C yang case sensitive,

maka penulisan huruf kapital atau kecil harus benar-benar diperhatikan.

Untuk pembahasan berikutnya, kita akan menggunakan program Turbo Pascal dengan

bahasa pemrograman Pascal sebagai pengantar cnntoh. Perlu diingat bahwa bila anda

telah menguasai satu bahasa pemrograman, maka anda akan dengan cukup mudah

berpindah ke bahasa pemrograman lainnya selama anda memiliki dasar algoritma dan

logika yang baik. Oleh sebab itu, pada pembahasan yang selanjutnya, yang akan

ditekankan adalah algoritma dan logika, bukan sintaks dan function / procedure yang

terdapat dalam Turbo Pascal. Function atau procedure yang telah disediakan oleh Turbo

Pascal dapat anda pelajari sendiri penggunaannya melalui Help yang terdapat di Turbo

Pascal.

Pengantar Bahasa Pemrograman Pascal

Page 4 / 11

Struktur kode

Pada setiap kode pemrograman, terdapat aturan yang harus dipatuhi agar program

tersebut dapat menjalankan (compile) suatu program dengan baik tanpa error. Struktur

utama pada Turbo Pascal adalah sebagai berikut.

program

uses

label

const

type

var

procedure

function

begin

statement;

...

end.

Tulisan yang diapit oleh tanda kurung kurawal {} adalah comment dan tidak dianggap

sebagai bagian program ketika di-compile oleh compiler. Pada baris pertama, anda dapat

mendeklrasikan nama program. Umumnya untuk mengefisiensikan pengerjaan suatu

program (khususnya pada lomba), baris pertama dapat diacuhkan atau dilewatkan.

Baris kedua yaitu “USES” merupakan deklarasi penggunaan unit dalam Turbo Pascal. Unit

merupakan bagian dari program yang berisi kumpulan function dan procedure. Contoh

fungsi yang banyak digunakan adalah CRT, dengan function yang terdapat di dalamnya

yaitu clrscr dan readkey. Anda dapat menjalankan suatu program tanpa menggunakan

USES, akan tetapi anda hanya dapat menggunakan function dan procedure yang sudah

terkandung secara native dalam Turbo Pascal. Contohnya anda tidak dapat menggunakan

clrscr atau readkey tanpa CRT, tetapi bisa menggunakan writeln dan readln tanpa CRT

tersebut karena CRT merupakan unit untuk pengolahan output ke layar dan input dari

keyboard.

Label digunakan bersamaan dengan keyword GOTO. GOTO sendiri jarang digunakan

karena tidak efisien dan cenderung membingungkan penggunanya.

Const digunakan untuk mendeklarasikan suatu konstan. Konstan merupakan suatu

keyword yang memiliki nilai tertentu. Misalnya bila anda mendeklrasikan PI sebagai 3.14,

maka ketika anda menggunakan PI pada baris program, PI akan digantikan dengan 3.14.

Type digunakan untuk mendeklarasikan suatu tipe data baru dari tipe data yang sudah ada

Pengantar Bahasa Pemrograman Pascal

... ; {deklarasi nama program}

... ; {deklarasi penggunaan unit}

... ; {deklarasi label}

... ; {deklarasi konstant}

... ; {ddklarasi tipe data}

... ; {deklarasi variabel}

... ; {deklarasi procedure}

... ; {deklarasi function}

{program ditulis di sini}

Page 5 / 11

sebelumnya. Berguna ketika harus menggunakan pointer.

Var digunakan untuk mendeklarasikan suatu variabel. Variabel yang dideklarasikan harus

memiliki tipe data tertentu. Penjelasan dalam penggunaan variabel akan dibahas di bagian

berikutnya.

Procedure dan function merupakan sub-program. Procedure tidak mengembalikan

nilai, sedangkan function mengembalikan nilai. Procedure dan function mengandung

suatu penggalan program yang dapat dipanggil oleh program utama atau sub-program

yang lainnya. Bila anda belum mengerti maksud dari “mengembalikan nilai” maka anda

dapat membayangkan bahwa hasil dari function dapat dimasukkan ke dalam suatu

variabel atau menghasilkan suatu nilai, sedangkan procedure hanya menjalankan suatu

potongan program. Contoh procedure adalah writeln dan clrscr karena kedua procedure

tersebut tidak mengembalikan nilai apapun. Sedangkan contoh function adalah “sqrt”

yang akan mengembalikan nilai berupa akar kuadrat dari bilangan yang dimasukkan.

Sebagai informasi: “procedure” adalah istilah yang digunakan pada Pascal. Pada bahasa

pemrograman yang lainnya, biasa disebut “function yang tidak mengembalikan nilai” atau

“void function”.

Program utama yang akan dijalankan oleh Turbo Pascal dapat ditulis diantara BEGIN

sampai dengan END.

Variabel dan tipe data

Terdapat beberapa tipe data yang dapat dipergunakan dalam suatu variabel, di antaranya

adalah (beserta range yang dapat diterima):

Integer

Integer (-2^15 sampai 2^15), word (0 sampai 2^16), shortint (-2^7 sampai 2^7), byte (0

sampai 2^7), longint (-2^23 sampai 2^23)

Float / Real

Real (6 byte), singel (4 byte), double (8 byte), extended (10 byte), comp (8 byte)

Boolean

Bernilai TRUE atau FALSE (1 atau 0)

Char

Merupakan integer yang telah dikonversikan ke kode ASCII.

Pengantar Bahasa Pemrograman Pascal

Page 6 / 11

Array

Merupakan deretan suatu variabel yang bertipe data sama. Pembahasan yang lebih

lengkap akan terdapat di bagian tersendiri. String merupakan array dari char.

Algoritma dasar

Pada dasarnya terdapat beberapa algoritma yang harus dikuasai dalam pemrograman

yaitu:

1. Operator

2. Input/output: Bagaimana meminta suatu input dan menampilkan suatu output.

3. Selection: Bagaimana membuat program yang dapat memilih bagian yang akan

dijalankan.

4. Repetition / looping: Bagaimana membuat program yang dapat mengulang suatu

bagian program yang dijalankan.

Rangkuman operator

Dalam bahasa pemrograman, sebuah proses dibagi menjadi 2 yaitu operand dan operator.

Operand dapat berupa variabel atau nilai. Sedangkan operator merupakan tanda-tanda

yang dipakai untuk mengolah.


assignment operator, arithmatic operator, comparison operator, logical operator.

Assignment operator ditandai dengan :=, dan digunakan untuk memberi nilai ke suatu

variabel.

Arithmatic operator ditandai dengan *, /, +, -, div, mod. Digunakan untuk

pengolahan nilai matematika.

Comparison / Relational operator ditandai dengan =, <, >, <=, >=, <>, dan IN.

Digunakan untuk perbandingan 2 nilai sehingga menghasilkan nilai true dan false.

Logical operator ditandai dengan AND, OR, XOR dan NOT. Digunakan untuk

perbandingan logika antara dua pernyataan atau lebih.

Penting: penggunaan = dan := harus diperhatikan karena penggunaan operator ini

terkadang salah tempat.

Input Output:

Terdapat 2 jenis input/output secara umum yaitu layar/keyboard dan file.

Pengantar Bahasa Pemrograman Pascal

Page 7 / 11

Input menggunakan readln() dan read(). Dalam penggunaan melalui keyboard, kedua

procedure ini tidak berbeda. Akan tetapi bila input berasal dari file, kedua procedure akan

berbeda dalam mengambil input. Readln() akan mengambil input dalam suatu baris,

kemudian cursor akan dipindahkan ke baris selanjutnya. Pada read() akan mengambil

input dalam suatu baris, kemudian cursor akan dipindahkan ke sebelah bagian yang

diinput. Bila tidak ada lagi bagian yang dapat diinput, maka cursor baru dipindah ke

bawah.

Output menggunakan writeln() dan write(). Penggunaannya hampir sama dengan yang

read() dan readln(). Pada writeln dan write, keduanya akan berpengaruh baik di file

maupun di layar.

Contoh program:

uses crt;
var a,b: integer;
begin
clrscr;
write('Masukkan bilangan antara 1 - 100: ');
readln(a);
b:= a * 2;
writeln('Bilangan yang dimasukkan adalah ', a);
writeln('Bilangan setelah dikali 2 adalah ', b);
readkey;
end.

Rangkuman Selection

Selection merupakan salah satu proses program di samping sequential (pengerjaan secara

berurut) dan repetition / looping. Dalam selection, program akan memilih bagian yang

akan dijalankan (sehingga terdapat bagian yang tak dijalankan).

Umumnya selection menggunakan IF ... THEN ... ELSE ..., akan tetapi terdapat pula CASE

... OF. Penggunaan IF lebih umum digunakan bila terdapat pilihan yang tidak terlalu

banyak dan eksekusi baris program yang panjang.

Blok pertama untuk IF dijalankan bila condition yang digunakan bernilai TRUE,

sedangkan blok ELSE dijalankan bila nilai conditionnya adalah FALSE.

Contoh:

uses crt;
var bil1, bil2: integer;
begin
clrscr;
write('Masukkan bilangan 1 : ');
readln(bil1);
write('Masukkan bilangan 2 : ');
readln(bil2);

Pengantar Bahasa Pemrograman Pascal

Page 8 / 11

if bil1<bil2 then begin
writeln('Bilangan 1 lebih kecil');
end
else begin
writeln('Bilangan 2 lebih kecil');
end
readkey;

end.

Penggunaan IF dapat dikombinasikan sehingga suatu blok IF dapat menampung blok IF

yang lainnya (nested selection). Penggunaan IF tidak selalu harus selalu bersama ELSE

(simple selection). IF juga dapat digunakan lebih dari satu kondisi setelah ELSE (linear

selection) atau pada IF yang sama menggunakan operator logika / logical operator

(combined selection). Contohnya adalah seperti baris program di bawah:

if (condition1) then begin
if (condition2) then begin
statement1;
stetement2;
end
else if (condition3) then begin
statement3;
statement4;
end
else begin
statement5;
end;
statement6;
statement7;
if (condition4) then begin
statementx;
statementy;
end;
end
else if (conditionx AND conditiony OR conditionz) begin
statement01;
statement02;
end;

Penting: Ada baiknya setiap blok IF selalu dipisahkan dan ditandai dengan spasi kosong

atau menggunakan TAB untuk menghindari kebingungan dalam pembuatan blok

statement.

Rangkuman Repetition / Looping

Repetition dapat digunakan untuk menjalankan suatu bagian program secara berulang-

ulang sesuai dengan kondisi yang ada.

Looping pada Pascal menggunakan beberapa keyword seperti FOR...DO, WHILE...DO dan

REPEAT...UNTIL.

FOR...DO dipergunakan ketika nilai yang akan digunakan sudah diketahui dengan nilai

yang ada di dalamnya selalu ditambah atau dikurangi satu ketika mengalami perulangan.

Pengantar Bahasa Pemrograman Pascal

Page 9 / 11

Sintaks:

FOR variable := startindex (TO/DOWNTO) endindex DO BEGIN

statement;

END;

Dari sintaks di atas, terdapat dua jenis perubahan yang dapat digunakan, yaitu TO dan

DOWNTO. TO akan menghasilkan nilai incremental atau penambahan satu setiap kali

terjadi perulangan. Sedangkan DOWNTO akan menghasilkan nilai decremental atau

pengurangan satu setiap kali terjadi perulangan.

Contoh penggunaan FOR...DO:

for i:=1 to 10 do begin

write(i,' ');

end;

for j:=10 downto 1 do begin

write(j,' ');

end;

WHILE...DO dapat digunakan tanpa harus ada perubahan pada nilai kondisi. Selama

kondisi masih bernilai TRUE, maka perulangan akan dilakukan terus.

Sintaks:

WHILE (condition) DO BEGIN

statement;

END;

Contoh penggunaan WHILE...DO:

i:=10;

while i>2 do begin

i:=i-2;

writeln(i);

end;

REPEAT...UNTIL berfungsi hampir sama dengan WHILE...DO. Pada REPEAT...UNTIL,

looping akan berhenti justru ketika kondisi bernilai TRUE. Selain itu kondisi akan diuji

pada akhir perulangan sehingga blok di dalam perulangan akan dijalankan minimal satu

kali walaupun kondisi yang ada masih FALSE.

Pengantar Bahasa Pemrograman Pascal

Page 10 / 11

Sintaks:

REPEAT

statement;

UNTIL (condition);

Contoh penggunaan REPEAT...UNTIL:

i:=10;

repeat

i:=i-3;

writeln(i);

until i<1;

Dari penggalan program di atas, dapat dilihat bahwa REPEAT...UNTIL tidak memerlukan

BEGIN dan END untuk menjalankan suatu blok statement.

TIPS: Gunakan variabel i, j, k, dan seterusnya untuk menandai indeks perulangan atau

looping.

Flowchart
Flowchart adalah jenis diagram, yang mewakili sebuah algoritma atau proses, menunjukkan langkah-langkah sebagai kotak dari berbagai jenis, dan pesanan mereka dengan menghubungkan ini dengan panah. Representasi diagram dapat memberikan solusi langkah-demi-langkah untuk masalah tertentu. Data direpresentasikan dalam kotak-kotak, dan panah menghubungkan mereka mewakili aliran / arah aliran data. Flowchart digunakan dalam menganalisis, merancang, mendokumentasikan atau mengelola proses atau program di berbagai bidang [1].
Sejarah
Metode terstruktur pertama untuk mendokumentasikan aliran proses, "aliran proses grafik", diperkenalkan oleh Frank Gilbreth kepada anggota American Society of Mechanical Engineers (ASME) pada tahun 1921 dalam presentasi "Proses Charts-Langkah Pertama di Menemukan One Way Terbaik ". Alat Gilbreth dengan cepat menemukan cara mereka ke dalam kurikulum teknik industri. Pada awal 1930-an, seorang insinyur industri, Allan H. Mogensen mulai melatih orang-orang bisnis dalam penggunaan beberapa alat teknik industri di Konferensi Kerja Penyederhanaan di Lake Placid, New York.
Lulusan 0944 kelas Mogensen 's, Seni Spinanger, mengambil alat kembali ke Procter and Gamble di mana dia mengembangkan Program disengaja mereka Metode Ubah. Lulusan lain 1944, Ben S. Graham, Direktur Teknik di Formcraft Standar Daftar Corporation, mengadaptasi diagram alir proses pengolahan informasi dengan perkembangan dari bagan aliran multi-proses untuk menampilkan beberapa dokumen dan hubungan mereka. [2] Pada tahun 1947, ASME mengadopsi serangkaian simbol yang berasal dari karya asli Gilbreth sebagai Standar ASME untuk Proses Charts oleh Mishad, Ramsan & Raiaan.
Douglas Hartree menjelaskan bahwa Herman Goldstine dan John von Neumann mengembangkan diagram alur (awalnya, diagram) untuk merencanakan program komputer. [3] akun kontemporer-Nya didukung oleh insinyur IBM [4] dan oleh kenangan pribadi Goldstine itu. [5] pemrograman asli aliran grafik dari Goldstine dan von Neumann dapat dilihat dalam laporan tidak diterbitkan mereka, "Perencanaan dan pengkodean masalah bagi alat komputasi elektronik, Bagian II, Volume 1" (1947), yang direproduksi dalam karya von Neumann dikumpulkan [6].
Flowchart digunakan untuk menjadi sarana populer untuk menggambarkan algoritma komputer dan masih digunakan untuk tujuan ini. [7] teknik modern seperti diagram UMLactivity dapat dianggap sebagai perpanjangan dari diagram alur. Pada 1970-an popularitas diagram alur sebagai metode sendiri menurun ketika interaktif terminal komputer dan generasi ketiga bahasa pemrograman menjadi alat umum perdagangan, karena algoritma dapat dinyatakan jauh lebih ringkas dan readably sebagai kode sumber dalam bahasa tersebut. Seringkali pseudo-kode yang digunakan, yang menggunakan idiom umum bahasa tersebut tanpa benar-benar mengikuti rincian satu tertentu.
Flowchart blok bangunan
Contoh flowchart sederhana untuk menghitung faktorial N (10!)
Sebuah flowchart untuk menghitung faktorial N (10!) Di mana N! = (1 * 2 * 3 * 4 * 5 * 6 * 7 * 8 * 9 * 10), lihat gambar. Flowchart ini merupakan "lingkaran dan setengah" - situasi yang dibahas dalam buku teks pengantar pemrograman yang membutuhkan baik duplikasi komponen (menjadi baik di dalam dan di luar loop) atau komponen untuk diletakkan di dalam cabang di loop. (Catatan:. Beberapa buku merekomendasikan ini "loop dan setengah" karena dianggap struktur buruk, bukan sebuah 'priming membaca' harus digunakan dan loop harus kembali kembali ke pertanyaan awal dan bukan di atas [8])
[Sunting] Simbol
Sebuah diagram alur khas dari buku teks ilmu komputer yang lebih tua mungkin memiliki jenis berikut simbol:
Mulai dan akhiri simbol
Direpresentasikan sebagai lingkaran, oval atau empat persegi panjang bulat, biasanya yang berisi kata "Start" atau "End", atau frase lain sinyal awal atau akhir dari suatu proses, seperti "submit penyelidikan" atau "menerima produk".
Panah
Menampilkan apa yang disebut "aliran kontrol" dalam ilmu komputer. Sebuah panah yang datang dari satu simbol dan berakhir pada simbol lain menyatakan bahwa kontrol lolos ke simbol panah menunjuk ke.
Langkah-langkah pengerjaan
Direpresentasikan sebagai persegi panjang. Contoh: "Tambahkan 1 ke X"; "mengganti bagian diidentifikasi"; "simpan perubahan" atau mirip.
Input / Output
Direpresentasikan sebagai genjang. Contoh: Dapatkan X dari pengguna; tampilan X.
Bersyarat atau keputusan
Direpresentasikan sebagai berlian (belah ketupat). Ini biasanya berisi Ya / Tidak ada pertanyaan atau Benar / Salah tes. Simbol ini adalah unik karena memiliki dua anak panah keluar dari itu, biasanya dari titik bawah dan titik yang tepat, salah satu sesuai dengan Ya atau Benar, dan satu sesuai ke Tidak atau Salah. Tanda panah harus selalu labeled.A keputusan diperlukan dalam suatu diagram alur. Lebih dari dua panah dapat digunakan, tetapi ini biasanya indikator yang jelas bahwa keputusan yang kompleks sedang diambil, dalam hal ini mungkin perlu dipecah-pecah lebih lanjut, atau diganti dengan simbol "yang telah ditentukan proses".
Sejumlah simbol lain yang memiliki mata uang kurang universal, seperti:
• Sebuah Dokumen direpresentasikan sebagai persegi panjang dengan dasar bergelombang;$0D
• A input manual diwakili oleh genjang, dengan bagian atas miring tidak teratur naik dari kiri ke kanan. Sebuah contoh akan untuk menandakan pemasukan data dari formulir;
• Sebuah Manual operasi diwakili oleh suatu trapesium dengan sisi sejajar terpanjang di atas, untuk mewakili operasi atau penyesuaian untuk proses yang hanya dapat dilakukan secara manual.
• Sebuah File Data direpresentasikan oleh silinder.
Flowchart mungkin berisi simbol-simbol lain, seperti konektor, biasanya direpresentasikan sebagai lingkaran, untuk mewakili jalan konvergen dalam flowchart. Lingkaran akan memiliki lebih dari satu panah yang masuk ke mereka tapi hanya satu keluar. Beberapa diagram alur mungkin hanya memiliki titik panah untuk panah lain sebagai gantinya. Ini berguna untuk mewakili berulang-ulang proses (apa yang dalam Ilmu Komputer disebut loop). Sebuah lingkaran mungkin, misalnya, terdiri dari konektor di mana kontrol pertama masuk, langkah-langkah pengolahan, bersyarat dengan satu panah keluar loop, dan satu akan kembali ke konektor. Off-halaman konektor sering digunakan untuk menandak`n sambungan ke proses (bagian lain) yang diadakan pada selembar atau layar. Adalah penting untuk mengingat untuk menjaga hubungan logis dalam rangka. Semua proses harus mengalir dari atas ke bawah dan kiri ke kanan.
Jenis-jenis flowchart

 Contoh flowchart sistem.
Sterneckert (2003) menyarankan bahwa diagram alur dapat dimodelkan dari perspektif kelompok pengguna yang berbeda (seperti manajer, analis sistem dan panitera) dan bahwa ada empat tipe umum: [9]
• Dokumen diagram alur, menunjukkan kontrol atas aliran-dokumen melalui sistem
• Data diagram alur, menunjukkan kontrol atas data mengalir dalam suatu sistem
• Sistem flowchart menunjukkan kontrol pada tingkat fisik atau sumber daya
• Program flowchart, menunjukkan kontrol dalam sebuah program dalam suatu sistem
Perhatikan bahwa setiap jenis diagram alur memfokuskan pada beberapa jenis kontrol, bukan pada aliran tertentu itu sendiri. [9]
Namun ada beberapa klasifikasi ini. Sebagai contoh Andrew Veronis (1978) bernama tiga jenis dasar flowchart:. Bagan alur sistem, diagram alur umum, dan diagram alur rinci [10] Pada tahun yang sama Marilyn Bohl (1978) menyatakan "dalam praktiknya, dua jenis diagram alur yang digunakan dalam solusi perencanaan: diagram alur sistem dan diagram alur program ... "[11] Baru-baru ini Mark A. Fryman (2001) menyatakan bahwa ada lebih banyak perbedaan." Keputusan diagram alur, diagram alur logika, diagram alur sistem, diagram alur produk, dan diagram alur proses hanya beberapa dari berbagai jenis diagram alur yang digunakan dalam bisnis dan pemerintah "[12].
Selain itu, teknik diagram ada banyak yang mirip dengan diagram alur tapi membawa nama yang berbeda, seperti diagram UMLactivity.
Perangkat lunak
Sebuah template kertas dan pensil untuk menggambar diagram alur, akhir tahun 1970.
Setiap program menggambar dapat digunakan untuk membuat diagram flowchart, tetapi ini tidak akan memiliki data model dasar untuk berbagi data dengan database atau program lain seperti sistem manajemen proyek atau spreadsheet. Beberapa alat menawarkan dukungan khusus untuk menggambar flowchart. Paket perangkat lunak yang ada yang dapat membuat diagram alur secara otomatis, baik secara langsung dari kode sumber, atau dari bahasa flowchart deskripsi. On-line berbasis Web versi program tersebut tersedia
Catatan
1. ^ SEVOCAB: Software dan Kosakata Sistem dan Teknik. Term: bagan alir. Diperoleh 31 Juli 2008.
2. ^ Graham, Jr, Ben S. (10 Juni 1996). "Orang-orang datang pertama". Keynote Alamat dan Workflow Kanada. http://www.worksimp.com/articles/keynoteworkflowcanada.htm.
3. ^ Hartree, Douglas (1949). Menghitung Instrumen dan Mesin. University of Illinois Press. hal. 112.
4. ^ Bashe, Charles (1986). IBM Awal Komputer. The MIT Press. hal. 327.
5. ^ Goldstine, Herman (1972). Komputer dari Pascal ke Von Neumann. Princeton University Press. hal 266-267. ISBN0-691-08104-2.
6. ^ Taub, Abraham (1963). John von Neumann Collected Works. 5. Macmillan. hal 80-151.
7. ^ Bohl, Rynn: "Tools untuk Desain Terstruktur dan Berorientasi Objek", Prentice Hall, 2007.
8. ^ Farrell, Joyce (2008). "Pemrograman Logika dan Desain, ed 5". Komprehensif
9. ^ Ab Alan B. Sterneckert (2003) Manajemen Insiden Kritis. hal. 126
10. ^ Andrew Veronis (1978) Mikroprosesor: Desain dan Aplikasi. hal. 111
11. ^ Marilyn Bohl (1978) Panduan bagi pemrogram. hal. 65.
12. ^ Mark A. Fryman (2001) Kualitas dan Perbaikan Proses. hal. 169


0 komentar:

Posting Komentar