Algoritma Pemrograman

dokumen-dokumen yang mirip
Algoritma Pemrograman

Algoritma Pemrograman

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

Algoritma Pemrograman

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

Algoritma Pemrograman

Algoritma Pemrograman

Algoritma Pemrograman

Algoritma Pemrograman

Nama, Tipe, Ekspresi, dan Nilai

HARGA & EKSPRESI Input dan Output

Tinjau algoritma dibawah ini

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

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

Pertemuan Ke- 6 dan 7 Pengulangan atau Looping. Rahmady Liyantanto. liyantanto.wordpress.com. S1 Teknik Informatika-Unijoyo

Algoritma Pemrograman

Algoritma Pemrograman

TIPE, NAMA, DAN NILAI

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

Algoritma Pemrograman

Algoritma Pemrograman

Algoritma Pemrograman

Algoritma Pemrograman

Algoritma Pemrograman

Bab 2 DASAR-DASAR ALGORITMA

Algoritma Pemrograman

Algoritma Pemrograman

Algoritma Pemrograman

MODUL 3 ALGORITMA PEMROGRAMAN

Algoritma dan Pemrograman. Pertemuan Ke-4 Konsep Tipe Data, Operator Dan Identifier

Algoritma Pemrograman

Algoritma Pemrograman

Algoritma Pemrograman

Algoritma Pemrograman

Tipe Data, Nama, Nilai. Chapter 4

Algoritma Pemrograman

Pertemuan Ke-5 Penyeleksian Kondisi. Rahmady Liyantanto. liyantanto.wordpress.com. S1 Teknik Informatika-Unijoyo

Algoritma Pemrograman

PSEUDOCODE TIPE DATA, VARIABEL, DAN OPERATOR

Algoritma Pemrograman

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

Algoritma Pemrograman

Algoritma Pemrograman

Pertemuan 4 Perulangan

Algoritma Pemrograman

Sesi/Perkuliahan ke: II

.::BAB II.::MENGENAL PASCAL

Algoritma Pemrograman

STACK (TUMPUKAN) Tumpukan uang koin Tumpukan kotak Tumpukan Buku. Gambar 1. Macam-macam tumpukan

Brigida Arie Minartiningtyas, M.Kom

Kontrak Kuliah TKC106 - Algoritma Pemrograman Semester Gasal 2011/2012

Algoritma dan Pemrograman. Oleh: Eddy Prasetyo N

disebut ternary operator. Di dalam suatu operasi dapat terdapat banyak operator. Urutan eksekusi dari operatoroperator

BAB II STACK (TUMPUKAN)

Chapter 3.2 : Tipe, Nama dan Nilai

Konstruksi Dasar Algoritma

Struktur Program. Rinta Kridalukmana

Algoritma dan Pemrograman Bab II Dev Pascal, Variabel, Tipe Data. Adam Mukharil Bachtiar, S.Kom. Universitas Komputer Indonesia

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

Brigida Arie Minartiningtyas, M.Kom

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

OPERATOR & UNGKAPAN. Contoh operator : a + b Simbol + merupakan operator untuk melakukan operasi penjumlahan dari kedua operandnya ( yaitu a dan b ).

Algoritma Pemrograman

Pemrograman Fungsional FAJAR SAPTONO, ST

Pertemuan 3 Penyeleksian Kondisi dan Perulangan

Algoritma Pemrograman I KONSEP DASAR

JENIS DATA SEDERHANA & INPUT/OUTPUT DATA

Variabel dan Tipe data Javascript

TIPE DATA dan OPERATOR

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

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

Module 4. Ekpresi, Operator, dan Konstanta

Tabel 1. Jenis data integer Ukuran memori (dalam byte)

Algoritma dan Struktur Data I 2014

PERBANDINGAN KOMPLEKSITAS ALGORITMA PENCARIAN BINER DAN ALGORITMA PENCARIAN BERUNTUN

CCH1A4 / Dasar Algoritma & Pemrogramanan

Perkuliahan Pemrograman II (Teori / Praktikum) Minggu 3

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

Pertemuan 3 Penyeleksian Kondisi

STACK (TUMPUKAN) Tumpukan uang koin Tumpukan kotak Tumpukan Buku. Gambar 1. Macam-macam tumpukan

Variabel, Operator Dan Ekspresi. Agus Priyanto, M.Kom

Algoritma Euclidean dan Struktur Data Pohon dalam Bahasa Pemrograman LISP

Universitas Komputer Indonesia

Algoritma Pemrograman I

Tipe Data dan Operator dalam Pemrograman

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

STRUKTUR DATA Pertemuan 4

Definisi Percabangan

JENIS-JENIS DATA DAN STATEMEN INPUT OUTPUT

