ALGORITMA dan PEMROGRAMAN

Ukuran: px
Mulai penontonan dengan halaman:

Download "ALGORITMA dan PEMROGRAMAN"

Transkripsi

1 M O D U L ALGORITMA dan PEMROGRAMAN Oleh : Devi Febrianty Rahmi Nur Shofa TEKNIK INFORMATIKA FAKULTAS TEKNIK UNIVERSITAS SILIWANGI Jl. Siliwangi No. 24 Tasikmalaya Kotak Pos 164 Tlp. (0265) informatika@ft.unsil.ac.id ; URL :

2 DAFTAR ISI 1 KONSEP DASAR PEMROGRAMAN 2 2 KONSEP DASAR ALGORITMA 6 3 ATURAN PENULISAN NOTASI ALGORITMA 10 4 TIPE DATA, NAMA, NILAI 15 5 AKSI SEKUENSIAL 25 6 PEMILIHAN 28 7 PENGULANGAN 33 8 RECORD 37 9 ARRAY PROSEDUR FUNGSI ARRAY DUA DIMENSI (MATRIKS) SEARCHING SORTING 67 DAFTAR PUSTAKA 73

3 1 KONSEP DASAR PEMROGRAMAN 1.1 Pengertian Program dan Pemrograman Komputer merupakan alat bantu penyelesaian masalah di berbagai bidang: Pendidikan, Perbankan, Industri, Penerbangan, Kedokteran, Permainan, dll Tetapi, permasalahan tidak dapat disodorkan begitu saja ke depan komputer, karena sebenarnya mesin komputer hanyalah benda mati yang tidak bisa apa-apa. Manusia harus merumuskan langkah-langkah pemecahan masalah dalam runtunan instruksi yang dapat dilaksanakan oleh komputer yang disebut program. Program merupakan runtunan atau himpunan instruksi(perintah) tertulis yang ditanamkan ke dalam komputer untuk menyelesaikan masalah. Pemrograman merupakan pengerjaan penulisan instruksi oleh programmer untuk menyelesaikan suatu masalah. Tahapan Penyelesaian Masalah oleh Komputer 1.2 Bahasa Pemrograman Program harus dibuat dalam bahasa yang dimengerti oleh komputer yang disebut bahasa pemrograman supaya instruksi yang ditulis oleh programmer dapat dilaksanakan oleh komputer. 1. Bahasa Mesin (Mnemonic Code) Bahasa mesin adalah bahasa yang berisi kode-kode mesin yang hanya dapat diinterpretasikan langsung oleh mesin komputer. Bahasa ini merupakan bahasa level terendah dan berupa kode numerik 0 dan 1. Keuntungan : Eksekusi cepat Kerugian : Sangat sulit dipelajari manusia 2. Bahasa Assembly Bahasa assembly adalah bahasa simbol dari bahasa mesin. Setiap kode bahasa mesin memiliki simbol sendiri dalam bahasa assembly. Misalnya ADD untuk penjumlahan, MUL untuk perkalian, SUB untuk pengurangan, dan lain-lain. Kelebihan : Eksekusi cepat, masih bisa dipelajari daripada bahasa mesin, file kecil Kekurangan : Tetap sulit dipelajari, program sangat panjang Modul Algoritma dan Pemrograman Page 2

4 3. Bahasa Tingkat Tinggi (High Level Language) Bahasa tingkat tinggi adalah bahasa pemrograman yang lebih tinggi daripada bahasa assembly. Bahasa ini lebih dekat dengan bahasa manusia dan lebih dipahami manusia. Contoh: Pascal, Basic, Cobol, C, C++, Java, dll. Keuntungan : - Mudah dipelajari - Mendekati permasalahan yang akan dipecahkan - Kode program pendek Kerugian : Eksekusi lambat karena ada proses pengubahan perintah dalam bahasa ini ke dalam bahasa mesin oleh Translator(Penterjemah) Bahasa generasi ini disebut juga bahasa generasi ke-3 (3rd Generation Programming Language). 4. Bahasa yang berorientasi pada masalah spesifik Bahasa ini adalah bahasa yang digunakan langsung untuk memecahkan suatu masalah tertentu. Misalnya SQL untuk database. Bahasa ini juga masuk ke bahasa tingkat tinggi. Bahasa ini disebut juga bahasa generasi ke-4 (4th Generation Programmming Language). Translator(Penterjemah) Translator berfungsi untuk menterjemahkan program yang ditulis dalam bahasa pemrograman tingkat tinggi ke dalam bahasa mesin. Translator dapat dibedakan menjadi : Interpreter : menterjemahkan dan mengeksekusi baris per baris instruksi. Contoh bahasa Basic. Compiler : mengeksekusi program setelah seluruh instruksi diterjemahkan. Contoh bahasa Pascal, C, Ada,C++, dll. 1.3 Belajar memprogram dan Belajar bahasa pemrograman Belajar memprogram adalah belajar tentang strategi, metodologi, dan sistematika pemecahan masalah, kemudian menuangkannya dalam suatu notasi tertentu yang mudah dibaca dan dipahami. Sifat : Pemahaman persoalan, analisis, sintesis Titik Berat : Designing Program Belajar bahasa pemrograman adalah belajar memakai suatu bahasa, aturan tata bahasanya, instruksiinstruksinya, tata cara pengoperasian compiler-nya untuk membuat program yang ditulis dalam bahasa itu saja. Sifat : Keterampilan Titik Berat : Coding Program Produk yang dihasilkan oleh seorang pemrogram adalah program dengan rancangan yang baik (metodologis, sistematis), yang dapat dieksekusi oleh mesin, berfungsi dengan benar, sanggup melayani segala kemungkinan masukan, dan didukung dengan adanya dokumentasi. Pengajaran pemrograman titik beratnya adalah membentuk seorang perancang designer program, sedangkan pengajaran bahasa pemrograman titik beratnya adalah membentuk seorang coder (juru kode). Pada prakteknya, suatu rancangan harus dapat dikode untuk dieksekusi dengan mesin. Oleh karena itu, belajar pemrograman dan belajar bahasa pemrograman saling komplementer, tidak mungkin dipisahkan satu sama lain Modul Algoritma dan Pemrograman Page 3

5 Tetapi, karena banyak bahasa pemrograman yang dapat digunakan dan pemilihannya akan sangat tergantung kepada masalah yang dipecahkan, maka belajar memprogram menjadi lebih penting daripada belajar bahasa pemrograman. Keduanya diperlukan tetapi dalam tingkat yang berbeda. 1.4 Langkah-langkah pemrograman Komputer : 1. Mendefinisikan masalah : menentukan masalahnya seperti apa, apa saja yang harus dipecahkan dengan komputer, apa masukannya, dan bagaimana keluarannya 2. Menentukan solusi : mencari jalan bagaimana masalah tersebut diselesaikan. Jika masalah terlalu kompleks, maka ada baiknya masalah tersebut dipecah menjadi modul-modul kecil agar lebih mudah diselesaikan. 3. Memilih algoritma : pilihlah algoritma yang benar-benar sesuai dan efisien untuk permasalahan tersebut 4. Menulis Program : menuliskan program dalam salah satu bahasa pemrograman Pilihlah bahasa yang sesuai dengan permasalahan, mudah dipelajari, mudah digunakan, dan lebih baik lagi jika sudah dikuasai, memiliki tingkat kompatibilitas tinggi dengan perangkat keras dan platform lainnya. 5. Menguji program : Menentukan apakah program berhasil dikompilasi dengan baik? apakah program dapat menghasilkan keluaran yang diinginkan? Langkah keempat dan kelima bisa dilakukan berulang-ulang sampai program diyakini benar-benar sesuai dengan yang diharapkan 6. Menulis dokumentasi : Menulis 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 komentar-komentar 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 fasilitas baru yang dulu tidak ada. Contoh Permasalahan : Menghitung dan menampilkan Luas Persegi Panjang Tahapan penyelesaian : 1. Mendefinisikan Masalah Masukan / Input : panjang, lebar Keluaran / Output : Luas 2. Menentukan Solusi + Memilih Algoritma Contoh urutan solusi : Baca input panjang Baca input lebar Hitung Luas = panjang x lebar Tampilkan Luas Modul Algoritma dan Pemrograman Page 4

6 3. Menulis Program Contoh penulisan program dalam Bahasa Pascal dan Hasilnya Program Program Luas_Persegi_Panjang; Var panjang, lebar, Luas : integer; Begin End. Write( Panjang : ); Readln(panjang); Write( Lebar : ); Readln(lebar); Luas := panjang * lebar; Write( Luas persegi Panjang =, Luas); Readln; Contoh Tampilan di layar Panjang : 20 Lebar : 6 Luas persegi Panjang = 120 Modul Algoritma dan Pemrograman Page 5

7 2 KONSEP DASAR ALGORITMA 2.1 Pengertian Algoritma Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis dan tidak tergantung pada bahasa pemrograman tertentu. Kata Logis merupakan kata kunci dalam Algoritma. Langkah-langkah dalam Algoritma harus logis (masuk akal dan mengikuti suatu urutan tertentu, tidak boleh melompat-lompat) serta harus dapat ditentukan bernilai salah atau benar. Perbedaan Algoritma dan Program Komputer hanyalah salah satu pemroses. Agar dapat dilaksanakan oleh komputer, algoritma harus ditulis dalam notasi bahasa pemrograman sehingga dinamakan program. Jadi program adalah perwujudan atau implementasi teknis Algoritma yang ditulis dalam bahasa pemrogaman tertentu sehingga dapat dilaksanakan oleh komputer. Tahapan Pelaksanaan algoritma oleh komputer 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. Modul Algoritma dan Pemrograman Page 6

8 2.2 Algoritma untuk memecahkan permasalahan sehari-hari Contoh 1 : 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 dan rasanya enak. Contoh 2 : Algoritma TUKAR ISI BEJANA Diberikan dua buah bejana A dan B, bejana A berisi larutan berwarna merah, bejana B berisi larutan berwarna biru. Pertukarkan isi kedua bejana itu sedemikian sehingga bejana A berisi larutan berwarna biru dan bejana B berisi larutan berwarna merah. Algoritma 1: Aksi 1 : Tuangkan larutan dari bejana A ke dalam bejana B Aksi 2 : Tuangkan larutan dari bejana B ke dalam bejana A. Algoritma TUKAR ISI BEJANA di atas tidak menghasilkan pertukaran yang benar. Langkah di atas tidak logis, hasil pertukaran yang terjadi adalah percampuran kedua larutan tersebut. Untuk mempertukarkan isi duah bejana, diperlukan sebuah bejana tambahan sebagai tempat penampungan sementara, misalnya bejana C. Maka algoritma untuk menghasilkan pertukaran yang benar adalah sebagai berikut : Algoritma 2: Aksi 1 : Tuangkan larutan dari bejana A ke dalam bejana C. Aksi 2 : Tuangkan larutan dari bejana B ke dalam bejana A. Aksi 3 : Tuangkan larutan dari bejana C ke dalam bejana B. Contoh 3 : Ibu Tati mengupas kentang untuk makan malam Sub masalah : 1. Apakah kentangnya harus dibeli dulu atau sudah di dapur? 2. Apakah pisau sudah siap? 3. Berapa jumlah kentang yang dikupas? Maka kita harus membatasi dengan jelas keadaan awal dan keadaan akhirnya. Keadaan awal dan keadaan akhir algoritma dapat dijadikan acuan bagi pemrogram dalam merancang sebuah algoritma Initial State(T0) Final State(T1) : Kentang sudah ada di kantong plastik, yang ditaruh di lemari di dapur dimana Ibu Tati akan mengupasnya, pisau ada di rak. : 100 Kentang dalam keadaan terkupas siap untuk dimasak dan kantong kentangnya harus dikembalikan ke lemari lagi jika masih ada kentangnya Algoritma 1 Aksi 1 : Ibu Tati mengambil kantong kentang dari lemari Aksi 2 : Ibu Tati mengambil pisau dari rak Aksi 3 : Ibu Tati mengupas kentang Aksi 4 : Ibu Tati mengembalikan kantong kentang ke dalam lemari Modul Algoritma dan Pemrograman Page 7

