Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

PERTEMUAN 1 Algoritma & Pemrograman

Presentasi serupa


Presentasi berjudul: "PERTEMUAN 1 Algoritma & Pemrograman"— Transcript presentasi:

1 PERTEMUAN 1 Algoritma & Pemrograman
Presented by : Sity Aisyah, M.Kom Blog : yeshasalsabila.blogspot.com 1

2 KONSEP ALGORITMA Definisi Algoritma :
Teknik penyusunan langkah-langkah penyelesaian masalah dalam bentuk kalimat dengan jumlah kata terbatas tetapi tersusun secara logis dan sistematis. Suatu prosedur yang jelas untuk menyelesaikan suatu persoalan dengan menggunakan langkah-langkah tertentu dan terbatas jumlahnya. Susunan langkah yang pasti, yang bila diikuti maka akan mentransformasi data input menjadi output yang berupa informasi. 2

3 Sejarah Algoritma Abu Ja’far Muhammad Ibnu Musa Al-Khawarizmi : Ahli matematika dan astronomi Persia, penulis buku “Aljabar wal muqabala” beberapa abad yang lalu (diperkirakan wafat pada tahun 850), dianggap sebagai pencetus pertama algoritma karena di dalam bukunya Abu Ja’far menjelaskan langkah-langkah dalam menyelesaikan berbagai persoalan aritmetika (aljabar). Kata Algoritma diambil dari kata Al-Khawarizmi yang kemudian berubah menjadi algorism, selanjutnya menjadi Algorithm. 3

4 Ciri Algoritma Donald E.Knuth, penulis beberapa buku algoritma abad XX, menyatakan bahwa ada beberapa ciri algoritma yaitu : Algoritma mempunyai awal & akhir. Suatu algoritma harus berhenti setelah mengerjakan serangkaian tugas dengan kata lain, suatu algoritma memiliki langkah yang terbatas. Setiap langkah harus didefinisikan dengan tepat sehingga tidak memiliki arti ganda, tidak membingungkan (not ambiguous). Memiliki masukan (input). Memiliki kelularan (output). Algoritma harus efektif, bila diikuti benar-benar maka akan menyelesaikan persoalan. 4

5 Sifat Algoritma Input : Suatu algoritma memiliki input atau kondisi awal sebelum dilaksanakan, bisa berupa nilai-nilai peubah yang diambil dari himpunan khusus. Output : Suatu algoritma akan menghasilkan output setelah dilaksanakan, dimana nilai output diperoleh dari nilai input yang telah diproses melalui algoritma. Definiteness : Langkah-langkah yang dituliskan dalam algoritma terdefinisi dengan jelas sehingga mudah dilaksanakan oleh pengguna algoritma. Finiteness : Suatu algoritma harus memberi kondisi akhir atau output setelah sejumlah langkah yang terbatas jumlahnya dilakukan terhadap kondisi awal atau input yang diberikan. Effectiveness : Setiap langkah dalam algoritma bisa dilaksanakan dalam suatu selang waktu tertentu sehingga pada akhirnya didapatkan solusi yang diharapkan. Generality : Langkah-langkah algoritma berlaku untuk setiap himpunan input yang sesuai dengan persoalan yang diberikan, tidak hanya untuk himpunan tertentu. 5

6 Beberapa notasi yang digunakan untuk menulis algoritma sbb :
Notasi Algoritma Beberapa notasi yang digunakan untuk menulis algoritma sbb : Menyatakan langkah-langkah dengan untaian kalimat deskriptif (Algoritma Euclidean) Menggunakan Diagram Alir (Flowchart) Menggunakan Pseudocode 6

7 Struktur Algoritma Agar algoritma dapat ditulis lebih teratur maka struktur algoritma sebaiknya dibagi ke dalam beberapa bagian. Salah satu struktur yang sering dijadikan patokan adalah sbb : Bagian Kepala (Header) : memuat nama algoritma serta informasi atau keterangan tentang algoritma yang ditulis. Bagian Deklarasi (Definisi Variabel) : memuat definisi nama variabel, nama tetapan, nama prosedur, nama fungsi, tipe data yang akan digunakan dalam algoritma. Bagian Deskripsi (Rincian Langkah) : memuat langkah-langkah penyelesaian masalah, termasuk beberapa perintah seperti baca dan tampilkan, ulangi, yang mengubah data input menjadi output, dsb. 7