Operator. Donny Reza, S.Kom Aplikasi IT 2 Program Studi Akuntansi

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LABSHEET ALGORITMA DAN STRUKTUR DATA

STACK ATAU TUMPUKAN 3.1 DAFTAR LINEAR

Kontrak Kuliah TKC106 - Algoritma Pemrograman Semester Gasal 2009/2010

DASAR PEMROGRAMAN. Institut Teknologi Sumatera

Pertemuan Ke-1 (Pengantar Algoritma) Rahmady Liyantanto. S1 Teknik Informatika-Unijoyo

FUNGSI. {deretan instruksi algoritmik : pemberian harga, input, output, analisa kasus, pengulangan)

MODUL. Operator. Modul Praktikum C++ Dasar Pemrograman Komputer JURUSAN TEKNIK ELEKTRO FAKULTAS TEKNIK

Algoritma Pemrograman

TIPE DATA, VARIABLE, dan OPERATOR DELPHI

BAB II LANDASAN TEORI

Transkripsi:

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 ke Piranti Keluaran Urutan (sequence) Urutan Instruksi Tidak Berpengaruh Terhadap Hasil Keluaran Urutan Instruksi Berpengaruh Terhadap Hasil Keluaran S1 Teknik Informatika-Unijoyo 2

Nilai Nilai adalah besaran dari tipe data yang sudah didefinisikan (tipe dasar atau tipe bentukan). Nilai dapat berupa isi yang disimpan oleh nama peubah atau nama konstanta, nilai dari hasil perhitungan, atau nilai yang dikirim oleh fungsi. Algoritma pada hakekatnya adalah memanipulasi nilai yang disimpan di dalam elemen memori. Cara memanipulasi nilai yang dikandung oleh peubah: Mengisikannya ke peubah lain yang bertipe sama Dipakai untuk perhitungan (ekspresi) Dituliskan/dicetak ke piranti keluaran S1 Teknik Informatika-Unijoyo 3

Pengisian nilai ke dalam nama peubah 1. Pengisian nilai secara langsung (assignment) Pengisian nilai secara langsung adalah memasukkan sebuah nilai ke dalam nama peubah langsung di dalam teks algoritma. Syaratnya, nilai yang diisikan harus bertipe sama dengan tipe peubah Notasi pengisian nilai secara langsung : Arti notasi : nilai di sebelah kanan tanda panah diisikan ke dalam peubah di sebelah kiri tanda panah Akibat pengisian nilai ke dalam suatu nama peubah, nilai lama yang disimpan di dalam peubah hilang ditimpa dengan nama baru. Prinsip yang dipakai adalah: nilai yang dikandung oleh nama peubah adalah nilai yang terakhir kali diisikan ke dalamnya. S1 Teknik Informatika-Unijoyo 4

Nilai yang diberikan ke dalam peubah dapat berupa konstanta: Contoh : A 5 { Nilai A sama dengan 5 } Atau suatu peubah diisi dengan nilai dari peubah lain: Contoh : A B { Nilai A sama dengan nilai B } Atau suatu peubah diisi dengan nilai evaluasi dari sebuah ekspresi: Contoh : A B + C { A berisi hasil evaluasi ekspresi B + C } peubah konstanta { nilai konstanta diisikan ke dalam peubah } peubah1 peubah2 { nilai konstanta diisikan ke dalam peubah } peubah ekspresi { hasil perhitungan diisikan ke dalam peubah } S1 Teknik Informatika-Unijoyo 5

2. Dibaca dari piranti masukan Nilai untuk nama peubah dapat diisi dari piranti masukan, misalnya dari keyboard. Mengisi nilai dari piranti masukan dinamakan operasi pembacaan data. Di dalam algoritma, instruksi pembacaan nilai untuk nama peubah dilakukan dengan notasi read. Notasi algoritma untuk pembacaan nilai dari piranti masukan: read(nama1, nama2,..., naman) Dengan syarat bahwa nama1, nama2,..., naman adalah nama peubah yang sudah didefinisikan tipenya di dalam DEKLARASI. S1 Teknik Informatika-Unijoyo 6

Ekspresi Suatu nilai dipakai untuk proses transformasi menjadi keluaran yang diinginkan. Transformasi nilai menjadi keluaran dilakukan melalui suatu perhitungan (komputasi). Cara perhitungan itu dinyatakan dalam suatu ekspresi. Ekspresi terdiri atas operand dan operator. Operand adalah nilai yang dioperasikan dengan operator tertentu. Operand dapat berupa konstanta, nama peubah, nama konstanta, atau hasil dari suatu fungsi. Hasil evaluasi dari sebuah ekspresi adalah nilai di dalam domain yang sesuai dengan tipe operand yang dipakai. Terdapat dua macam ekspresi: Ekspresi Aritmatika Ekspresi Relasional S1 Teknik Informatika-Unijoyo 7