9 Algoritma di atas masih belum memenuhi Final State dimana kentang yang sudah dikupas ada 100 buah dan kantong kentang harus dikembalikan ke lemari jika masih ada kentangnya. Pada algoritma tersebut kentang yang dikupas hanya 1 dan Aksi 4 akan tetap dilaksanakan walaupun kantong kentang sudah kosong Supaya kentang yang sudah terkupas ada 100 maka perlu dilakukan proses PENGULANGAN pengupasan kentang sebanyak 100 kali. Dan supaya Ibu Tati hanya mengembalikan kantong kentang ke lemari hanya jika masih ada isinya, maka perlu ada PEMILIHAN berdasarkan kondisi isi kantong kentang. Maka algoritma untuk mencapai Final State yang benar adalah sebagai berikut : Algoritma 2 Aksi 1 Aksi 2 Aksi 3 Aksi 4 : Ibu Tati mengambil kantong kentang dari lemari dan : Ibu Tati mengambil pisau dari rak : Selama kentang terkupas < 100 maka Kupas 1 kentang : Lihat isi kantong Ciri penting algoritma: Kantong Kosong à buang Kantong Tidak kosong à Kembalikan kantong ke lemari Algoritma harus berhenti setelah mengerjakan sejumlah langkah terbatas. Setiap langkah harus didefinisikan dengan tepat dan tidak berarti-dua (Ambiguitas). Algoritma memiliki nol atau lebih masukan (input). Algoritma memiliki nol atau lebih keluaran (output). Algoritma harus efektif (setiap langkah harus sederhana sehingga dapat dikerjakan dalam waktu yang efisien). 2.3 Struktur Dasar Algoritma Langkah-langkah penyelesaian masalah bisa berupa : a. Runtunan (sequence)) Sebuah runtunan terdiri dari satu atau lebih instruksi. Tiap instruksi dikerjakan berurutan sesuai aturan penulisannya. Urutan instruksi menentukan keadaan akhir algoritma, jika urutannya diubah maka hasil akhirnya mungkin akan berubah. Urutan instruksi menunjukkan cara berfikir penyusun algoritma dalam menyelesaikan masalah Runtunan Instruksi : Instruksi 1 Instruksi 2 Instruksi 3 Contoh : Algoritma Tukar isi Bejana Runtunan instruksi : 1. Tuangkan larutan dari bejana A ke dalam bejana C 2. Tuangkan larutan dari bejana B ke dalam bejana A 3. Tuangkan larutan dari bejana C ke dalam bejana B Hasil akhir : Bejana A berisi larutan dari bejana B, bejana B berisi larutan dari bejana A Jika runtunan instruksi diubah maka hasilnya berubah Modul Algoritma dan Pemrograman Page 8

10 b. Pemilihan (selection) Adakalanya sebuah instruksi dikerjakan jika sebuah kondisi tertentu terpenuhi Struktur umum : If kondisi then Aksi atau If kondisi then Aksi 1 Else Aksi 2 Contoh : If Amir memperoleh juara kelas then Ayah akan membelikannya hadiah If Jalan Dago macet then Ambil alternative Jalan Dipati Ukur If Kantong Kentang kosong then Buang Else Kembalikan kantong kentang ke lemari Endif c. Pengulangan (repetition) Komputer tidak pernah bosen dan lelah jika diminta untuk mengerjakan instruksi secara berulang-ulang. Contoh : Menulis kalimat Saya harus lebih giat belajar sebanyak 1000 kali Ulangi : - Tulis kalimat Saya harus lebih giat belajar Sampai jumlah_kalimat = 1000 Mengupas 100 buah kentang Selama kentang terkupas < 100 maka - Kupas 1 kentang Modul Algoritma dan Pemrograman Page 9

11 3 ATURAN PENULISAN NOTASI ALGORITMA Penulisan algoritma tidak tergantung dari spesifikasi bahasa pemrograman dan komputer yang mengeksekusinya melainkan bersifat umum tetapi notasi-notasi algoritma dapat diterjemahkan ke dalam berbagai bahasa pemrograman. Notasi algoritma dapat berupa : Uraian kalimat deskriptif (narasi) Instruksi pada algoritma dapat dituliskan dalam bahasa sehari-hari (B.Indonesia, B.Inggris, dsb). Tidak aturan yang baku untuk menuliskan algoritma dalam bentuk notasi ini, tetapi penulisan algoritma menggunakan notasi ini dapat menimbulkan ambiguitas. Bagan alir (flow chart). Instruksi-instruksi pada Algoritma digambarkan secara grafis(menghasilkan sebuah bagan) menggunakan simbol-simbol tertentu dengan aturan sebagai berikut : Simbol Keterangan Tanda Start(Mulai) atau Tanda End (Selesai) Proses Operasi Input atau Output Percabangan / Pengambilan Keputusan Aliran Data Pembuatan flowchart akan sulit dilakukan untuk program yang sangat kompleks Pseudo-code Penulisan teks algoritma dengan Pseudo-code menggunakan notasi-notasi tertentu yang mendekati bahasa pemrograman sehingga lebih mudah ditranslasikan ke dalam bahasa pemrograman. Modul Algoritma dan Pemrograman Page 10

12 Aturan Penulisan Teks Algoritma : Judul Algoritma { Bagian yang terdiri atas nama algoritma dan penjelasan (spesifikasi) tentang algoritma tersebut. Nama sebaiknya singkat dan menggambarkan apa yang dilakukan oleh algoritma tersebut. } (Deklarasi Algoritma) { Bagian untuk mendefinisikan semua nama yang digunakan di dalam program. Nama tersebut dapat berupa nama konstanta, variabel, tipe, prosedur dan fungsi. } Algoritma { Bagian ini berisi uraian langkah-langkah penyelesaian masalah yang ditulis dengan menggunakan notasi yang akan dijelaskan selanjutnya } Contoh 1 : Algoritma Luas_Lingkaran Menghitung dan menampilkan Luas Lingkaran dengan masukan jari-jari lingkaran Contoh Penulisan Algoritma : Uraian kalimat deskriptif (narasi) DESKRIPSI : o Baca jari-jari lingkaran (R) o Phi ß 3.14 o Luas ß Phi x R x R o Tulis Luas Flowchart Mulai Baca R Phi 3.14 Luas Phi * R * R Tulis Luas Selesai Modul Algoritma dan Pemrograman Page 11

13 Pseudo-code Algoritma Luas_Lingkaran {Menerima masukan jari-jari lingkaran(r), menghitung Luasnya dengan rumus 3.14 * R * R, kemudian menuliskan hasilnya} const Phi : real = 3.14 R, Luas : real read(r) Luas ß Phi * R * R write(luas) Contoh 2 : Algoritma Kelulusan_Mhs Diberikan nama dan nilai mahasiswa, jika nilai tersebut lebih besar atau sama dengan 60 maka mahasiswa tersebut dinyatakan lulus jika nilai lebih kecil dari 60 maka dinyatakan tidak lulus. Uraian kalimat deskriptif (narasi) DESKRIPSI : o baca nama dan nilai mahasiswa. o jika nilai >= 60 maka keterangan = lulus o tetapi jika nilai < 60 maka keterangan = tidak lulus. o tulis nama dan keterangan Flow chart Modul Algoritma dan Pemrograman Page 12

14 Pseudo-code Algoritma Kelulusan_Mhs {Menerima masukan nama dan nilai mahasiswa, jika nilai tersebut lebih besar atau sama dengan 60 maka mahasiswa tersebut dinyatakan lulus jika tidak maka dinyatakan tidak lulus} Nama : string Nilai : integer Keterangan : string read (nama, nilai) if nilai >= 60 then keterangan ß lulus else keterangan ß tidak lulus write(nama, keterangan) Contoh 3 : Algoritma Cetak_Frase Diberikan sebuah angka, kemudian tuliskan frase Dasar Pemrograman sebanyak angka tersebut Uraian kalimat deskriptif (narasi) DESKRIPSI : o baca angka o selama jumlah_frase_tercetak < angka - tulis Dasar Pemrograman o tulis nama dan keterangan Modul Algoritma dan Pemrograman Page 13

15 Flow chart Pseudo-code Algoritma Cetak_Frase {Menerima masukan sebuah angka, kemudian tuliskan frase Dasar Pemrograman sebanyak angka tersebut } angka : integer i : integer read (angka) i ß 0 while i < angka do write( Dasar Pemrograman ) i ß i + 1 endwhile Modul Algoritma dan Pemrograman Page 14

16 4 TIPE DATA, NAMA, NILAI 4.1 TIPE Pada umumnya, program komputer bekerja dengan memanipulasi objek(data) di dalam memori. Objek(data) yang akan diprogram bermacam-macam jenis atau tipenya misalnya nilai numerik(angka), karakter(huruf), kumpulan karakter, dll. Suatu tipe menyatakan jenis data yang akan dimanipulasi dalam program, gunanya untuk mendefinisikan objek yang akan diprogram. Suatu tipe diacu dari namanya. Nilai-nilai yang dicakup oleh tipe tersebut dinyatakan dalam domain nilai. Tipe data dikelompokkan menjadi tipe dasar dan tipe bentukan Tipe dasar Tipe yang dapat langsung dipakai(angka-angka atau karakter) karena sudah didefinisikan sebelumnya oleh pemroses bahasa 1. Bilangan Bulat Bilangan yang tidak mengandung pecahan desimal. Nama Tipe : Integer Domain Nilai : Secara teoritis tak terbatas dari - s.d +. Pada algoritma dapat dibatasi tergantung kebutuhan untuk objek, misalnya untuk jam [0..23]. Dalam implementasinya pada bahasa pemrograman, tipe integer punya rentang nilai terbatas untuk menghemat memory. Contoh nilai : 300, 0, -1000, , -24 Contoh objek : Nim, Jam, Menit, Detik 2. Bilangan Riil Bilangan yang mengandung pecahan desimal Nama Tipe : Real Domain Nilai : Secara teoritis tak terbatas dari - s.d +. Ditulis dengan titik desimal Contoh nilai : 2.8, -0.39, 4.24, , Contoh objek : Nilai ujian 3. Bilangan Logika Nama Tipe : Boolean Domain Nilai : Benar(True--1) atau Salah(False--0) Konstanta : True dan False Modul Algoritma dan Pemrograman Page 15

17 4. Karakter Karakter tunggal yang diapit oleh tanda petik satu. Nama Tipe : char Domain Nilai : - Huruf alfabet ( a.. z dan A.. Z ) - Tanda baca (!,?,,,. ) - Angka 0, 1,..., 9 - Karakter khas seperti #, &, *, dll Contoh nilai : l, p, +, 6, A Contoh objek : Jenis Kelamin, Indeks nilai Tipe bentukan Tipe yang dibentuk(dan diberi nama) dari tipe dasar atau dari tipe lain yang sudah dikenal, bahkan dapatt didefinisikan sendiri oleh pemrogram. Macam tipe bentukan : 1. String(kumpulan karakter) Deretan karakter dengan panjang tertentu. Nama Tipe : String Domain Nilai : Satu atau lebih karakter yang diapit oleh tanda petik tunggal Contoh nilai : Apa kabar, Teknik Informatika, A234, Ramayana, 123 Contoh objek : Nama, Alamat 2. Tipe bentukan dari tipe data dasar atau tipe bentukan lain : Kata Kunci type Deklarasi kamus data : type nama_tipe_bentukan : tipe_data Contoh : membuat sebuah tipe data baru bernama BilBulat yang memiliki domain nilai yang sama 3. Record dengan tipe integer type BilBulat : integer; Record tersusun dari satu atau lebih field. Tiap field menyimpan data dengan tipe tertentu field 1 field 2 field 3 field n Deklarasi kamus data : type Nama_Record : record < nama_field 1 :tipe_field 1, nama_field 2 :tipe_field 2,... nama_field n : tipe_field n > Modul Algoritma dan Pemrograman Page 16

18 Contoh : a. Titik dalam koordinat kartesian dinyatakan sebagai (x,y) dengan x adalah nilai absis dan y adalah nilai ordinat. Kita dapat menyatakan titik sebagai record dengan (x,y) sebagai field x y type Titik : record < x : real, y : real > atau type Titik : record< x, y : real > b. Definisi tipe terstruktur yang mewakili tanggal dalam kalender Masehi. dd sebagai tanggal, mm sebagai bulan, yy sebagai tahun dd mm yy type Tanggal : record <dd : integer, {1..31} mm : integer, {1..12} yy : integer {>0} > c. NilMhs adalah tipe terstruktur yang menyatakan nilai ujian seorang mahasiswa untuk mata kuliah yang diambil(mk) Nim NamaMhs KodeMK Nilai type NilMhs : record < Nim : integer, NamaMhs : string, KodeMK : string, Nilai : char > d. Tipe terstruktur untuk jadwal kereta api yang terdiri dari nomor kereta(noka), kota asal(kotaasal), kota tujuan(kotatujuan), jam berangkat(jamberangkat), jam tiba(jamtiba) NoKA KotaAsal KotaTujuan JamBerangkat JamTiba type JadwalKA : record <NoKA : string, KotaAsal : string, KotaTujuan : string, JamBerangkat : Jam, JamTiba : Jam > 4.2 NAMA Nama digunakan mengidentifikasi objek dan mengacu objek tersebut.. Dalam sebuah teks algoritmik, objek yang diberi nama bisa berupa : - Modul program, Algoritma - variabel - konstanta - type - fungsi - prosedur Karena adanya bermacam-macam nama tersebut, maka dalam suatu teks algoritma dikenal nama program, nama variabel, nama konstanta, nama fungsi, nama prosedur, nama type. Modul Algoritma dan Pemrograman Page 17

