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
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