Ekspresi Aritmatika Ekspresi aritmatika/numerik adalah ekspresi yang operand dan juga hasilnya bertipe numerik. Misalkan didefinisikan DEKLARASI sebagai berikut: DEKLARASI a, b, c, d : real e, f, g, h : integer Contoh ekspresi numerik misalnya: c a * b adalah benar, tetapi pengisian nilai e a * b adalah salah Tingkatan operator aritmatika adalah (dari tertinggi ke terendah): i. /, div, mod ii. * iii. +, S1 Teknik Informatika-Unijoyo 8

Contoh-contoh ekspresi yang sudah dikemukakan merupakan ekspresi biner, yaitu ekspresi yang operatornya membutuhkan dua buah operand (sehingga operatornya disebut juga operator biner). Di samping ekspresi biner, terdapat juga ekspresi uner, yaitu ekspresi dengan satu buah operand, misalnya -a -a*(b+c) ( a adalah ekspresi uner). Operator, selain merupakan operator biner, juga adalah satu-satunya operator uner dari seluruh operator aritmatika. S1 Teknik Informatika-Unijoyo 9

Macam-macam notasi: Notasi infix notasi dengan susunan: operand1 operator operand2 Contoh: 7 * 4 a+b/c*d-e*f Notasi prefix notasi dengan susunan: operator operand1 operand2 Contoh: *74 *+a/bc-d*ef Notasi postfix (suffix atau polish) notasi dengan susunan operand1 operand2 operator Contoh: 68* abc/+def*-* S1 Teknik Informatika-Unijoyo 10

Ekspresi Relasional Ekspresi relasional adalah ekspresi dengan operator <,, >,, =, dan, not, and, or, dan xor. Hasil evaluasi ekspresinya adalah nilai bertipe boolean (true atau false), sehingga ekspresi relasional kadang-kadang disebut juga ekspresi boolean. Misalkan didefinisikan DEKLARASI nama dan tipenya sebagai berikut: DEKLARASI ada, ketemu, besar : boolean x, y : integer Misalkan pula ketemu telah bernilai false, ada bernilai true, x bernilai 8 dan y bernilai a. Maka: not ada ( hasil : false ) ada or ketemu ( hasil : true ) ada and true ( hasil : true ) x < 5 ( hasil : false ) ada or (x = y) ( hasil : true ) S1 Teknik Informatika-Unijoyo 11

Menuliskan Nilai ke Piranti Keluaran Nilai yang disimpan oleh memori dapat ditampilkan ke piranti keluaran (misalnya monitor). Instruksi penulisan nilai dilakukan dengan notasi write Dengan catatan bahwa nama1, nama2,..., naman dapat berupa nama peubah atau nama tetapan. Dengan instruksi penulisan ini, nilai yang disimpan di dalam memori dituliskan/dicetakkan ke piranti keluaran. write(nama1, nama2,..., naman) write(tetapan) write(nama, tetapan, ekspresi) write(ekspresi) S1 Teknik Informatika-Unijoyo 12

Urutan Algoritma merupakan urutan (sequence) satu atau lebih instruksi yang berarti bahwa: Tiap instruksi dikerjakan satu per satu Tiap instruksi dilaksanakan tepat sekali, tidak ada instruksi yang diulang Urutan instruksi yang dilaksanakan pemroses sama dengan urutan instruksi sebagaimana yang tertulis di dalam teks algoritmanya Akhir dari instruksi terakhir merupakan akhir algoritma S1 Teknik Informatika-Unijoyo 13

Urutan Instruksi Tidak Berpengaruh Terhadap Hasil Keluaran Urutan instruksi di dalam algoritma adalah penting. Urutan instruksi menunjukkan urutan logika penyelesaian masalah. Bergantung pada masalahnya, urutan instruksi yang berbeda mungkin tidak ada pengaruhnya terhadap penyelesaian persoalan, tetapi mungkin juga menghasilkan keluaran yang berbeda pula. Artinya dalam suatu permasalahan boleh jadi jika urutan instruksi diubah, maka tidak akan menghasilkan keluaran yang berbeda. Contoh kasus 1 : Urutan instruksi tidak berpengaruh terhadap solusi persoalan Dibaca dua buah nilai integer dari piranti masukan, A dan B. Hitung jumlah keduanya dan hasil kali keduanya, kemudian cetak jumlah dan cetak hasil kali itu ke piranti keluaran. S1 Teknik Informatika-Unijoyo 14

Algoritma URUTAN_1 { Contoh algoritma yang menghasilkan keluaran yang sama jika urutan instruksi diubah. } DEKLARASI A, B, C, D : integer DESKRIPSI : read(a,b) C A+B D A*B write(c,d) Algoritma URUTAN_2 { Contoh algoritma yang menghasilkan keluaran yang sama jika urutan instruksi diubah. } DEKLARASI A, B, C, D : integer DESKRIPSI : read(a,b) D A*B C A+B write(c,d) MULAI MULAI Baca A, B Baca A, B C = A + B C = A * B D = A * B D = A + B Cetak C Cetak C Cetak D Cetak D SELESAI SELESAI S1 Teknik Informatika-Unijoyo 15