19 Setiap bahasa pemrograman memiliki aturan masing-masing untuk mendefinisikan nama(panjang maks nama, perbedaan huruf besar dan kecil) tetapi dalam algoritma batasan pendefinisian nama tidak seketat pada bahasa pemrograman. Syarat-syarat penggunaan sebuah nama pada algoritma: - Pemilihan nama harus interpretatif(disesuaikan dengan objek yang diidentifikasi) dan tidak menimbulkan kerancuan - Nama harus unik dalam sebuah algoritma/program - Nama tidak boleh dipisahkan oleh spasi - Tidak case sensitive (huruf besar dan kecil tidak dibedakan) - Tidak boleh mengandung symbol khusus - Nama harus dideklarasikan pada bagian tertentu supaya dapat dipakai. 1. Nama Algoritma Digunakan untuk mengidentifikasi sebuah program atau algoritma, dideklarasikan pada bagian Judul algoritma Contoh : Algoritma Luas_Lingkaran, Algoritma Kelulusan_Mhs 2. Nama Peubah(variabel) Tempat penyimpan data/informasi/nilai yang isinya dapat diubah selama eksekusi program berlangsung. Setiap variabel mempunyai tiga atribut, yaitu nama, tipe, dan nilai. Nama variabel dan tipe datanya dideklarasikan pada bagian. Sedangkan nilai yang disimpan dalam variabel didefinisikan pada bagian deskripsi algoritma. Bentuk umum deklarasi variabel adalah : nama_variabel : tipe data Contoh : nama : string {variabel nama bertipe string} nim: integer {variabel nim bertipe integer/bilangan bulat} jns_kelamin : char {variabel jns_kelamin bertipe karakter} rata, nilai_uts, nilai_uas, nilai_tugas : real; {variabel dengan nama rata, nilai_uts, 3. Nama Tetapan(konstanta) nilai_uas, nilai_tugas bertipe sama yaitu real} Tempat penyimpan data/informasi/nilai yang isinya tidak dapat diubah selama pelaksanaan program. Nama, tipe, dan nilai Konstanta dideklarasikan pada bagian. Untuk mendefinisikan konstanta harus memakai kata kunci const dan konstanta harus langsung diisi dengan sebuah nilai tertentu. Bentuk umum deklarasi konstanta adalah : const nama_konstanta : tipe = nilai Contoh : const phi : real = 3.14 const Nmaks : integer = 200 const password : string = abcd Modul Algoritma dan Pemrograman Page 18

20 4. Nama Tipe bentukan Nama tipe bentukan disini berarti nama tipe bentukan yang dibuat/didefinisikan oleh perancang program. Nama tipe bentukan dideklarasikan pada bagian Nama tipe bentukan tidak dapat langsung digunakan di dalam bagian deskripsi algoritma, tetapi sebelumnya harus mendeklaraikan variabel yang bertipe bentukan tersebut Contoh : type Karakter : char type Titik : record < x : real; y : real > type Jam : record <hh : integer, {0..23} mm : integer, {0..59} ss : integer {0..59} > Indeks : karakter T : Titik J : Jam Dari contoh di atas telah didefinisikan tipe data baru bernama karakter dan dua buah tipe record yang bernama Titik dan Jam. Nama karakter, Titik, dan Jam tidak bisa langsung digunakan pada bagian algoritma tetapi harus mendeklarasikan variabel baru. Pada contoh di atas dideklarasikan variabel Indeks yang bertipe karakter, variabel T bertipe Titik dan variabel J yang bertipe Jam. Indeks, T, dan J inilah yang bisa digunakan pada bagian deklarasi program. 5. Nama Fungsi Bagian Judul Fungsi(nama fungsi, parameter) dideklarasikan pada bagian Contoh : Function Penjumlahan(a, b : integer) à integer {mengembalikan hasil penjumlahan antara dua bilangan} 6. Prosedur Bagian Judul Prosedur(nama prosedur, parameter) dideklarasikan pada bagian Contoh : Procedure TUKAR(input/output A, B : integer) {mempertukarkan nilai A dan B} Modul Algoritma dan Pemrograman Page 19

21 Contoh-Contoh Pendefinisian/Delarasi Nama Di Dalam Bagian : {nama konstanta} const phi = 3.14 const Nmaks = 200 const password = abcd {nama tipe} type karakter : char type Titik : record < x : real; y : real > type Jam : record <hh : integer, {0..23} mm : integer, {0..59} ss : integer {0..59} > type NilMhs : record <Nim : integer, NamaMhs : string, KodeMK : string, Nilai : char > {nama variabel} luasl : real nama : string indeks : karakter ketemu : boolean J : Jam T : Titik Nilai : NilMhs {nama fungsi} Function Penjumlahan(a, b : integer) à integer {mengembalikan hasil penjumlahan antara dua bilangan} function CARI <input x : integer> à Boolean {mencari nilai x,bila ketemu maka true,bila tidak maka false} {nama prosedur} procedure HITUNG_TITIK_TENGAH(input P1 :Titik, input P1 :Titik, output Pt :Titik) {menghitung nilai titik tengah dari sebuah garis dengan ujung-ujung Px dan Py} 4.3 NILAI Nilai/Harga adalah besaran dari tipe data yang sudah dikenal. Nilai dapat berupa konstanta yang dipakai langsung, isi yang disimpan oleh variabel atau konstanta, hasil perhitungan suatu ekspresi, atau hasil yang dikirim suatu fungsi. Algoritma pada dasarnya adalah proses memanipulasi nilai. Nilai dapat dimanipulasi dengan cara : mengisi nilai ke dalam variabel, menuliskan nilai ke piranti keluaran, diacu dari suatu nama untuk perhitungan/ekspresi Modul Algoritma dan Pemrograman Page 20

22 1. Pengisian Nilai Suatu nama konstanta secara otomatis akan mempunyai harga tetap yang terdefinisi(sudah ditentukan) pada saat nama konstanta dideklarasikan dalam kamus sehingga nama konstanta dapat langsung digunakan dalam program. Tetapi tidak demikian halnya dengan nama variabel. Suatu nama variabel dapat digunakan dalam ekspresi program jika harganya telah terdefinisi. Ada dua cara untuk mengisi nama variabel dengan harga/nilai : Assignment : ß Assignment adalah instruksi untuk menyimpan harga pada suatu nama variabel. Dengan pemberian harga ini, harga lama yang disimpan tidak lagi berlaku, yang berlaku adalah harga paling akhir yang diberikan. Nilai/Harga yang dimasukkan ke dalam nama variabel bisa berupa nilai tetap, nilai dari variabel lain, atau ekspresi : Algoritma nama_var1 ß nama_var2 {harga dari nama variabel2 disalin ke nama variabel1} nama_var ß konstanta {harga dari nama konstanta disalin ke nama variabel} nama_var ß ekspresi {hasil perhitungan ekspresi diisikan ke nama variabel} nama_var ß nama_fungsi {nilai yang dikembalikan fungsi diisikan ke nama variabel} dengan syarat : - Bagian kiri dan bagian kanan tanda assignment (ß) bertipe sama - nama_var1 dan nama_var (bagian kiri tanda ß) harus merupakan nama variabel, tidak boleh nama konstanta, type, fungsi, atau prosedur - nama yang tertulis di bagian kanan tanda assigment (ß)boleh berupa nama variabel, nama fungsi, nama konstanta - semua nama yang dipakai dalam assignment tidak bleh berupa nama type atau prosedur Contoh : k, suhu1, suhu2, Total : integer ketemu : boolean J : Jam Jarak : real NamaKota : string Algoritma k ß 10 ketemu ß false Jarak ß 34.8 NamaKota ß Tasikmalaya Suhu1 ß 40 Suhu2 ß 30 Total ß Suhu1 + Suhu2 Suhu1 ß Suhu2 Total ß k*20+14 Modul Algoritma dan Pemrograman Page 21

23 Pembacaan Nilai dari Piranti Masukan Selain dengan assignment, suatu nilai dapat diisikan ke suatu nama variabel melalui pembacaan nilai tersebut dari piranti masukan(keyboard, mouse, scanner, dsb). Disebut dibaca karena arah dari pengisian harga yaitu seakan-akan komputer membaca nilai yang diberikan pengguna. Bentuk Umum : Algoritma read(nama_variabel) {membaca sebuah nilai} read(list nama_variabel) {membaca lebih dari satu nilai} Contoh : Nim : integer Nama : string Indeks : char Nilai : real Algoritma read(nim) read(nama) read(nilai, Indeks) 2. Penulisan nilai ke piranti keluaran Suatu nilai/harga yang disimpan dalam memori komputer harus dapat dikomunikasikan ke dunia luar untuk diinterpretasikan oleh pemakai program. Dalam hal ini, nilai harus dapat dituliskan ke suatu piranti keluaran, misalnya layar, printer. Bentuk Umum : Algoritma write(nama_variabel) {menuliskan isi nama_variabel ke piranti keluaran} write(konstanta) {menuliskan konstanta / isi nama_konstanta ke piranti keluaran} write(ekspresi) {menuliskan harga hasil perhitungan ekspresi ke piranti keluaran } write(list-nama) {menuliskan semua harga sesuai urutan penulisannya } dengan syarat : - list-nama adalah satu atau lebih nama : boleh nama variabel, nama konstanta, atau hasil pemanggilan fungsi - nama-nama dalam list-nama tidak boleh berupa nama type atau nama prosedur - nama yang dituliskan sudah terdefinisi harganya. Jika nama_variabel sudah didefinisikan dengan assignment atau instruksi read Modul Algoritma dan Pemrograman Page 22

24 Contoh : const pass : string = abce A, B : integer Nilai : real Algoritma Nilai ß 92.7 read(a, B) write(pass, Nilai) write( Teknik Informatika ) write(100) write(a + B) write((a + B)/2*10) 4.4 OPERATOR DAN EKSPRESI Operator adalah lambang-lambang yang biasa dilibatkan dalam program untuk melakukan suatu operasi atau manipulasi. Misalnya untuk perkalian, penjumlahan, perbandingan, dll. Sedangkan ekspresi adalah suatu rumus perhitungan yang terdiri dari operan dan operator. Operan harus mempunyai harga, karena itu dapat berupa konstanta, nama variabel(yang dipakai dalam perhitungan adalah harga yang dikandung nama variabel), hasil pengiriman suatu fungsi, atau merupakan suatu ekspresi Contoh Ekspresi : a ß b + c 2 Pada ekspresi ini, a, b, dan c merupakan nama variabel yang berperan sebagai operand sedangkan simbol ß, + dan merupakan operator. Dalam hal ini variabel a diisi dengan hasil penjumlahan b dan c dikurangi 2. Jenis jenis operator : 1. Operator Perbandingan Operator perbandingan digunakan untuk membandingkan dua operand. Operand yang dibandingkan bisa bertipe bilangan bulat, karakter, real, boolean, atau string. Ekspresi yang menggunakan operator perbandingan akan menghasilkan nilai boolean(true atau false). Operator Operasi Contoh Ekpresi Hasil = Sama dengan a := 6 = 9 a = false Tidak sama dengan a := 7 5 a = true < Lebih kecil dari a := 4 < 6 a = true > Lebih besar dari a := 10 > 1 a = true Lebih kecil atau sama dengan a := 8 4 a = false Lebih besar atau sama dengan a := 3 1 a = true Modul Algoritma dan Pemrograman Page 23

25 2. Operator aritmatika Operator aritmatika hanya dapat dikenakan pada operand bertipe bilangan bulat atau bilangan real. Ekspresi yang menggunakan operator ini pun hanya akan menghasilkan nilai bilangan bulat atau real Operator Operasi Hasil Contoh Ekpresi Hasil + Jumlah Integer/Real x ß x ß x = 21 x = Kurang Integer/Real x ß 15 2 x ß x = 13 x = 1.0 * Kali Integer/Real x ß 5 * 6 x ß 2.0 * 1.1 x = 30 x = 2.2 / Bagi Real x ß 6 / 4 x = 1.5 div Pembagian bilangan bulat integer z ß 7 div 2 z = 3 mod Sisa pembagian bilangan bulat integer z ß 7 mod 2 z = 1 ^ Pangkat integer/real z ß 2 ^ 3 z = 8 3. Operator logika Operator ini dikenakan pada operand bertipe boolean dan ekspresinya akan menghasilkan nilai boolean(true atau false) Operator Arti Hasil not negasi boolean and dan boolean or atau boolean xor exclusive OR boolean Hasil operator not, and, or, dan xor untuk berbagai kombinasi kondisi A B not A not B A and B A or B A xor B true true false false true true false true false false true false true true false true true false false true true false false true true false false false Contoh penggunaan operator pada ekspresi : Gaji_Total, Gaji_Pokok, Potongan : real HBagi,HSisa : integer k, l, m, n: boolean; k := true; l := false; read(gaji_pokok,potongan) Gaji_Total ß Gaji_Pokok Potongan HBagi ß (5 * 7) div 3 HSisa ß (5 * 7) mod 3 m := (k or l) and l; n := ((6 >= 8) and (9 <> 1)) or (3 < 7); write(hbagi, HSisa, Gaji_Total, m, n); Modul Algoritma dan Pemrograman Page 24