8 Contoh : berikut ini contoh struktur sebuah algoritma
Contoh : berikut ini contoh struktur sebuah algoritma. Algoritma yang menerima 2 buah angka bulat kemudian menampilkan angka yang lebih besar. Algoritma Lebih_besar {menerima 2angka kemudian menampilkan angka yang lebih besar} Definisi Variable integer angka1, angka2; Rincian Langkah {memasukkan angka} write (“Masukkan angka 1 :”); read (angka1); write (“Masukkan angka 2 :”); read (angka2); {periksa yang lebih besar} If(angka1 > angka2) then write(“yang lebih besar=“,angka1); else write(“yang lebih besar=“,angka2); endif.

9 Flowcharting Adalah suatu teknik untuk menyusun rencana program yang telah diperkenalkan dan telah dipergunakan oleh kalangan programmer sebelum algoritma menjadi populer. Flowchart adalah untaian simbol gambar (chart) yang menunjukkan aliran (flow) dari proses terhadap data. Seorang programmer harus mampu membuat flowchart, harus mampu membaca dan mengerti flowchart, dan sanggup menerjemahkan flowchart ke algoritma dan sebaliknya. Ada dua kategori simbol flowchart, yaitu program flowchart dan sistem flowchart. 9

10 Program Flowchart, yaitu simbol-simbol flowchart yang digunakan untuk menggambarkan logik dari pemrosesan terhadap data. Terminator (mulai atau selesai) Predefined-Data (definisi awal dari variabel) Proses (menyatakan proses terhadap data) Predefined-Process (lambang fungsi atau sub-program) Input/Output (menerima input atau menampilkan output) Connector (penghubung) Seleksi/Pilihan (memilih aliran berdasarkan syarat Off-page Connector (penghubung-penghubung halaman pada halaman yg berbeda 10

11 Sistem Flowchart, yaitu simbol-simbol peralatan sistem komputer yang digunakan untuk menyatakan proses pengolahan data. Keyboard Magnetic Tape Printer Magnetic Disc File Storage Sorting Display/Monitor Extract 11

12 Contoh : Gambarkan flowchart dari proses pemilihan satu bilangan yang lebih besar diantara dua buah bilangan. Mulai Masukkan A dan B Apakah A > B? Bila Ya, Cetak A Bila Tidak, Cetak B Selesai Mulai Input A,B A > B ? Cetak A Y N Cetak B Selesai

13 Pseudocode Adalah semu atau tidak sebenarnya, merupakan notasi yang menyerupai motasi bahasa pemrograman tingkat tinggi, khususnya bahasa Pascal dan C. Kemudahan menggunakan pseudocode adalah kemudahan dalam proses konversi (translasi) ke notasi bahasa pemrograman. Hal ini dikarenakan terdapat korespondensi antara setiap pseudocode dengan notasi bahasa pemrograman. Contoh : Berikut Pseudocode yang menggunakan Bahasa Indonesia. Program : Menghitung Luas Lingkaran Mulai Masukkan jari-jari kedalam variabel R Masukkan 3.14 ke dalam variabel Pi Masukkan hasil perkalian Pi dengan R kuadrat ke dalam variabel Luas Tampilkan Nilai Variabel Luas Selesai 13

14 PROGRAM & BAHASA PEMROGRAMAN
PROGRAM adalah kumpulan instruksi yang digunakan untuk mengatur komputer agar melakukan suatu tindakan tertentu. Tanpa program, komputer sesungguhnya tidak dapat berbuat apa-apa. Itulah sebabnya sering dikatakan bahwa komputer mencakup 3 aspek penting, berupa hardware, software, dan brainware. Orang yang membuat program disebut pemrogram (programmer). Adapun aktivitas yang berhubungan dengan pembuatan program dinamakan pemrograman (programming) 14

15 Bahasa beraras tinggi (high-level language)
Secara garis besar, bahasa-bahasa pemrograman dapat dikelompokkan menjadi : Bahasa beraras tinggi (high-level language) Adalah bahasa pemrograman yang berorientasi kepada bahasa manusia. Biasanya menggunakan kata-kata bahasa Inggris. Yang termasuk dalam kelompok bahasa ini adalah bahasa C, C++, Pascal, dan BASIC. Bahasa beraras rendah (low-level language) Adalah bahasa pemrograman yang berorientasi kepada mesin. Bahasa ini menggunakan kode biner (yang hanya mengenal kode 0 dan 1). Yang termasuk dalam kelompok bahasa ini adalah bahasa mesin dan bahasa rakitan. 15

16 Penerjemah Bahasa Program yang ditulis dalam bahasa pemrograman seperti C dan C++ sebenarnya tidak dimengerti oleh komputer secara langsung, sebab komputer hanya mengenal bahasa khasnya saja yang dinamakan bahasa mesin, yakni bahasa yang hanya mengenal kode 0 dan 1. Supaya program dapat dijalankan oleh komputer, program tersebut harus diterjemahkan terlebih dulu ke dalam bahasa mesin(atau biasa disebut kode objek). Proses penerjemahannya dilakukan oleh program yang disebut translator (penerjemah). Translator dapat berupa : Interpreter Kompiler 16

17 Interpreter menerjemahkan instruksi selama program diminta untuk dieksekusi. Jika seseorang bermaksud menjalankan program tersebut (agar dapat dijalankan oleh komputer), mula-mula kode sumber (source code yang ditulis oleh programmer) diterjemahkan dulu ke dalam bentuk kode mesin per baris instruksi. Setelah satu baris instruksi tsb dipahami oleh komputer, instruksi tsb dijalankan. Interpreter kemudian kembali memproses baris instruksi berikutnya. Berbeda dengan interpreter, Kompiler menerjemahkan instruksi ke dalam kode objek secara keseluruhan. Setelah semua instruksi diterjemahkan, instruksi yang telah dimengerti oleh komputer dijalankan. Proses penerjemahan seperti itu disebut kompilasi. Setelah kompilasi berakhir, kompiler tidak diperlukan lagi, sebab sesudah kompilasi akan terbentuk program yang executable (dapat dijalankan langsung tanpa melalui translator). 17

18 Penyelesaian Masalah dengan Program
Langkah-langkah yang perlu dilakukan sebelum membuat program, antara lain : Menganalisis Masalah dan membuat Algoritma Pengalaman, pengetahuan, kreativitas, imajinasi, dan kelihaian merupakan faktor-faktor yang menentukan keberhasilan langkah ini. Di dalam analisis masalah diperlukan tindakan untuk mengidentifikasi informasi yang menjadi keluaran pemecahan masalah dan data-data yang menjadi masukan. Berdasarkan hal itu diperlukan prosedur untuk mengolah masukan menjadi keluaran yang dikehendaki. Langkah detail yang ditujukan untuk komputer guna menyelesaikan suatu masalah inilah yang disebut algoritma. Namun yang disebut algoritma ini berbeda dengan program karena algoritma secara teoritis bersifat bebas dari bahasa pemrograman. 18

19 Menuangkan Algoritma ke dalam Bentuk Program
Langkah menuangkan algoritma ke dalam program ditentukan oleh faktor bahasa pemrograman yang akan digunakan. Programmer harus tahu seluk-beluk bahasa pemrograman yang digunakan. Mengeksekusi dan Menguji Program Setelah program dibuat dan dikompilasi, program perlu dijalankan untuk diuji kebenarannya. Ada beberapa kemungkinan kesalahan yang terjadi sewaktu proses kompilasi hingga pengeksekusian program : Kesalahan Sintaksis Kesalahan Logika Kesalahan Runtime 19

20 Kesalahan Runtime (Kesalahan Fatal)
Kesalahan Sintaksis Disebabkan adanya kesalahan dalam menuliskan program yang tidak sesuai dengan kaidah bahasa pemrograman. Contoh, suatu pernyataan C++ tidak diakhiri dengan titik-koma. Kesalahan sintaksis terdeteksi sewaktu kompilasi bila Anda menggunakan kompiler C++. Kesalahan Logika Adalah kesalahan yang terjadi karena ada logika yang salah. Misalnya, Anda menuliskan 31.4 untuk menyatakan phi, padahal yang betul adalah akibatnya, hasil yang didapatkan tidak benar. Kesalahan Runtime (Kesalahan Fatal) Adalah kesalahan yang terjadi karena suatu operasi dalam program tidakd apat dilakukan oleh komputer. Sebagai contoh, jika terdapat operasi pembagian dengan nol, maka suatu pesan kesalahan akan ditampilkan dan eksekusi program dihentikan. 20

21 Thank You 21


Download ppt "PERTEMUAN 1 Algoritma & Pemrograman"

Presentasi serupa


Iklan oleh Google