Urutan Instruksi Berpengaruh Terhadap Hasil Keluaran Dalam contoh kasus sebelumnya, urutan instruksi tidak berpengaruh terhadap hasil keluaran. Akan tetapi dalam bentuk permasalahan yang lain, jika urutan instrusi diubah, maka akan menghasilkan keluaran yang berbeda dari hasil keluaran yang menggunakan urutan instruksi yang pertama. Contoh kasus 2 : Urutan instruksi berpengaruh terhadap solusi persoalan. Diketahui dua buah nilai integer, masing-masing disimpan di dalam dua buah peubah, A dan B. Bagaimana cara mempertukarkan nilai A dan B? Misalnya, sebelum pertukaran nilai A=3 nilai B=5, maka setelah pertukaran, nilai A=5 dan nilai B=3. Kalau algoritmanya dituliskan, maka bentuknya adalah seperti ini : B A A B maka hasilnya A=3 dan B=3. Jadi algoritma pertukarannya salah. Dalam mempertukarkan nilai dua buah peubah, perlu digunakan peubah bantu, misalnya C. C A { simpan nilai A di tempat sementara, C} A B{ sekarang A dapat diisi dengan nilai B } B C { isi B dengan nilai A semula yang tadi disimpan di C } S1 Teknik Informatika-Unijoyo 16

Pada pertukaran nilai A dan B, diandaikan nilai A dan B dibaca terlebih dahulu dari piranti masukan (atau diisi dengan cara pengisian langsung, atau hasil dari suatu ekspresi lain): Algoritma TUKAR_1 { Mempertukarkan nilai A dan B. Nilai A dan B dibaca dari piranti masukan. Nilai A dan B dicetak ke piranti keluaran, baik sebelum pertukaran maupun sesudah pertukaran. ALGORITMA YANG BENAR! } DEKLARASI A : integer { nilai pertama } B : integer { nilai kedua } C : integer { peubah bantu } DESKRIPSI : read(a,b) { membaca nilai A dan B } write(a,b) { mencetak nilai A dan B sebelum pertukaran } C A { simpan nilai A di tempat sementara, C } A B { sekarang A dapat diisi dengan nilai B } B C { isi B dengan nilai A semula yang tadi disimpan di C } write(a,b) { mencetak nilai A dan B setelah pertukaran } MULAI Baca A, B Cetak A,B (sebelum pertukaran) C = A A = B B = C Cetak A,B (setelah pertukaran) SELESAI S1 Teknik Informatika-Unijoyo 17

Proses pertukaran nilai akan salah jika tidak benar dalam menuliskan urutan instruksi, misalnya urutan C A { simpan nilai A di tempat sementara, C } A B { sekarang A dapat diisi dengan nilai B } B C { isi B dengan nilai A semula yang tadi disimpan di C } diubah urutannya sebagai berikut : C A { simpan nilai A di tempat sementara, C } B C { isi B dengan nilai A semula yang tadi disimpan di C} A B { sekarang A dapat diisi dengan nilai B } maka urutan yang terakhir ini sama saja dengan urutan: B A A B S1 Teknik Informatika-Unijoyo 18

Summary Nilai dapat dimanipulasi dengan cara mengisikannya ke peubah lain yang bertipe sama, dipakai untuk perhitungan (ekspresi) atau dituliskan/dicetak ke piranti keluaran Bila hasil perhitungan disimpan dalam nama peubah, maka nama peubah tersebut haruslah bertipe sama dengan tipe hasil Umumnya bahasa pemrograman mengevaluasi ekspresi dalam notasi infix, namun ada beberapa bahasa pemrograman tertentu yang dapat menghitung ekspresi dalam notasi postfix dan prefix. Urutan instruksi dapat tidak berpengaruh terhadap hasil keluaran, akan tetapi dalam bentuk permasalahan yang lain, urutan dapat berpengaruh terhadap hasil keluaran S1 Teknik Informatika-Unijoyo 19

Daftar Pustaka Jogiyanto HM [1989]. Turbo Pascal, Andi Offset, Yogyakarta. Noor Ifada [2005]. Diktat Matakuliah Algoritma Pemrograman, Hibah Kompetisi A1, Jurusan Teknik Informatika, Universitas Trunojoyo. Rinaldi Munir [2003]. Algoritma dan Pemrograman dengan Pascal dan C edisi Kedua, Penerbit Informatika, Bandung. S1 Teknik Informatika-Unijoyo 20