26 5 AKSI SEKUENSIAL Aksi sekuensial(runtunan) adalah sederetan instruksi atau aksi yang akan dilaksanakan (dieksekusi) oleh komputer berdasarkan urutan penulisannya. Jadi, jika dituliskan sebuah aksi sekuensial yang terdiri dari deretan instruksi/aksi ke 1, 2, 3, 4,..n maka setiap instruksi/aksi akan dilaksanakan secara sekuensial mulai dari yang ke-1, kemudian ke-2, ke-3,...s/d ke-n. Program paling sederhana tentunya hanya mengandung salah satu instruksi saja. Urutan instruksi dalam algoritma sangat penting, ada aksi sekuensial yang jika diubah urutan instruksi/aksinya akan mempengaruhi hasil eksekusi program. Contoh aksi sekuensial yang berpengaruh jika diubah urutannya : Algorima Runtunan_1 p, q : integer p ß 15 p ß 2* p q ß p write(q) {nilai q yang dicetak = 30} Algorima Runtunan_2 p, q : integer p ß 15 q ß p p ß 2* p write(q) {nilai q yang dicetak = 15} Beberapa contoh aksi sekuensial : Contoh 1 : HELLO Permasalahan : Tuliskan algoritma untuk menulis HELLO ke piranti keluaran Input : - Output Proses : HELLO : menulis HELLO Algoritma Cetak_HELLO {Menulis HELLO ke piranti keluaran} write( HELLO ) Modul Algoritma dan Pemrograman Page 25

27 Contoh 2 : HELLO X Permasalahan : Tuliskan algoritma untuk membaca sebuah nama, dan menulis HELLO yang diikuti dengan nama yang diketikkan ke piranti keluaran Input Output Proses : nama : HELLO <nama> : menulis HELLO diikuti nama yang dibaca Algoritma Cetak_HELLOX {Menulis HELLO berikut nama yang dibaca dari piranti masukan ke piranti keluaran} nama : string read(nama) write( HELLO,nama) Contoh 3 : SEGITIGA Permasalahan : Tuliskan algoritma untuk menghitung Luas Segitiga dengan membaca harga alas (cm) dan tinggi (cm) kemudian menuliskan hasilnya ke piranti keluaran Input Output : alas(alas segitiga, cm), real dan tinggi(tinggi segitiga, cm), real : Luas(Luas segitiga), real Proses : menghitung dan menuliskan Luas Segitiga = a la s x tin g g i 2 Algoritma Hitung_Luas_Segitiga {Membaca alas dan tinggi, menghitung Luas=alasxtinggi/2 dan menuliskan hasilnya } alas : real (panjang alas segitiga, satuan cm) tinggi : real Luas : real read(alas) read(tinggi) Luas ß alas * tinggi / 2 write(luas) Contoh 4 : GAJI Permasalahan : Dibaca nama karyawan dan gaji pokok bulanannya. Buat algoritma untuk menghitung dan menampilkan gaji bersih karyawan tersebut dengan ketentuan : - Gaji bersih = gaji pokok + tunjangan pajak - Tunjangan untuk setiap pegawai sama dan tetap setiap bulannya yaitu Pajak 10% dari (gaji pokok+tunjangan) Input Output : Nama dan Gaji Pokok : Gaji Bersih Modul Algoritma dan Pemrograman Page 26

28 Proses : menghitung dan menampilkan Gaji Bersih = gaji pokok + tunjangan pajak, Tunjangan = , Pajak = 10 x (Gaji Pokok + Tunjangan) 100 Algoritma_Gaji_Karyawan {Menghitung Gaji bersih karyawan dengan membaca nama karyawan dan gaji pokoknya. Gaji bersih = gaji pokok+tunjangan pajak} const Tunjangan : real = nama_kar : string gaji_pokok, pajak, gaji_bersih : real read(nama_kar, gaji_pokok) pajak ß 0.1 * (gaji_pokok + tunjangan) gaji_bersih ß gaji_pokok + tunjangan pajak write(nama_kar, gaji_bersih) Contoh 5 : TUKAR Permasalahan : Buatlah algoritma yang membaca dua buah bilangan integer yang ditampung dalam variabel, menukarkan harga variabel tersebut dan menuliskan hasil pertukarannya Input : dua bilangan integer A dan B Output : dua bilangan integer A dan B yang telah ditukar harganya Proses : menukarkan harga variabel antara A dan B menggunakan sebuah variabel penampung sementara Algoritma_TUKAR {mempertukarkan nilai antara A dan B} A, B, temp : integer read(a, B) temp ß A A ß B B ß temp write(a, B) Modul Algoritma dan Pemrograman Page 27

29 6 PEMILIHAN Analisis kasus adalah salah satu elemen primitif pembangun algoritma. Analisis kasus diperlukan dalam sebuah program ketika terdapat suatu instruksi yang hanya dikerjakan jika memenuhi persyaratan atau kondisi tertentu. Contoh pada algoritma Ibu Tati mengupas kentang Penulisan Algoritma Yang Mengandung Analisa Kasus/Pemilihan 1. Flowchart Permasalahan : Diberikan nama dan nilai mahasiswa, jika nilai tersebut lebih besar atau sama dengan 60 maka mahasiswa tersebut dinyatakan lulus jika nilai lebih kecil dari 60 maka dinyatakan tidak lulus. Uraian kalimat deskriptif (narasi) DESKRIPSI : o baca nama dan nilai mahasiswa. o jika nilai >= 60 maka keterangan = lulus o tetapi jika nilai < 60 maka keterangan = tidak lulus. o tulis nama dan keterangan Flow chart 2. Pseudocode Penulisan algoritma yang mengandung analisis kasus menggunakan pseudocode terdiri dari dua struktur umum : IF-THEN dan DEPEND-ON Mendefinisikan analisis kasus adalah mendefinisikan : - kondisi boolean, berupa suatu ekspresi yang menghasilkan nilai true atau false - aksi yang akan dilaksanakan jika kondisi yang dipasangkan dengan aksi yang bersangkutan dipenuhi. Ungkapan Kondisi dapat dihasilkan dengan operator perbandingan dan operator logika. contoh kondisi : x > 100, kar = *, (a 0) or (b = 0), ketemu = true, not ketemu Modul Algoritma dan Pemrograman Page 28

30 IF-THEN a. Satu Kasus if <kondisi> then aksi Contoh contoh : a. if x > 100 then x ß x + 1 b. if (a 0) or (b = 0) then b ß a * b write(b) c. if (ketemu) then if a 10 then read(b) Contoh Kasus 1 : Algoritma HURUF_VOKAL {mencetak pesan huruf vokal bila sebuah karakter yang dibaca merupakan huruf vokal. Asumsi huruf kecil} huruf : char read(huruf) if (huruf= a ) or (huruf= i ) or (huruf= u ) or (huruf= e ) or (huruf= o ) then write( Huruf Vokal ) Contoh Kasus 2 : Algoritma Bilangan_Genap {mencetak pesan bilangan genap kemudian kalikan bilangan tersebut dengan angka 2 jika bilangan bulat yang dimasukkan dari piranti masukan merupakan bilangan genap} bil : integer read(bil) if bil mod 2 = 0 then write( bilangan genap ) write(bil*2) Modul Algoritma dan Pemrograman Page 29

31 b. Dua Kasus if <kondisi> then aksi1 else aksi2 Contoh contoh : a. if a > 0 then write( bilangan positif ) else write( bilangan negatif ) b. if (k > 4) and (k div 2 = 4) then read(n) z ß n * k else read(m) z ß n / k Contoh Kasus 1 : Algoritma Kelulusan_Mhs {Menerima masukan nama dan nilai mahasiswa, jika nilai tersebut lebih besar atau sama dengan 60 maka mahasiswa tersebut dinyatakan lulus jika tidak maka dinyatakan tidak lulus} Nama : string Nilai : integer Keterangan : string read (nama, nilai) if nilai >= 60 then keterangan ß lulus else keterangan ß tidak lulus write(nama, keterangan) Contoh Kasus 2 : Algoritma Bilangan_Genap_dan_Ganjil {Mencetak bilangan genap jika bilangan bulat yang dibaca merupakan bilangan genap dan bilangan ganjil jika bukan bilangan genap} Bil : integer read(bil) if (bil mod 2 = 0) then write( Bilangan Genap ) else write( Bilangan Ganjil ) Modul Algoritma dan Pemrograman Page 30

32 c. Banyak Kasus if <kondisi1> then aksi1 else if <kondisi2> then aksi2 else if <kondisi3> then aksi3 Contoh Kasus 1 : Membaca dua buah nilai integer, jika nilai pertama lebih besar atau sama dengan nilai kedua kerjakan nilai pertama/nilai kedua, jika nilai kedua lebih besar dari nilai pertama kerjakan nilai kedua/nilai pertama, tetapi jika nilai kedua = 0 maka tampilkan pesan error Algoritma WUJUD_AIR {Menentukan hasil pembagian} n1, n2 : integer hasil : real read(n1,n2) if n2=0 then write( Error ) else if n1 n2 then hasil ß n1/n2 else hasil ß n2/n1 write(hasil) DEPEND-ON Untuk menyederhanakan pola IF-THEN-ELSE jika terdapat banyak kasus. Strukturnya : depend on (nama) <kondisi1> : aksi1 <kondisi2> : aksi2 <kondisi3> : aksi3... <kondisin> : aksin [otherwise aksix] Tiap langkah diperiksa kebenarannya. Jika kondisi ke-k benar maka aksi ke-k dilaksanakan. Kondisi berikutnya tidak dipertimbangkan lagi. Jika tidak ada satupun aksi yang benar maka aksi sesudah otherwise yang dikerjakan. Modul Algoritma dan Pemrograman Page 31

33 Contoh Kasus 1: Dibaca nomor dari 1-7 untuk menunjukkan hari. Tuliskan nama hari sesuai nomor harinya Algoritma NAMA_HARI {Mencetak nama bulan } Nomor_hari : integer read(nomor_hari) depend on (nomor_ hari) nomor_hari=1 : write( Januari ) nomor_hari =2 : write( Februari ) nomor_hari =3 : write( Maret ) nomor_hari =4 : write( April ) nomor_hari =5 : write( Mei ) nomor_hari =6 : write( Juni ) nomor_hari =7 : write( Juli ) otherwise write( Bukan nomor hari yang benar ) Modul Algoritma dan Pemrograman Page 32

34 7 PENGULANGAN Komputer memiliki kemampuan untuk mengerjakan suatu instrukasi (aksi) secara berulang-ulang dengan performansi yang sama. Kemampuan tersebut menjadi salah satu keunggulan komputer dibandingkan manusia karena manusia biasanya tidak menyukai tugas-tugas monoton yang dikerjakan secara berulang-ulang (karena lelah atau bosan). Notasi pengulangan adalah salah satu notasi dasar dalam penulisan algoritma selain pemilihan. Terdapat beberapa macam struktur pengulangan pada algoritma dan beberapa diantaranya yang paling banyajk digunakan antara lain struktur FOR, WHILE-DO, dan REPEAT-UNTIL.. Masing-masing struktur digunakan pada jenis permasalahan yang berbeda meskipun untuk beberapa kasus sebuah struktur pengulangan dapat diganti dengan struktur pengulangan yang lain. 1. Struktur FOR Struktur ini digunakan bila sudah diketahui berapa kali akan mengulang satu atau beberapa aksi dalam badan pengulangan. Bentuk Umum : for variabel ß nilai_awal to nilai_akhir do aksi1 aksi2... aksin endfor Catatan : variabel adalah nama variabel kontrol bertipe karakter atau integer yang berfungsi sebagai pencacah pengulangan aksi1, aksi2,..., aksin merupakan satu atau lebih instruksi yang dikerjakan secara berulang-ulang nilai_awal dan nilai_akhir bisa berupa konstanta atau ekspresi nilai_awal harus lebih kecil atau sama dengan nilai_akhir tipe data variabel harus sama dengan tipe data nilai_awal dan nilai_akhir Pengulangan akan dilakukan sebanyak nilai_akhir - nilai_awal + 1 Contoh : Membuat sebuah algoritma untuk menampilkan bilangan dari 1 sampai 10 Algoritma Show_Numeric { menampilkan bilangan integer dari 1 sampai 10} i : integer for i ß 1 to 10 do write(i) endfor Modul Algoritma dan Pemrograman Page 33

