ALGORITMA PEMROGRAMAN PEMROGRAMAN DASAR (PERTEMUAN 1-8) Ahmadi Andianto , S.Kom SMK Negeri 1 Tapen Bondowoso
ALGORITMA PEMROGRAMAN ( 8 X 2 TM) Konsep algoritma Struktur algoritma algoritma menggunakan bahasa natural Pengenalan Variabel Pengenalan tipe data Pengenalan operator Pseudocode Flowchart Penggunaan Tool flowchart
Konsep & struktur algoritma PEMROGRAMAN DASAR (PERTEMUAN 1-2) Ahmadi Andianto , S.Kom SMK Negeri 1 Tapen Bondowoso
Materi pertemuan 1 Konsep algoritma Struktur algoritma algoritma menggunakan bahasa natural
Jadi programmer itu mudah ….
Tips belajar programming
Syarat dasar programmer
apa yang kalian lakukan jika …
Fakta yang ada …
Algoritma adalah …
Sejarah algoritma Algoritma berasal dari nama penulis buku , yakni Abu Ja’far Muhammad Ibnu Musa Al-Khwarizmi yang berasal dari Uzbekistan. Orang Barat menyebut Al-Khwarizmi dengan Algorism. Pada saat itu , Al-Khwarizmi menulis buku dengan judul Al Jabar wal-Muqabala yang artinya ' Buku Pemugaran dan Pengurangan ' (The book of Restoration and Reduction). Dari judul buku tersebut , kita juga memperoleh kata “ aljabar ” atau biasa dikenal dengan algebra. Abu Abdullah Ibnu Musa al- Khawarizmi (770M-840M) lahir di Khawarizm ( Kheva ), kota yang berada di selatan Sungai Oxus ( sekarang disebut Uzbekistan) pada 770 M. Al Khawarizmi merupakan salah satu ilmuan terkenal di zamannya . Ada beberapa cabang ilmu matematika yang berhasil ditemukannya , antara lain yang dikenal sebagai astronom dan geografer . Awalnya , algoritma merupakan istilah yang merujuk kepada aturan-aturan aritmetis yang berguna untuk menyelesaikan persoalan dengan menggunakan bilangan numeric Arab.
Struktur dasar algoritma
Algoritma sekuensial Sebelum berangkat ke sekolah , Rama menyantap menu sarapan yang telah disiapkan oleh ibunda tercinta . Selanjutnya ia memastikan seluruh tugas dan buku pelajaran untuk hari itu . Setelah seluruh memastikan tidak ada sesuatu yang tertinggal , Rama berpamitan dan meminta doa keselamatan dari Ayah dan Bundanya . Kemudian Ramapun berangkat ke sekolah bersama teman-teman terbaiknya Menyantap Sarapan Cek Tugas & Pelajaran Berpamitan pada Orang Tua Berangkat dengan Teman
Algoritma sekuensial Ketika jam istirahat tiba , Rama dan teman-temannya menghabiskan waktu di Kantin Bu Enda . Bu Enda dikenal sangat teliti saat menerima pembayaran dari pembelinya . Ia menghitung pembayaran dengan teliti , Jika uang pembayaran lebih , maka Bu Enda pasti memberikan uang kembalian . Menghitung pembayaran Bayar lebih ? Berikan Kembalian Tidak ada Kembalian t y
Algoritma perulangan Setelah istirahat , Rama mengikuti pembelajaran praktik . Guru memberikan tugas untuk membuat program input data. Pada percobaan pertama , program Rama gagal total, namun ia tidak putus asa . Ia kembali mengulang membuat program sampai akhirnya ia sukses pada percobaan ke 12. Akhirnya ia mengumpukan praktiknya pada guru. Buat Program Input Program Sukses ? Kumpulkan ke guru t y
Tugas pertemuan 1 Buatlah sebuah contoh kasus yang terjadi di sekolah untuk : Algoritma Sekuensial Algoritma Percabangan Algoritma Perulangan
Variabel , tipe data, operator PEMROGRAMAN DASAR (PERTEMUAN 3-4) Ahmadi Andianto , S.Kom SMK Negeri 1 Tapen Bondowoso
Materi Mengenal Varibel Mengenal Tipe Data Mengenal Operator
pengantar Variabel , operator dan tipe data merupakan tiga hal yang akan selalu kita jumpai ketika kita membuat program. Bahasa pemrograman apapun dari yang paling sederhana sampai yang paling kompleks , mengharuskan kita untuk mengerti ketiga hal tersebut Dalam kehidupan sehari-hari , ketiga hal tersebut sebenanya sering kita jumpai . Dalam pertemuan kali ini kita akan membahasnya secara lebih detail…
Ilustrasi singkat A = 5 B = 6 A + B = … A dan B, dapat diisi dengan nilai berapapun tergantung kebutuhan dalam program. A dan B adalah TEMPAT DATA yang akan diolah oleh program 5 dan 6 adalah isian dari variable A. Isi dari variabel memiliki TIPE DATA yang bisa berbeda tergantung kebutuhan . Dalam contoh ini , 5 dan 6 adalah tipe angka . Tanda + adalah sebuah sebuah symbol Dari FUNGSI OPERASI yang akan mengolah nilai-nilai yang diberikan
Definisi variabel Tempat dimana kita dapat mengisi atau mengosongkan nilainya dan memanggil kembali apabila dibutuhkan . Setiap variabel akan mempunyai nama (identifier) dan nilai IDENTIFIER NILAI Nama Dedy Alamat Sukosari Umur 15 Hobby Melukis
Carilah variable, kemudian tentukan identifier dan nilainya Hallo semua …. Nama Saya Microsoft Windows 10. Saya adalah produk terbaru dari perusahaan Microsoft Corporation. Saya dapat dibeli secara online melalui toko online Amazone . Toko juga menyediakan berbagai aplikasi lain. Harga jual saya saat ini masih di atas 2 juta rupiah. Harga tersebut pantas dengan fasilitas yang saya tawarkan . Jika anda membeli pada tanggal 1 Januari 2014, maka anda akan mendapatkan diskon khusus 25 %. Demikian dahulu perkenalan kita … Sampai berjumpa ….
Definisi tipe data Tipe data adalah jenis data yang dapat diolah oleh komputer untuk memenuhi kebutuhan dalam pemrograman komputer . Setiap variabel atau konstanta yang ada dalam kode program, sebaiknya kita tentukan dengan pasti tipe datanya . Ketepatan pemilihan tipe data pada variabel atau konstanta akan sangat menentukan pemakaian sumberdaya komputer ( terutama memori komputer ). Tipe Data Keterangan Integer Angka Bilangan Bulat Float Angka dengan pechan Character Kararkter Alfabet String Sekumpulan character Boolean Benar /Salah TIPE DATA STANDAR
Tentukan tipe data dari variable ini No VARIABEL TIPE DATA IDENTIFIER NILAI 1 Nama Jojon Suherman 2 Umur 50 3 Alamat Malang 4 Makanan Favorit Bakso 5 Berat 56,6 6 Status Aktif Benar
operator Operator merupakan simbol atau karakter yang biasa dilibatkan dalam program untuk melakukan suatu operasi atau manipulasi . Contoh operator misalnya menjumlahkan dua buah nilai , memberikan nilai ke suatu variabel , membandingkan kesamaan dua buah nilai dan sebagainya . SIMBOL FUNGSI + Penjumlahan - Pengurangan * Perkalian / Pembagian % Pembagian sisa (Modulus) < Lebih kecil > Lebih besar
Jenis operator
Tentukan jenis operatornya No Operasi Jenis Operator 1 C = B + A 2 X = 2 (A * 5) 3 Y = 5 < A 4 Z = 2A – 3A 4 B = (2*A) > (4*A)
TUGAS PERTEMUAN 2 Sediakan kartu pembayaran dana komite dari sekolah . Dari data tersebut tentukan Variabel , Tipe Data, dan Operator yang digunakan .
Pseudocode PEMROGRAMAN DASAR (PERTEMUAN 5-6) Ahmadi Andianto , S.Kom SMK Negeri 1 Tapen Bondowoso
materi Mengenal Pseudocode Membuat notasi Pseudocode
pengantar Langkah pertama dalam membuat algoritma adalah dengan membuat sebuah narasi ( uraian ) tentang tahapan-tahapan penyelesaian masalah . Pembuatan narasi ini akan memudahkan analisa untuk menentukan langkah penyelesaian dalam program. Akan tetapi bentuk narasi memiliki kelemahan yaitu membutuhkan waktu untuk membaca , dan terkadang pembaca memiliki kesimpulan yang berbeda dengan maksud awal narasi . Karena itu narasi disederhanakan dalam bentuk langkah-langkah yang lebih ringkas sehingga lebih jelas dipahami dan lebih mudah diimplementasikan .
Pengertian pseudocode Berasal dari dua kata : PSEU ( menyerupai ) CODE ( kode ), sehingga secara bahasa dapat bermakna menyerupai kode Pseudocode merupakan penulisan algoritma dengan mengacu pada bentuk kode bahasa pemrograman , namun tidak mengacu pada satu bahasa tertentu dan dapat diimplementasikan pada seluruh bahasa pemrograman Pseudocode dibuat dengan bahasa yang mudah dimengerti oleh manusia , dan tidak ada standar baku dalam penulisannya .
Contoh IMPLEMENTASI Dalam bentuk narasi Untuk menghitung sisa kembalian dari sebuah pembayaran , maka masukkan terlebih dahulu total pembelian , kemudian masukkan nilai pembayaran . Terakhir kurangi nilai pembayaran dengan total pembelian untuk menentukan sisa kembalian . Setelah itu tampilkan sisa kembalian Dalam Pseudocode Mulai Input Total Pembelian Input Nilai Pembayaran Sisa Kembalian Nilai Pembayaran -Total Pembayaran Write Sisa Kembalian Selesai
Operasi dasar dalam pseudocode
Menerima data (input) Penjelasan Adalah kondisi dimana computer menerima input dari pengguna Statemen yang digunakan bisa menggunakan kata INPUT, READ, GET, atau BACA. Contoh Input NilaiA Read NilaiA Get NilaiA Baca Nilai A
Menampilkan informasi Penjelasan Kondisi dimana computer menampilkan sebuah informasi kepada pengguna . Informasi ini biasanya berasal dari data yang sudah diolah dalam operasi tertentu . Statemen yang digunakan bisa menggunakan kata PRINT, WRITE, OUTPUT, atau CETAK Contoh Print SisaKembalian Write SisaKembalian Output SisaKembalian Cetak SisaKembalian
Operasi aritmatika Penjelasan Operasi aritmatika menggunakan operator yang telah dikenal Biasanya variable yang hasil operasi diletakkan di bagian depan , sedangkan operasi aritmatika diletakkan setelahnya Contoh Luas = panjang * Lebar Sisa = Bayar – TotalBeli Nilai = (UTS + (2 * UAS))/3
Memberikan nilai ke identifier Penjelasan Dilakukan ketika sebuah variable (identifier) membutuhkan nilai awal sebelum dioperasikan Nilai bisa diberikan dengan menggunakan statemen SET. Bisa juga dengan menggunakan sama dengan (=) untuk mengisikan nilai variable. Contoh SET Phi To 3,14 Phi = 3,14
Membandingkan dan memilih ( percabangan ) Penjelasan Dilakukan dalam kasus percabangan di mana program diminta memilih beberapa pilihan berdasarkan kriteria Statemen yang digunakan biasanya IF-THEN-ELSE Contoh IF belanja > 100000 THEN diskon = 10 % ELSE diskon = 5 % ENDIF
Melakukan perulangan (loop) Penjelasan Dilakukan dalam kasus perulangan , di mana program akan mengulang proses sejumlah batasan yang diberikan Statemen yang digunakan biasanya DOWHILE - ENDDO Contoh DO WHILE angka <10 CETAK angka angka = angka +1 ENDDO
tugas Lakukan wawancara dengan Bendahara sekolah ! Kumpulkan informasi tentang langkah-langkah pembayaran dana komite . Buatlah pseudocode langkah-langkah pembayaran tersebut !
FLOWCHART PEMROGRAMAN DASAR ( PERTEMUAN 7-8) Ahmadi Andianto , S.Kom SMK Negeri 1 Tapen Bondowoso
MATERI Mengenal Flowchart dan Simbol-simbolnya Menerapkan flowchart dalam persiapan pemrograman
pengantar Pseudocode pada dasarnya sudah cukup untuk mengilustrasikan sebuah algoritma . Namun karena tidak ada bentuk standar , maka sangat mungkin terjadi pemilihan statemen yang berbeda untuk kasus yang sama . Karena itu , standarisasi bentuk penulisan menjadi sangat dibutuhkan agar terjadi keseragaman symbol dan bahasa yang pada akhirnya dapat mempermudah programmer dalam proses penulisan kode programnya Standarisasi symbol biasa terjadi pada Flow Chart
Pengertian flowchart Flowchart berasal dari kata flow ( aliran ) dan Chart (diagram) yang secara harfiah dapat diartikan sebagai diagram alir Flowcart menggambarkan suatu tahapan penyelesaian masalah secara sederhana , terurai , rapi dan jelas dengan menggunakan simbol-simbol standar . Karena symbol yang digunakan adalah standar , maka flowchart dapat digunakan sebagai acuan standar dalam menggambarkan aliran program dari sejak dimulai sampai selesai
46 Simbol-simbol Flowchart Flow direction symbols Digunakan untuk menghubungkan simbol satu dengan yang lain Disebut juga connecting line Processing symbols Menunjukan jenis operasi pengolahan dalam suatu proses / prosedur Input / Output symbols Menunjukkan jenis peralatan yang digunakan sebagai media input atau output
47 Flow Direction Symbols Simbol arus / flow Menyatakan jalannya arus suatu proses Simbol communication link Menyatakan transmisi data dari satu lokasi ke lokasi lain Simbol connector Menyatakan sambungan dari proses ke proses lainnya dalam halaman yang sama Simbol offline connector Menyatakan sambungan dari proses ke proses lainnya dalam halaman yang berbeda
48 Processing Symbols Simbol process Menyatakan suatu tindakan (proses) yang dilakukan oleh komputer Simbol manual Menyatakan suatu tindakan (proses) yang tidak dilakukan oleh komputer Simbol decision Menujukkan suatu kondisi tertentu yang akan menghasilkan dua kemungkinan jawaban : ya / tidak Simbol predefined process Menyatakan penyediaan tempat penyimpanan suatu pengolahan untuk memberi harga awal Simbol terminal Menyatakan permulaan atau akhir suatu program
49 Processing Symbols Simbol keying operation Menyatakan segal jenis operasi yang diproses dengan menggunakan suatu mesin yang mempunyai keyboard Simbol offline-storage Menunjukkan bahwa data dalam simbol ini akan disimpan ke suatu media tertentu Simbol manual input Memasukkan data secara manual dengan menggunakan online keyboard
50 Input / Output Symbols Simbol input/output Menyatakan proses input atau output tanpa tergantung jenis peralatannya Simbol punched card Menyatakan input berasal dari kartu atau output ditulis ke kartu Simbol magnetic tape Menyatakan input berasal dari pita magnetis atau output disimpan ke pita magnetis Simbol disk storage Menyatakan input berasal dari dari disk atau output disimpan ke disk
51 Input / Output Symbols Simbol document Mencetak keluaran dalam bentuk dokumen (melalui printer) Simbol display Mencetak keluaran dalam layar monitor
Menghitung luas persegi panjang 52 Input lebar Start End Input panjang Luas = panjang * lebar Print Luas PSEUDOCODE Mulai Input Panjang Input Lebar Luas = panjang * Lebar Output Luas Selesai FLOWCHART
TUGAS Dari pseudocode yang telah dibuat pada tugas sebelumnya , ubahlah ke dalam bentuk Flow Chart!
Selanjutnya … Kalian akan lebih mendalami algoritma percabangan selama 6 kali tatap mula …. Pastikan kalian sudah memahami seluruh materi sebelum melanjutkan ke pembahasan selanjutnya ..