35 For juga dapat digunakan pada pengulangan yang mencacah dari bilangan lebih besar ke bilangan yang lebih kecil Bentuk Umum : for variabel ß nilai_awal downto nilai_akhir do aksi1 aksi2... aksin endfor Catatan : variabel adalah nama variabel kontrol bertipe karakter atau integer yang berfungsi sebagai pencacah pengulangan aksi1, aksi2,..., aksin merupakan satu atau lebih instruksi yang dikerjakan secara berulang-ulang nilai_awal dan nilai_akhir bisa berupa konstanta atau ekspresi nilai_awal harus lebih besar atau sama dengan nilai_akhir tipe data variabel harus sama dengan tipe data nilai_awal dan nilai_akhir Pengulangan akan dilakukan sebanyak nilai_awal - nilai_akhir + 1 Contoh : Membuat sebuah algoritma untuk menampilkan bilangan dari N sampai 1 dimana N diinpuitkan dari user Algoritma Show_Numeric2 { menampilkan bilangan integer dari N sampai 1} i, N : integer read(n) for i ß N downto 1 do write(i) endfor 2. Struktur WHILE-DO (Pengulangan berdasarkan kondisi ulang) Struktur pengulangan ini biasanya digunakan pada kasus yang belum pasti berapa kali aksi/instruksinya akan diulang. Struktur While mirip struktur IF yang melakukan pemeriksaan ekspresi boolean sebelum satu atau lebih aksi dikerjakan. Bentuk Umum : while (kondisi) do aksi1 aksi2... aksin endwhile Catatan : Kondisi adalah kondisi pengulangan berupa ekspresi boolean yang dapat menghasilkan nilai True atau False Aksi pada badan pengulangan dilaksanakan selema (kondisi) menghasilkan nilai True Pengulangan berhenti jika (kondisi) menghasilkan nilai False Modul Algoritma dan Pemrograman Page 34

36 Contoh : Membuat sebuah algoritma untuk menampilkan bilangan dari 1 sampai 10 Algoritma Show_Numeric3 { menampilkan bilangan integer dari 1 sampai 10} i : integer i ß 1 while i 10 do write(i) i ß i + 1 endwhile Badan pengulangan (aksi) pada struktur While-Do mungkin tidak akan pernah dilakukan karena sebelum aksi pertama dieksekusi, dilakukan test terhadap kondisi pengulangan. Pengulangan ini berpotensi untuk menimbulkan aksi kosong (tidak pernah melakukan apa-apa) jika pada test pertama kondisi menghasilkan nilai False Contoh : f : boolean f ß true while (not f) do enwhile f ß not f 3. Struktur REPEAT-UNTIL (Pengulangan berdasarkan kondisi berhenti) Struktur ini hampir sama dengan struktur Whike dan biasanya digunakan bila jumlah pengulangan belum dapat ditentukan saat program ditulis Bentuk Umum : Repeat aksi1 aksi2... aksin Until (kondisi berhenti) Catatan : Kondisi berhenti berupa ekspresi boolean yang dapat menghasilkan nilai True atau False Aksi pada badan pengulangan akan dikerjakan sampai kondisi berhenti bernilai True Badan pengulangan (aksi) pada struktur ini minimal dikerjakan satu kali karena pada waktu eksekusi pengulangan yang pertama tidak dilakukan test terhadap kondisi berhenti. Test terhadap kondisi berhenti dilakukan setelah aksi dikerjakan Modul Algoritma dan Pemrograman Page 35

37 Contoh : Membuat sebuah algoritma untuk menampilkan bilangan dari 1 sampai 10 Algoritma Show_Numeric4 { menampilkan bilangan integer dari 1 sampai 10} i : integer i ß 1 repeat write(i) i ß i + 1 until i > 10 Perbedaan struktur Repeat-Until dan While-Do terletak pada pengecekan kondisi. Jika pada struktur While, kondisi dicek pada awal badan pengulangan, sedangkan pada struktur Repeat kondisi dicek pada akhir badan pengulangan. Perbedaan yang lain, bila struktur While mengulang pernyataan selama kondisi masih terpenuhui (kondisi = True), struktur Repeat mengulang pernyataan selama kondisi belum terpenuhi (kondisi = False) STUDI KASUS 1. Membuat algoritma untuk menampilkan semua bilangan faktor dari n dimana n diinputkan oleh user Algoritma Faktor n, i : integer read(n) for i ß 1 to n do if (n mod i = 0) then write(i) endfor 2. Buat algoritma untuk membaca dan menghitung nilai mahasiswa kemudian menghitung nilai rata-rata dari nilai mahasiswa tersebut. Proses pembacaan dan perhitungan dilakukan sampai user tidak ingin menginputkan lagi Algoritma Rerata_Nilai_Mahasiswa n : integer jawab : char nilai, jumlah, rata : real jumlah ß 0 n ß 0 repeat read(nilai) jumlah ß jumlah + nilai n ß n + 1 write( Apakah anda ingin input data lagi (y/t)? ) read(jawab) until (jawab = T ) or (jawab = t ) rata ß jumlah / n write(rata) Modul Algoritma dan Pemrograman Page 36

38 8 RECORD Untuk merepresentasikan sebuah objek, sering tipe data dasar seperti integer, real, boolean, char, tidak dapat memenuhinya. Oleh karena itu, dibentuklah tipe bentukan yang merupakan gabungan dari beberapa tipe data dasar atau dari tipe bentukan lainnya. Salah satu tipe bentukan tersebut adalah record. Record adalah salah satu tipe data terstruktur(structured ata type) bentukan yang setiap recordnya terdiri dari beberapa elemen yang disebut field. Setiap field menggambarkan informasi tertentu dan tipe data pada masing-masing field dapat berbeda-beda namun sudah dikenal baik itu tipe dasar atau tipe bentukan lainnya. Ilustrasi sebuah record Sebagai contoh, di dalam matematika untuk menggambarkan sebuah titik pada diagram kartesian digunakan dua bilangan integer atau real yaitu untuk menunjukkan koordinat titik yang ditunjuk pada sumbu x dan sumbu y. Untuk merepresentasikan tanggal juga digunakan tipe bentukan yang terdiri dari hari, bulan, dan tahum yang masing-masing bertipe integer. Data pegawai juga terdiri dari beberapa elemen seperti nama, tanggal lahir, dan alamat. Untuk menjawab semua kebutuhan pada beberapa contoh tersebut, dibuatlah tipe bentukan yang disebut record. DEKLARASI RECORD Seperti halnya tipe data lain, tipe data record juga harus dideklarasikan terlebih dahulu di bagian kamus jika kita ingin menggunakan sebuah variabel yang bertipe record pada bagian deskripsi algoritmanya. Deklarasi record pada algoritma adalah sebagai berikut : type nama_record : record < nama_field1 : tipe_field1, nama_field2 : tipe_field2... nama_fieldn : tipe_fieldn > Contoh 1 : Type Titik {menyatakan absis dan ordinat pada diagram kartesian} Titik dalam koordinat kartesian dinyatakan sebagai (x,y) dengan x adalah nilai absis dan y adalah nilai ordinat. Kita dapat menyatakan titik sebagai record dengan (x,y) sebagai field x y field 1 field 2 field 3 field n type Titik : record < x : real, y : real > {absis} {ordinat} Jika dideklarasikan sebuah variabel T sebagai berikut : T : Titik {artinya : mendeklarasikan variabel T bertipe Titik} Maka cara mengacu atau mengakses nilai elemen yang tersimpan pada T yang telah terdefinisi adalah : T.x dan T.y Modul Algoritma dan Pemrograman Page 37

39 Contoh : type Titik : record < x : real, y : real > T : Titik T.x ß 4.5 T.y ß -2.0 read(t.x, T.y) write(t.x, T.y) Contoh 2 : Type Tanggal{menyatakan tanggal, bulan, dan tahun dalam kalender Masehi} Tipe tanggal merepresentasikan tanggal pada kalender Masehi dalam notasi dd mm yy dimana dd sebagai tanggal bernilai [1..31], mm sebagai bulan bernilai [1..12], dan yy sebagai tahun bernilai [>0] dd mm yy type Tanggal : record <dd : integer[1..31], mm : integer[1..12], yy : integer[>0] > Jika dideklarasikan sebuah variabel TGL sebagai berikut : TGL : Tanggal {artinya : mendeklarasikan variabel TGL bertipe Tanggal} Maka cara mengacu atau mengakses nilai elemen yang tersimpan pada TGL yang telah terdefinisi adalah : Contoh : TGL.dd, TGL.mm, dan dan TGL.yy type Tanggal : record < dd : integer[1..31], mm : integer[1..12], yy : integer[>0] > TGL : Tanggal TGL.dd ß 20 TGL.mm ß 2 TGL.yy ß 1987 read(tgl.dd, TGL.mm, TGL.yy) write(tgl.dd, TGL.mm, TGL.yy) Contoh 3 : Type Waktu{menyatakan jam, menit, dan detik } Tipe waktu merepresentasikan WAKTU dalam notasi hh:mm:ss dimana hh sebagai jam bernilai [0..23], mm sebagai menit bernilai [0..59], dan ss sebagai detik bernilai [0..59] hh mm ss type Waktu : record < hh : integer[0..23], mm : integer[0..59], ss : integer[0..59] > Modul Algoritma dan Pemrograman Page 38

Tipe Data, Nama, Nilai. Chapter 4

Tipe Data, Nama, Nilai. Chapter 4 Tipe Data, Nama, Nilai Chapter 4 1 Tipe Data Pada umumnya, program komputer bekerja dengan memanipulasi objek (data) di dalam memori. Objek (data) yang akan diprogram bermacam-macam jenis atau tipenya

Lebih terperinci

Nama, Tipe, Ekspresi, dan Nilai

Nama, Tipe, Ekspresi, dan Nilai Nama, Tipe, Ekspresi, dan Nilai ALGORITMA DAN PEMROGRAMAN [IS6110102] Dosen: Yudha Saintika, S.T., M.T.I Sub-Capaian Pembelajaran MK Mahasiswa mampu menerapkan konsep nama, tipe, ekspresi, nilai ke dalam

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-2 (Teks Algoritma) Noor Ifada noor.ifada@if.trunojoyo.ac.id S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Judul Algoritma Deklarasi Deskripsi Translasi

Lebih terperinci

ALGORITMA, PEMROGRAMAN DAN BAGAN ALIR

ALGORITMA, PEMROGRAMAN DAN BAGAN ALIR Company LOGO ALGORITMA, PEMROGRAMAN DAN BAGAN ALIR Dian Palupi Rini, M.Kom Pendahuluan Komputer adalah alat bantu untuk menyelesaikan masalah. Dalam menyelesaian masalah dengan komputer perlu merumuskan

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-2 (Teks Algoritma) :: Noor Ifada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Judul Algoritma Deklarasi Deskripsi Translasi Teks Algoritma ke dalam

Lebih terperinci

Pertemuan 2 Konsep Dasar Algoritma

Pertemuan 2 Konsep Dasar Algoritma Pertemuan 2 Konsep Dasar Algoritma Pengajar : Teuku Mirwan Sahputra, ST E-mail : mirwan@serambimekkah.ac.id Blog : http://bahasacode.blogspot.com Prinsip Pembuatan Program Ada 4 aktivitas dalam pembuatan

Lebih terperinci

Bab 2 DASAR-DASAR ALGORITMA

Bab 2 DASAR-DASAR ALGORITMA Bab 2 DASAR-DASAR ALGORITMA Pada bab ini anda akan mempelajari 1. Nama (pengenal) 2. Nilai 3. Variabel dan Konstanta 4. Penugasan (Assignment) 5. Jenis-jenis tipe data 6. Jenis-jenis operasi dan kaitannya

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-2 (Teks Algoritma) :: Noor Ifada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Judul Algoritma Deklarasi Deskripsi Translasi Teks Algoritma ke dalam

Lebih terperinci

Algoritma dan Struktur Data I Mia Fitriawati, S.Kom, M.Kom

Algoritma dan Struktur Data I Mia Fitriawati, S.Kom, M.Kom Runtunan Algoritma dan Struktur Data I Mia Fitriawati, S.Kom, M.Kom Runtunan terdiri dari satu atau lebih pernyataan Tiap pernyataan dikerjakan secara berurutan sesuai urutannya Urutan instruksi menentukan

Lebih terperinci

Algoritma dan Struktur Data

Algoritma dan Struktur Data Algoritma dan Struktur Data Algoritma Pemrograman Bekti Wulandari, M.Pd Kelas B TE 2014 Program Program: sederetan perintah-perintah yang harus dikerjakan oleh komputer untuk menyelesaikan masalah. 3 level

Lebih terperinci

ALGORITMA, PEMROGRAMAN DAN BAGAN ALIR. Pertemuan Ke-1

ALGORITMA, PEMROGRAMAN DAN BAGAN ALIR. Pertemuan Ke-1 ALGORITMA, PEMROGRAMAN DAN BAGAN ALIR Pertemuan Ke-1 Pendahuluan Komputer adalah alat bantu untuk menyelesaikan masalah. Dalam menyelesaian masalah dengan komputer perlu merumuskan langkahlangkah penyelesaian

Lebih terperinci

PENGENALAN KOMPUTER. Sistem Komputer. Dian Palupi Rini, M.Kom

PENGENALAN KOMPUTER. Sistem Komputer. Dian Palupi Rini, M.Kom PENGENALAN KOMPUTER Dian Palupi Rini, M.Kom Sistem Komputer Komputer Definisi komputer adalah alat elektronik yang dapat menerima input data, mengolah data dan memberikan hasil dalam bentuk informasi dengan

Lebih terperinci

Dasar Komputer dan Pemrograman. Konsep Tipe Data dan Operator Nama dan Nilai Data

Dasar Komputer dan Pemrograman. Konsep Tipe Data dan Operator Nama dan Nilai Data Dasar Komputer dan Pemrograman Konsep Tipe Data dan Operator Nama dan Nilai Data Mahasiswa memahami penggunaan tipe data dan operator serta translasinya ke dalam pseudocode. Mahasiswa memahami aturan penamaan

Lebih terperinci

Konstruksi Dasar Algoritma

Konstruksi Dasar Algoritma Konstruksi Dasar Algoritma ALGORITMA DAN PEMROGRAMAN [IF6110202] Yudha Saintika, S.T., M.T.I. Sub-Capaian Pembelajaran MK Pendahuluan Instruksi dan Aksi Algoritma merupakan deskripsi urutan pelaksanaan

Lebih terperinci

PSEUDOCODE TIPE DATA, VARIABEL, DAN OPERATOR

PSEUDOCODE TIPE DATA, VARIABEL, DAN OPERATOR 1 PSEUDOCODE TIPE DATA, VARIABEL, DAN OPERATOR Siti Mukaromah, S.Kom TEKNIK PENYAJIAN ALGORITMA Teknik Tulisan Structure English Pseudocode Teknik Gambar Structure Chart HIPO Flowchart 2 PSEUDOCODE Kode

Lebih terperinci

TIPE, NAMA, DAN NILAI

TIPE, NAMA, DAN NILAI TIPE, NAMA, DAN NILAI Dian Palupi Rini, M.Kom Tipe Dasar Bilangan Logika Nama Tipe adalah boolean (diambil dari nama matematikawan Inggris George Boole). Ranah Nilai : true (benar) dan false (salah). Konstanta

Lebih terperinci

Brigida Arie Minartiningtyas, M.Kom

Brigida Arie Minartiningtyas, M.Kom Brigida Arie Minartiningtyas, M.Kom Pseudocode Pseudo berarti imitasi atau mirip atau menyerupai Code menunjukkan kode dari program Pseudocode adalah kode yang mirip dengan instruksi kode program yang

Lebih terperinci

1. Kompetensi Mengenal dan memahami notasi-notasi algoritma yang ada.

1. Kompetensi Mengenal dan memahami notasi-notasi algoritma yang ada. Semester : 4 Pengenalan Algoritma dan Program 200 menit No. : LST/EKA/EKA259/01 Revisi : 01 Tgl. : 10-2-2014 Hal. 1 dari 2 hal. 1. Kompetensi Mengenal dan memahami notasi-notasi algoritma yang ada. 2.

Lebih terperinci

MODUL 3 ALGORITMA PEMROGRAMAN

MODUL 3 ALGORITMA PEMROGRAMAN MODUL 3 ALGORITMA PEMROGRAMAN Pada Modul ini anda akan mempelajari 1. Pengenal 2. Nilai 3. Variabel dan Konstanta 4. Penugasan (Assignment) 5. Jenis-jenis tipe data 6. Jenis-jenis operasi dan kaitannya

Lebih terperinci

Algoritma dan Struktur Data

Algoritma dan Struktur Data Algoritma dan Struktur Data Program Program: sederetan perintah-perintah yang harus dikerjakan oleh komputer untuk menyelesaikan masalah. 3 level bahasa pemrograman: 1. Bahasa tingkat rendah 2. Bahasa

Lebih terperinci

STRUKTUR DASAR ALGORITMA

STRUKTUR DASAR ALGORITMA STRUKTUR DASAR ALGORITMA Pertemuan 5 Muhamad Haikal, S.Kom., MT Struktur Dasar Algoritma 1. Struktur Sequence (Runtunan) 2. Struktur Selection (Pemilihan) 3. Struktur Repetition (Perulangan) Struktur Sequence

Lebih terperinci

ALGORITMA & PEMROGRAMAN

ALGORITMA & PEMROGRAMAN ALGORITMA & PEMROGRAMAN Hadi Hermansyah, S.Si.,., M.Si. Algoritma Adalah inti dari ilmu komputer. Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis dan logis.

Lebih terperinci

Struktur Program. Rinta Kridalukmana

Struktur Program. Rinta Kridalukmana Struktur Program Rinta Kridalukmana Struktur Program Struktur program merupakan suatu bentuk susunan dari suatu program yang dibuat. Secara umum, struktur program dibagi 3 bagian : Judul (header) Kamus

Lebih terperinci

Tinjau algoritma dibawah ini

Tinjau algoritma dibawah ini Matakuliah : Algoritma & Struktur Data Versi : 1.0.0 Materi : Tipe, Nama, dan Nilai Penyaji : Zulkarnaen NS 1 Tinjau algoritma dibawah ini Di dalam algoritma Euclidean, nilai m dan n dimanipulasi oleh

Lebih terperinci

Pertemuan Ke-2 (Teks Algoritma) Rahmady Liyantanto. S1 Teknik Informatika-Unijoyo

Pertemuan Ke-2 (Teks Algoritma) Rahmady Liyantanto. S1 Teknik Informatika-Unijoyo Algoritma Pemrograman Pertemuan Ke-2 (Teks Algoritma) Rahmady Liyantanto Sub Pokok Bahasan Pendahuluan Judul Algoritma Deklarasi Deskripsi Translasi Teks Algoritma ke dalam Teks Program Bahasa Pascal Tabel

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-3 (Tipe Data dan Nama) 1 Sub Pokok Bahasan Pendahuluan Tipe Dasar Tipe Bentukan Nama 2 Pendahuluan Tipe adalah pola representasi data dalam komputer Tipe data dapat dikelompokkan

Lebih terperinci

ALGORITMA TUGAS 2 RESUME ALGORITMA PERCABANGAN DAN ALGORITMA PERULANGAN. Disusun Oleh : Sakina Mawardah Teknik Informatika. Dosen : Asep M. Yusuf, S.

ALGORITMA TUGAS 2 RESUME ALGORITMA PERCABANGAN DAN ALGORITMA PERULANGAN. Disusun Oleh : Sakina Mawardah Teknik Informatika. Dosen : Asep M. Yusuf, S. ALGORITMA TUGAS 2 RESUME ALGORITMA PERCABANGAN DAN ALGORITMA PERULANGAN Disusun Oleh : Sakina Mawardah Teknik Informatika Dosen : Asep M. Yusuf, S.T UNIVERSITAS NASIONAL PASIM DAFTAR ISI A. Algoritma Percabangan...

Lebih terperinci

ALGORITHM. 6 Algoritma, Flowchart & Program. Dahlia Widhyaestoeti, S.Kom dahlia74march.wordpress.

ALGORITHM. 6 Algoritma, Flowchart & Program. Dahlia Widhyaestoeti, S.Kom dahlia74march.wordpress. ALGORITHM 6 Algoritma, Flowchart & Program Dahlia Widhyaestoeti, S.Kom dahlia.widhyaestoeti@gmail.com dahlia74march.wordpress.com Seorang sahabat dekat setara dengan seribu orang kerabat Euripides Euripides

Lebih terperinci

VARIABEL, TIPE DATA, KONSTANTA, OPERATOR DAN EKSPRESI. Pemrograman Dasar Kelas X Semester 2

VARIABEL, TIPE DATA, KONSTANTA, OPERATOR DAN EKSPRESI. Pemrograman Dasar Kelas X Semester 2 VARIABEL, TIPE DATA, KONSTANTA, OPERATOR DAN EKSPRESI Tujuan Pembelajaran 1. Siswa mampu memahami penulisan Tipe data, variabel dan konstanta dalam pascal 2. Siswa mampu menerapkan penggunaan Tipe data,

Lebih terperinci

STRUKTUR DASAR ALGORITMA

STRUKTUR DASAR ALGORITMA STRUKTUR DASAR ALGORITMA Tujuan Mahasiswa mampu memecahkan masalah dalam sebuah algoritma pemecahan masalah menggunakan struktur pemilihan dan pengulangan. Mahasiswa mengetahui struktur program bahasa

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-3 (Tipe Data dan Nama) Noor Ifada noor.ifada@if.trunojoyo.ac.id S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Tipe Dasar Tipe Bentukan Nama S1 Teknik

Lebih terperinci

PEMILIHAN. Runtunan. Dian Palupi Rini, M.Kom

PEMILIHAN. Runtunan. Dian Palupi Rini, M.Kom PEMILIHAN Dian Palupi Rini, M.Kom Runtunan Struktur runtunan hanya terdapat pada program sederhana. Pada umumnya, masalah yang akan diselesaikan memiliki beberapa alternatif pelaksanaan aksi. Suatu aksi

Lebih terperinci

@copyright by Emy PENGANTAR ALGORITMA & PROGRAM & PROGRAM PENGERTIAN ALGORITMA NOTASI UNTUK ALGORITMA

@copyright by Emy PENGANTAR ALGORITMA & PROGRAM & PROGRAM PENGERTIAN ALGORITMA NOTASI UNTUK ALGORITMA PENGANTAR ALGORITMA & PROGRAM PENGERTIAN ALGORITMA & PROGRAM NOTASI UNTUK ALGORITMA 1 Kompetensi Mampu menerapkan prinsip algoritma dan program sesuai dengan permasalahan, sistematis dan terstruktur. Mampu

Lebih terperinci

Teori Algoritma. Struktur Algoritma

Teori Algoritma. Struktur Algoritma Alam Santosa Teori Algoritma Runtunan Struktur Algoritma Seperti telah dijelaskan sebelumnya, sebuah algoritma terbagi tiga bagian, yaitu: Judul Deklarasi Deskripsi Judul Judul program digunakan untuk

Lebih terperinci

Pertemuan Ke-3 (Tipe Data dan Nama) Rahmady Liyantanto. S1 Teknik Informatika-Unijoyo

Pertemuan Ke-3 (Tipe Data dan Nama) Rahmady Liyantanto. S1 Teknik Informatika-Unijoyo Algoritma Pemrograman Pertemuan Ke-3 (Tipe Data dan Nama) Rahmady Liyantanto Sub Pokok Bahasan Pendahuluan Tipe Dasar Tipe Bentukan Nama Pendahuluan Tipe adalah pola representasi data dalam komputer. Tipe

Lebih terperinci

1: Pengertian Dasar Logika dan Algoritma STRUKTUR DASAR. Oleh: Imana Malia kondou, S.T.

1: Pengertian Dasar Logika dan Algoritma STRUKTUR DASAR. Oleh: Imana Malia kondou, S.T. Pertemuan Ke-9 STRUKTUR DASAR LOGIKA ALGORITMA Oleh: Imana Malia kondou, S.T. Tips Sukses Menjadi Mahasiswa Pergunakan waktu dengan maksimal Buat buku tugas dan kerjakan tugas segera Jaga komuikasi dengan

Lebih terperinci

PERTEMUAN 2 ALGORITMA & PEMROGRAMAN

PERTEMUAN 2 ALGORITMA & PEMROGRAMAN PERTEMUAN 2 ALGORITMA & PEMROGRAMAN POKOK BAHASAN 1. Pendahuluan 2. Tahapan Pembangunan Program 3. Pengenalan Algoritma 4. Cara Menyajikan Algoritma 5. Data Program 6. Elemen-Elemen Program PENDAHULUAN

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-3 Tipe Data dan Nama :: Noor Ifada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Tipe Dasar Tipe Bentukan Nama S1 Teknik Informatika-Unijoyo 2 Pendahuluan

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-3 (Tipe Data dan Nama) :: Noor Ifada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Tipe Dasar Tipe Bentukan Nama S1 Teknik Informatika-Unijoyo 2 1

Lebih terperinci

ALGORITMA (KOMPUTER) : ATURAN PENULISAN DAN STRUKTUR DASARNYA

ALGORITMA (KOMPUTER) : ATURAN PENULISAN DAN STRUKTUR DASARNYA ALGORITMA (KOMPUTER) : ATURAN PENULISAN DAN STRUKTUR DASARNYA I. Pendahuluan Algoritma dapat ditulis dalam notasi apapun asalkan mudah dimengerti dan dipahami. Algoritma dapat ditulis dalam bahasa natural/bahasa

Lebih terperinci

Algoritma dan Struktur Data

Algoritma dan Struktur Data 20/11/2014 Algoritma dan Struktur Data Algoritma Pemrograman Bekti Wulandari, M.Pd Kelas B TE 2014 Program Program: sederetan perintah-perintah yang harus dikerjakan oleh komputer untuk menyelesaikan masalah.

Lebih terperinci

PENGANTAR ALGORITMA PEMROGRAMAN

PENGANTAR ALGORITMA PEMROGRAMAN PENGANTAR ALGORITMA PEMROGRAMAN (IS1313) Ir. Roedi Goernida, MT. (roedig@yahoo.com) Program Studi Sistem Informasi Fakultas Rekayasa Industri Institut Teknologi Telkom Bandung 2011 1 Struktur Sistem Komputer

Lebih terperinci

SMA SANTO PAULUS PONTIANAK

SMA SANTO PAULUS PONTIANAK SMA SANTO PAULUS PONTIANAK Konsep Dasar Pemrograman Pascal Kelas X Semester 2 Pengayaan Teknologi Informasi dan Komunikasi Oleh : Vianney Alexius, mtb TIK-vianney.mtb 2012 Algoritma Serangkaian langkah

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-4 (Nilai dan Urutan [Sequence]) :: Noor Ifada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Nilai Pengisian nilai ke dalam nama peubah Ekspresi Menuliskan Nilai

Lebih terperinci

PENGANTAR ALGORITMA & PEMROGRAMAN C/C++ Analisis Algoritma dan Struktur Data (TKE 670)

PENGANTAR ALGORITMA & PEMROGRAMAN C/C++ Analisis Algoritma dan Struktur Data (TKE 670) PENGANTAR ALGORITMA & PEMROGRAMAN C/C++ Analisis Algoritma dan Struktur Data (TKE 670) Jum at, 04 Februari 2011 Topik Diskusi Komputer dan Pemrograman Mengenal Algoritma dan Struktur Data Langkah Penyelesaian

Lebih terperinci

CCH1A4 / Dasar Algoritma & Pemrogramanan

CCH1A4 / Dasar Algoritma & Pemrogramanan CCH1A4 / Dasar & Pemrogramanan Yuliant Sibaroni M.T, Abdurahman Baizal M.Kom KK Modeling and Computational Experiment FUNGSI Overview Fungsi Konsep Fungsi Fungsi Sederhana Fungsi dengan Analisa Kasus If...Then...Else

Lebih terperinci

PENGULANGAN Bagian 1 : Notasi. Tim Pengajar KU1071 Sem

PENGULANGAN Bagian 1 : Notasi. Tim Pengajar KU1071 Sem PENGULANGAN Bagian 1 : Notasi Tim Pengajar KU1071 Sem. 1 2009-2010 1 Tujuan Mahasiswa memahami jenis-jenis pengulangan dan penggunaannya serta memahami elemenelemen dalam pengulangan. Mahasiswa dapat menggunakan

Lebih terperinci

Aturan Penulisan Algoritma Setiap Algoritma akan selalu terdiri dari tiga bagian yaitu : Judul (Header) Kamus Algoritma

Aturan Penulisan Algoritma Setiap Algoritma akan selalu terdiri dari tiga bagian yaitu : Judul (Header) Kamus Algoritma Pengantar dan Pemrograman alex@ilmukomputer.com Lisensi Dokumen: Seluruh dokumen di IlmuKomputer.Com dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial (nonprofit),

Lebih terperinci

Algoritma & Pemrograman 1. Muhamad Nursalman Pendilkom/Ilkom Universitas Pendidikan Indonesia

Algoritma & Pemrograman 1. Muhamad Nursalman Pendilkom/Ilkom Universitas Pendidikan Indonesia Algoritma & Pemrograman 1 Muhamad Nursalman Pendilkom/Ilkom Universitas Pendidikan Indonesia Daftar Isi 1. Bab 1 Pengantar & Dasar Dasar Algoritma 2. Bab 2 Aturan Penulisan Teks Algoritma 3. Bab 3 Tipe,

Lebih terperinci

algoritma & pemrograman

algoritma & pemrograman algoritma & pemrograman materi pengajaran algoritma & pemrograman I (IF-185) 1. Pendahuluan 4. Procedure & Function - Bahasa Pemrograman Pertemuan : 3x - Membuat program / algoritma Pertemuan : 1x 5. UTS

Lebih terperinci

MODUL PRAKTIKUM PERCABANGAN DAN PENGULANGAN

MODUL PRAKTIKUM PERCABANGAN DAN PENGULANGAN PERCABANGAN DAN PENGULANGAN Pada BAB ini akan membahas tentang PERCABANGAN dan PERULANGAN. PERCABANGAN : a) IF THEN b) CASE OF PENGULANGAN: a) REPEAT N TIMES b) REPEAT UNTIL c) WHILE DO d) ITERATE STOP

Lebih terperinci

Algoritma & Pemrograman #1. Antonius Rachmat C, S.Kom, M.Cs

Algoritma & Pemrograman #1. Antonius Rachmat C, S.Kom, M.Cs Algoritma & Pemrograman #1 Antonius Rachmat C, S.Kom, M.Cs Algoritma Asal kata Algoritma (algorism - algorithm) berasal dari nama Abu Ja far Muhammad ibn Musa Al-Khuwarizmi Ilmuan Persia yang menulis kitab

Lebih terperinci

ALGORITMA & FLOWCHART

ALGORITMA & FLOWCHART ALGORITMA & FLOWCHART 1. DEFINISI ALGORITMA Terdapat beberapa definisi mengenai kata Algoritma : 1. Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis (Rinaldi

Lebih terperinci

MATERI 2 JENIS-JENIS DATA SEDERHANA & INPUT/OUTPUT DATA

MATERI 2 JENIS-JENIS DATA SEDERHANA & INPUT/OUTPUT DATA MATERI 2 JENIS-JENIS DATA SEDERHANA & INPUT/OUTPUT DATA Kata-Kata Cadangan Kata-kata cadangan (reserved words) adalah kata-kata yang sudah didefinisikan oleh Pascal yang mempunyai maksud tertentu. Kata-kata

Lebih terperinci

Proses, Instruksi, dan Aksi

Proses, Instruksi, dan Aksi Matakuliah : Algoritma & Struktur Data Versi : 1.0.0 Materi : Dasar-Dasar Algoritma Penyaji : Zulkarnaen NS 1 Proses, Instruksi, dan Aksi Pada dasarnya, sebuah algoritma merupakan deskripsi pelaksanaan

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-4 Nilai dan Urutan (sequence) :: Noor Ifada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Nilai Pengisian nilai ke dalam nama peubah Ekspresi Menuliskan Nilai

Lebih terperinci

Pertemuan 4 RUNTUNAN/SEKUENSIAL

Pertemuan 4 RUNTUNAN/SEKUENSIAL ALGORITMA PEMROGRAMAN (Semester 1 - IF6110202) Pertemuan 4 RUNTUNAN/SEKUENSIAL Jadwal: Selasa, 17/10/2017, 10:20-12.00 (2 sks) Dosen:Condro Kartiko CAPAIAN PEMBELAJARAN UMUM Setelah mengikuti mata kuliah

Lebih terperinci

Pengantar dalam Bahasa Pemrograman Turbo Pascal Tonny Hidayat, S.Kom

Pengantar dalam Bahasa Pemrograman Turbo Pascal Tonny Hidayat, S.Kom Pengantar dalam Bahasa Pemrograman Turbo Pascal Tonny Hidayat, S.Kom Pengantar Bahasa Pemrograman Pascal Page 1 / 11 Pengenalan Pascal Pascal merupakan salah satu bahasa pemrograman tingkat tinggi. Pemrograman

Lebih terperinci

Algoritma, Pseudo Code Flow Chart

Algoritma, Pseudo Code Flow Chart Algoritma, Pseudo Code Flow Chart Algoritma Asal kata Algoritma (algorism - algorithm) berasal dari nama Abu Ja far Muhammad ibn Musa Al-Khuwarizmi Ilmuan Persia yang menulis kitab al jabar w al-muqabala

Lebih terperinci

PENYELEKSIAN KONDISI dengan IF

PENYELEKSIAN KONDISI dengan IF 5 PENYELEKSIAN KONDISI dengan IF Bagian ini akan membahas : Pendahuluan Penyeleksian Kondisi dengan Satu Kasus Penyeleksian Kondisi dengan Dua Kasus Penyeleksian Kondisi dengan Tiga Kasus atau lebih Diagram

Lebih terperinci

HARGA & EKSPRESI Input dan Output

HARGA & EKSPRESI Input dan Output HARGA & EKSPRESI Input dan Output 1. HARGA Harga atau nilai adalah suatu besaran bertype yang telah dikenal. Harga dalam suatu algoritma dapat diperoleh dari : : - isi suatu nama, yaitu nama informasi

Lebih terperinci

ALGORITMA DAN PEMROGRAMAN

ALGORITMA DAN PEMROGRAMAN ALGORITMA DAN PEMROGRAMAN MATERI 3 1 2 Macam macam struktur algoritma : RUNTUNAN (SEQUENCE) PEMILIHAN (SELECTION) PENGULANGAN (REPETITION) 3 RUNTUNAN Runtunan merupakan struktur algoritma paling dasar

Lebih terperinci

POKOK BAHASAN - 1 ALGORITMA & PEMROGRAMAN

POKOK BAHASAN - 1 ALGORITMA & PEMROGRAMAN ALGORITMA & PEMROGRAMAN 2 POKOK BAHASAN - 1 ALGORITMA & PEMROGRAMAN Oleh : NAZARUDDIN AHMAD, S.T, M.T Design By mytemplate 2013 1. Konsep Dasar Algoritma Apa itu Algoritma? Urutan langkah-langkah untuk

Lebih terperinci

STRUKTUR DASAR PEMROGRAMAN

STRUKTUR DASAR PEMROGRAMAN STRUKTUR DASAR PEMROGRAMAN P E N G E N A L A N P R O G R A M S T U D I Institut Teknologi Sumatera 15/09/2017 PENGANTAR PROGRAM STUDI 1 TUJUAN KULIAH Subtopik Input Proses Output dalam program Deklarasi

Lebih terperinci

Algoritma Pemrograman I

Algoritma Pemrograman I Algoritma Pemrograman I Struktur Dasar Algoritma Notasi Algoritmik 1 Pernyataan Setiap langkah dalam algoritma dinyatakan dalam sebuah pernyataan (statement) Sebuah pernyataan berisi aksi (action) Contoh:

Lebih terperinci

# ONE PENGANTAR ALGORITMA PEMROGRAMAN

# ONE PENGANTAR ALGORITMA PEMROGRAMAN HANDOUT ALGORITMA PEMROGRAMAN DAN STRUKTUR DATA 1 PRODI SISTEM INFORMASI UKDW # ONE PENGANTAR ALGORITMA PEMROGRAMAN Definisi Program/Pemrograman - Adalah kumpulan instruksi-instruksi tersendiri yang biasanya

Lebih terperinci

PENDAHULUAN. Brigida Arie Minartiningtyas, M.Kom

PENDAHULUAN. Brigida Arie Minartiningtyas, M.Kom PENDAHULUAN Brigida Arie Minartiningtyas, M.Kom Langkah dalam proses pembuatan suatu program atau software : Mendefinisikan masalah dan menganalisanya Tujuan dari pembuatan program Parameter-parameter

Lebih terperinci

Algoritma & Pemrograman

Algoritma & Pemrograman Algoritma & Pemrograman PENGULANGAN Pendahuluan Salah satu kelebihan komputer dibandingkan dengan manusia adalah kemampuannya untuk melaksanakan suatu instruksi berulang kali tanpa mengenal lelah dan bosan.

Lebih terperinci

7. Logika dan Algoritma Pemrograman

7. Logika dan Algoritma Pemrograman 7. Logika dan Algoritma Pemrograman Logika Informatika Heri Sismoro, M.Kom. STMIK AMIKOM Yogyakarta STMIK AMIKOM YOGYAKARTA Jl. Ringroad Utara Condong Catur Yogyakarta. Telp. 0274 884201 Fax 0274-884208

Lebih terperinci

MATA KULIAH : LOGIKA DAN ALGORITMA

MATA KULIAH : LOGIKA DAN ALGORITMA MATA KULIAH : LOGIKA DAN ALGORITMA PERTEMUAN II NOTASI ALGORITMA CREATED BY: AYU ANGGRIANI H 092904010 PTIK A 2009 1 PRODI PENDIDIKAN TEKNIK INFORMATIKA DAN KOMPUTER JURUSAN PENDIDIKAN TEKNIK ELEKTRO FAKULTAS

Lebih terperinci

Algoritma dan Pemrograman. Oleh: Eddy Prasetyo N

Algoritma dan Pemrograman. Oleh: Eddy Prasetyo N Algoritma dan Pemrograman Oleh: Eddy Prasetyo N Konten Harga Pengisian Nama Informasi Assignment Pemberian Harga dari Piranti Inputan Ekspresi Sequence Harga Suatu besaran bertype yang telah dikenal Harga

Lebih terperinci

Refreshing Materi Kuliah Semester Pendek 2010/2011. Logika dan Algoritma. Heri Sismoro, M.Kom.

Refreshing Materi Kuliah Semester Pendek 2010/2011. Logika dan Algoritma. Heri Sismoro, M.Kom. Refreshing Materi Kuliah Semester Pendek 2010/2011 Logika dan Algoritma Heri Sismoro, M.Kom. STMIK AMIKOM YOGYAKARTA 2011 Materi 1. Logika Informatika Adalah logika dasar dalam pembuatan algoritma pada

Lebih terperinci

Pemrograman Prosedural FUNGSI (Subprogram) Tim Pengajar KU1071 Sem

Pemrograman Prosedural FUNGSI (Subprogram) Tim Pengajar KU1071 Sem Pemrograman Prosedural FUNGSI (Subprogram) Tim Pengajar KU1071 Sem. 1 2009-2010 1 Tujuan Perkuliahan Mahasiswa memahami makna dan kegunaan fungsi sebagai salah satu sub program Mahasiswa dapat menggunakan

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-7 (Pengulangan atau Looping [2]) Noor Ifada noor.ifada@if.trunojoyo.ac.id S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Struktur WHILE Struktur REPEAT WHILE vs REPEAT

Lebih terperinci

Algoritma. Menurut Kamus Besar Bahasa Indonesia Algoritma adalah urutan logis pengambilan putusan untuk pemecahan masalah.

Algoritma. Menurut Kamus Besar Bahasa Indonesia Algoritma adalah urutan logis pengambilan putusan untuk pemecahan masalah. Algoritma Algoritma Menurut Kamus Besar Bahasa Indonesia Algoritma adalah urutan logis pengambilan putusan untuk pemecahan masalah. suatu metode khusus yang tepat dan terdiri dari serang kaian langkah

Lebih terperinci

Pengenalan Pascal. Sejarah Singkat Pascal

Pengenalan Pascal. Sejarah Singkat Pascal Pengenalan Pascal Sejarah Singkat Pascal Dirancang oleh Prof. Nicklaus Wirth dari Technical University di Zurich, Switzerland tahun 1971. Nama Pascal berasal dari Blaise Pascal, nama ahli matematika dan

Lebih terperinci

Prosedur dan Fungsi ALGORITMA DAN PEMROGRAMAN [IS ] Dosen: Yudha Saintika, S.T., M.T.I

Prosedur dan Fungsi ALGORITMA DAN PEMROGRAMAN [IS ] Dosen: Yudha Saintika, S.T., M.T.I Prosedur dan Fungsi ALGORITMA DAN PEMROGRAMAN [IS6110102] Dosen: Yudha Saintika, S.T., M.T.I Sub-Capaian Pembelajaran MK Mahasiswa mampu menerapkan konsep prosedur dan fungsi dalam program. Peta Capaian

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-4 (Nilai dan Urutan [Sequence]) :: Noor Ifada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Nilai Pengisian nilai ke dalam nama peubah Ekspresi Menuliskan Nilai

Lebih terperinci

Materi. Tipe, Variabel dan Operator Algoritma Pemrograman PENULISAN ALGORITMA PENULISAN ALGORITMA 15/03/2010 NAMA DAN EKSPRESI

Materi. Tipe, Variabel dan Operator Algoritma Pemrograman PENULISAN ALGORITMA PENULISAN ALGORITMA 15/03/2010 NAMA DAN EKSPRESI Materi Tipe, Variabel dan Operator Algoritma Pemrograman TIPE DATA, VARIABEL OPERATOR Agus Sumaryanto, S.Kom mas.anto72@gmail.com NAMA DAN EKSPRESI 1 2 Algoritma ditulis dalam bentuk terstruktur Masing-masing

Lebih terperinci

Dasar Komputer & Pemrogaman 2A

Dasar Komputer & Pemrogaman 2A Dasar Komputer & Pemrogaman 2A Materi 1 Reza Aditya Firdaus Sejarah Singkat Pascal Dirancang oleh Prof. Nicklaus Wirth dari Technical University di Zurich, Switzerland tahun 1971. Nama Pascal berasal dari

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-7 (Pengulangan atau Looping [2]) :: Noor Ifada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Struktur WHILE Struktur REPEAT S1 Teknik Informatika-Unijoyo 2 Struktur

Lebih terperinci

ALGORITMA RINTA KRIDALUKMANA SISKOM UNDIP

ALGORITMA RINTA KRIDALUKMANA SISKOM UNDIP ALGORITMA RINTA KRIDALUKMANA SISKOM UNDIP 1 ALGORITMA DEFINISI Logika, metode dan tahapan (urutan) sistematis yang digunakan untuk memecahkan suatu permasalahan Spesifikasi urutan langkah untuk melakukan

Lebih terperinci

PEMROGRAMAN DASAR ( PASCAL ) PERTEMUAN I

PEMROGRAMAN DASAR ( PASCAL ) PERTEMUAN I PEMROGRAMAN DASAR ( PASCAL ) PERTEMUAN I I. Pengertian Algoritma Algorithm sebenarnya berasal dari kata algorism yang berarti proses menghitung dengan angka Arab. Perencanaan dan perancangan program komputer

Lebih terperinci

Tipe data dasar merupakan tipe data yang disediakan oleh kompailer, sehingga dapat langsung dipakai Dalam algoritma dan pemrograman yang termasuk dala

Tipe data dasar merupakan tipe data yang disediakan oleh kompailer, sehingga dapat langsung dipakai Dalam algoritma dan pemrograman yang termasuk dala Tipe data dasar merupakan tipe data yang disediakan oleh kompailer, sehingga dapat langsung dipakai Dalam algoritma dan pemrograman yang termasuk dalam tipe data dasar adalah bilangan logik, bilangan bulat,

Lebih terperinci

Aturan Penulisan Algoritma

Aturan Penulisan Algoritma Pertemuan 3 Aturan Penulisan Algoritma Pengajar : Teuku Mirwan Sahputra, ST Email : mirwan@serambimekkah.ac.id URL : http://bahasacode.blogspot.com Aturan Penulisan Algoritma 1 Flowchart Flowchart adalah

Lebih terperinci

Pertemuan Ke-4 Urutan (sequence) Rahmady Liyantanto. liyantanto.wordpress.com. S1 Teknik Informatika-Unijoyo

Pertemuan Ke-4 Urutan (sequence) Rahmady Liyantanto. liyantanto.wordpress.com. S1 Teknik Informatika-Unijoyo Algoritma Pemrograman Pertemuan Ke-4 Urutan (sequence) Rahmady Liyantanto liyantanto88@yahoo.com liyantanto.wordpress.com Sub Pokok Bahasan Nilai Pengisian nilai ke dalam nama peubah Ekspresi Menuliskan

Lebih terperinci

Pert 3: Algoritma Pemrograman 1 (Alpro1) 4 sks. By. Rita Wiryasaputra, ST., M. Cs.

Pert 3: Algoritma Pemrograman 1 (Alpro1) 4 sks. By. Rita Wiryasaputra, ST., M. Cs. Pert 3: Algoritma Pemrograman 1 (Alpro1) 4 sks By. Rita Wiryasaputra, ST., M. Cs. ritasaputra@gmail.com Kriteria Unjuk Kerja Algoritma Pemrograman 1 Tugas Terakhir (15): Buatlah portofolio Pengidentifikasian

Lebih terperinci

Bab 1 Algoritma dan Pemrograman Tersruktur

Bab 1 Algoritma dan Pemrograman Tersruktur Bab 1 Algoritma dan Pemrograman Tersruktur 1.1 Definisi Algoritma Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis. Contoh algoritma Euclidean untuk menentukan

Lebih terperinci

I. KATA PENGANTAR. Modul Algoritma Pemrograman. Modul Ke-1 - Hal 1

I. KATA PENGANTAR. Modul Algoritma Pemrograman. Modul Ke-1 - Hal 1 I. KATA PENGANTAR Dewasa ini sudah banyak berkembang bahasa-bahasa pemrograman tingkat tinggi yang pemakaiannya sudah sangat mudah, hanya klik dan drag saja. Namun meskipun demikian tetap saja programmer

Lebih terperinci

Definisi Percabangan

Definisi Percabangan Pertemuan 2 Percabangan Sederhana MK. Algoritma dan Struktur Data Bekti Wulandari, M.Pd. TE KELAS B 2014 Definisi Percabangan Percabangan adalah suatu suatu perintah (pernyataan) yang memungkinkan suatu

Lebih terperinci

PERKEMBANGAN PASCAL. Pascal adalah bahasa tingkat tinggi ( high level language) yang orientasinya pada segala tujuan

PERKEMBANGAN PASCAL. Pascal adalah bahasa tingkat tinggi ( high level language) yang orientasinya pada segala tujuan PERKEMBANGAN PASCAL Pascal adalah bahasa tingkat tinggi ( high level language) yang orientasinya pada segala tujuan Nama pascal diambil sebagai penghargaan terhadap BLAISE PASCAL seorang ahli matematika

Lebih terperinci

Struktur Data. Belajar Struktur Data Menggunakan Pascal Pertemuan-1

Struktur Data. Belajar Struktur Data Menggunakan Pascal Pertemuan-1 Struktur Data Belajar Struktur Data Menggunakan Pascal Pertemuan-1 I n W a h y u W i d o d o e m a i l @ r i n g k e s. c o m Identifier, Konstanta dan Variabel Identifier (sebutan / pengenal) Identifier

Lebih terperinci

Algoritma,Flowchart, Konsep

Algoritma,Flowchart, Konsep Algoritma,Flowchart, Konsep dasar PASCAL Masih ingat??? Algoritma Penulisan Algoritma Menggunakan bahasa natural (Bahasa manusia: Indonesia, Inggris) Kelemahannya masih sering membingungkan (ambigu) /

Lebih terperinci

1. Kompetensi Mengenal dan memahami algoritma percabangan yang komplek.

1. Kompetensi Mengenal dan memahami algoritma percabangan yang komplek. LAB SHEET ALGORITMA DAN STRUKTUR DATA Semester : 4 Percabangan Komplek dan case of 200 menit No. : LST/EKA/EKA 305/03 Revisi : Tgl. : Hal. 1 dari 3 hal. 1. Kompetensi Mengenal dan memahami algoritma percabangan

Lebih terperinci

Pendahuluan. Algoritma

Pendahuluan. Algoritma Pendahuluan Komputer pada dasarnya adalah mesin yang tidak bisa apa-apa. Kita harus memberikan perintah untuk dapat berbicara (berkomunikasi) dengan komputer, dengan cara memberikan serangkaian instruksi

Lebih terperinci

Pengampu : Agus Priyanto, M.KOM

Pengampu : Agus Priyanto, M.KOM Dasar-dasar Algoritma Dan Flow Chart Pengampu : Agus Priyanto, M.KOM SEKOLAH TINGGI TEKNOLOGI TELEMATIKA TELKOM Smart, Trustworthy, And Teamwork Proses, Instruksi, dan Aksi Algoritma merupakan deskripsi

Lebih terperinci

Tipe Data dan Variabel. Dosen Pengampu Muhammad Zidny Naf an, M.Kom

Tipe Data dan Variabel. Dosen Pengampu Muhammad Zidny Naf an, M.Kom Tipe Data dan Variabel Dosen Pengampu Muhammad Zidny Naf an, M.Kom Format Pseudocode Lengkap Judul program/algoritma PROGRAM Euclidean Program untuk mencari GCD dari dua buah bilangan bulat positif m dan

Lebih terperinci

Teori Algoritma TIPE DATA

Teori Algoritma TIPE DATA Alam Santosa Teori Algoritma Dasar Algoritma TIPE DATA Program komputer adalah deretan perintah untuk memanipulasi data input menjadi informasi yang bermanfaat bagi pengguna (user). Data yang diinput dapat

Lebih terperinci

SEQUENCE. Program SEQ1 { Contoh penulisan sequence per baris } Program SEQ2 { Contoh penulisan sequence dengan tanda titik koma}

SEQUENCE. Program SEQ1 { Contoh penulisan sequence per baris } Program SEQ2 { Contoh penulisan sequence dengan tanda titik koma} SEQUENCE SEQUENCE Sequence adalah struktur kontrol algoritmik yang paling sederhana. Sequence adalah sederetan instruksi primitif dan/atau aksi yang akan dilaksanakan (dieksekusi) oleh komputer berdasarkan

Lebih terperinci

Algoritma Pemrograman Dalam Bahasa Pascal

Algoritma Pemrograman Dalam Bahasa Pascal Algoritma Pemrograman Dalam Bahasa Pascal Budi Permana, S.Kom nobiasta@gmail.com Lisensi Dokumen: Seluruh dokumen di IlmuKomputer.Com dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan

Lebih terperinci