Algoritma Pemrograman

Slides:



Advertisements
Presentasi serupa
STRUKTUR DASAR ALGORITMA
Advertisements

ALGORITMA & PEMROGRAMAN I-A
PERTEMUAN 6 Algoritma Presented by : Sity Aisyah, M.Kom
Teks Algorithma Ery Setiyawan Jullev A.
Pengantar Algoritma.
Chapter 3.2 : Tipe, Nama dan Nilai
Notasi Algoritma.
Shofia D. Agustina.  Agar dapat dieksekusi oleh komputer, algoritma harus diterjemahkan terlebih dahulu kedalam notasi bahasa pemrograman. Penerjemahan.
Instruksi Runtutan Instruksi Pemilihan dan Instruksi Perulangan dalam Pascal Minggu XII.
Dasar Komputer & Pemrog. 2A
Pemprograman Terstruktur 1
Outline Awalnya dikembangkan oleh Borland dan umunya igunakan untuk paket perangkat lunak tingkat lanjut dengan kepustakaan yang lebih banyak dan.
Algoritma (Struktur, Tipe Data, Input/Output)
Notasi Algoritma.
Prosedur dan Fungsi Triana Elizabeth, S.Kom.
NOTASI ALGORITMIK dan BAHASA C++
Algoritma Dan Pemrograman
Pengenalan Type Data Type data dapat dikelompokkan menjadi 2
Materi 9 LOGIKA & ALGORITMA.
Dasar-dasar Pemrograman
Array (bagian 2).
ALGORITMA PEMROGRAMAN 2A
STRUKTUR DASAR ALGORITMA
Algoritma dan Pemrograman I
Notasi Algoritma & Tipe Data
Algoritma Pemrograman I
PERTEMUAN 2 Bambang Irawan.
Struktur Program Pascal
Dasar-Dasar Pemrograman
Tipe, Nama, dan Nilai Anifuddin azis.
Algoritma dan Pemrograman 2A
Notasi Algoritmik.
STRUKTUR DASAR ALGORITMA
Dasar Pemrograman (DasPro) Teknik Informatika S-1 UDINUS
STRUKTUR DASAR ALGORITMA
TEL 2112 Dasar Komputer & Pemograman Konsep Tipe Data dan Operator
Konsep Tipe Data dan Operator
PERTEMUAN 7 STATEMENT PEMILIHAN
LINGKUNGAN TURBO PASCAL
TEE 2103 Algoritma dan Pemrograman
Tipe, Nama, dan Nilai.
ALGORITMA DAN PEMROGRAMAN (PERTEMUAN 2)
Pseudocode – Tipe Data, Variabel, dan Operator
Algoritma dan Pemrograman
PEMROGRAMAN PASCAL ELEMEN PEMROGRAMAN PASCAL.
Pengenalan Type Data Type data dapat dikelompokkan menjadi 2
Tipe Data, Operator dan Ekspresi
Dasar- dasar Algoritma
Tipe data & Variabel 1. Bahasa Pascal 2. Tipe data & Variabel
TEL 2112 Dasar Komputer & Pemrograman
TEE 2103 Algoritma & Pemrograman
TEL 2112 Dasar Komputer & Pemrograman
TIPE DATA.
Muhammad Riska B. PTIK FT UNM
Tipe data & Variabel 1. Aturan Leksikal. 2. Operator. 3. Statement
STATEMENT PENGENDALIAN (PEMILIHAN)
ATURAN PENULISAN TEKS ALGORITMA
Seleksi.
TEL 2112 Dasar Komputer & Pemograman Prosedur
Algoritma dan Pemrograman (Pertemuan 04)
Oleh : UMMU ZAHRA ALGORITMA.
Tipe data & Variabel 1. Aturan Leksikal. 2. Operator. 3. Statement
Matakuliah : Algoritma & Struktur Data Versi Materi
Konsep Tipe Data dan Operator
Pertemuan 2 Algoritma dan Pemrograman
NOTASI ALGORITMA dan BAHASA C++
Penulisan Teks Algoritma
Tipe data & Variabel 1. Bahasa Pascal 2. Tipe data & Variabel.
Chapter 3.2 : Tipe, Nama dan Nilai
STRUKTUR DASAR ALGORITMA
Transcript presentasi:

Algoritma Pemrograman Pertemuan Ke-2 (Teks Algoritma) S1 Teknik Informatika - Unijoyo

S1 Teknik Informatika - Unijoyo Sub Pokok Bahasan Pendahuluan Judul Algoritma Deklarasi Deskripsi Translasi Teks Algoritma ke dalam Teks Program Bahasa Pascal Tabel Translasi S1 Teknik Informatika - Unijoyo

S1 Teknik Informatika - Unijoyo Pendahuluan Teks algoritma yang dimaksud di sini adalah teks pseudocode yang dianggap perlu untuk menjembatani keragaman dan kompleksitas bahasa sehingga dapat dilakukan “abstraksi” Teks ini lebih berorientasi kepada detail design dibandingkan coding, (merupakan rancangan secara prosedural yang selanjutnya dengan mudah dapat ditranslasi menjadi salah satu program dalam bahasa tertentu) Di sini contoh bahasa pemrograman yang digunakan adalah Bahasa Pascal. Jadi dalam pembahasan berikutnya, translasi teks algoritma adalah ke dalam teks program Bahasa Pascal. S1 Teknik Informatika - Unijoyo

S1 Teknik Informatika - Unijoyo Bagian-bagian (blok) dalam teks algoritma: bagian judul (header) algoritma bagian deklarasi bagian deskripsi algoritma Setiap bagian disertai dengan komentar untuk memperjelas maksud teks yang dituliskan. Komentar adalah kalimat yang diapit oleh pasangan tanda kurung kurawal (‘{‘ dan ‘}’). Algoritma NAMA_ALGORITMA { Penjelasan mengenai algoritma, yang berisi uraian singkat mengenai apa yang dilakukan oleh algoritma } DEKLARASI { Semua nama yang dipakai, meliputi nama tipe, nama tetapan, nama peubah, nama prosedur dan nama fungsi didefinisikan di sini } DESKRIPSI : { Semua langkah atau aksi algoritma dituliskan di sini } S1 Teknik Informatika - Unijoyo

S1 Teknik Informatika - Unijoyo Judul Algoritma Judul algoritma adalah terdiri dari nama dan penjelasan (spesifikasi) tentang algoritma tersebut Nama algoritma yang digunakan sebaiknya singkat akan tetapi sudah dapat menggambarkan apa yang dilakukan oleh algoritma tersebut. Biasanya di bawah nama algoritma diberi penjelasan singkat mengenai apa yang dilakukan oleh algoritma. Penjelasan semacam ini sering kali disebut sebagai spesifikasi algoritma. Algoritma yang akan ditulis nantinya harus sesuai dengan spesifikasi yang didefinisikan. Algoritma LUAS_PERSEGI_PANJANG { Menghitung luas persegi panjang dengan masukan ukuran panjang dan ukuran lebar, lalu mencetak hasil luas persegi panjang ke piranti keluaran} S1 Teknik Informatika - Unijoyo

S1 Teknik Informatika - Unijoyo Deklarasi DEKLARASI adalah merupakan tempat untuk mendefinisikan berbagai macam nama, yaitu: Nama tipe Nama konstanta Nama informasi/peubah (nama variabel) Nama fungsi, sekaligus spesifikasinya Nama prosedur, sekaligus spesifikasinya Semua nama tersebut baru dapat digunakan jika telah didefinisikan di dalam DEKLARASI. Penulisan sekumpulan nama dalam DEKLARASI sebaiknya dikelompokkan menurut jenis nama tersebut. Dalam pendefinisian nama-nama, ada ketentuan-ketentuan yang harus diperhatikan: Nama peubah belum terdefinisi harganya ketika didefinisikan. Pendefinisian konstanta sekaligus juga memberikan harganya. Pendefinisian nama fungsi sekaligus juga dengan domain dan range serta spesifikasinya. Pendefinisian nama prosedur sekaligus juga dengan pendefinisian parameter (jika ada) dan spesifikasi prosedur (kondisi awal, kondisi akhir dan proses yang dilakukan). S1 Teknik Informatika - Unijoyo

S1 Teknik Informatika - Unijoyo DEKLARASI { Nama tipe, hanya untuk tipe yang bukan tipe dasar } type Titik : <X:real,Y:real> { koordinat pada sumbu kartesian } { Nama konstanta, harus menyebutkan nilai } const phi = 3.14 { Nama peubah (variabel), menyebutkan tipe } P : Titik { Titik dalam derajat kartesian } jmlh : integer { Jumlah suatu elemen } ketemu : boolean { Keadaan hasil pencarian } { Spesifikasi Fungsi, menyebutkan nama fungsi, domain dan range } function Konversi_Real_Ke_Integer(input i:real)integer { Mengkonversi harga i yang bertipe real menjadi harga ekivalen yang bertipe integer } { Spesifikasi Prosedur, menyebutkan nama, parameter, kondisi awal, kondisi akhir dan proses } procedure Tukar(input/output A:integer, input/output B:integer) { Kondisi awal : A dan B terdefinisi, A=a dan B=b } { Kondisi akhir : A=b dan B=a } { Proses : Mempertukarkan nilai A dan B } S1 Teknik Informatika - Unijoyo

S1 Teknik Informatika - Unijoyo Dalam bahasa pemrograman, setiap nama memiliki aturan penulisan atau sintaks tertentu, misalnya aturan yang menyangkut karakter yang diperbolehkan, jumlah maksimum karakter, dan sebagainya. Di dalam teks algoritma, tidak terdapat aturan ketat mengenai nama. Hal yang perlu diperhatikan adalah bahwa pemilihan nama harus tidak menimbulkan kerancuan dan jika nama yang digunakan adalah singkat maka harus disertai dengan penjelasannya. Sebuah nama harus dituliskan secara utuh dan tidak boleh dipisahkan dengan spasi. Deklarasi global atau umum dikenal untuk seluruh program sedangkan deklarasi lokal hanya dikenal pada teks algoritma tempat deklarasi tersebut dituliskan. S1 Teknik Informatika - Unijoyo

S1 Teknik Informatika - Unijoyo Deskripsi DESKRIPSI adalah bagian inti dari algoritma. Bagian ini berisi instruksi-instruksi atau pemanggilan aksi-aksi yang telah didefinisikan. Komponen di dalam teks algoritma dapat berupa: Instruksi dasar seperti input/output, assignment Urutan (sequence) Pemilihan Pengulangan DESKRIPSI: read(a) ba mod 2 if b = 0 then write(‘bilangan genap’) else write(‘bilangan ganjil’) endif S1 Teknik Informatika - Unijoyo

Translasi Teks Algoritma ke dalam Teks Program Bahasa C Teks algoritma adalah hasil pemikiran yang konseptual. Agar dapat dilaksanakan oleh komputer maka algoritma harus ditranslasi ke dalam notasi bahasa pemrograman. Struktur program C juga terdiri dari tiga bagian: Judul Program  sifatnya adalah optional dan tidak signifikan di dalam program. Jika dituliskan dapat digunakan untuk memberi nama program dan sifatnya sebagai dokumentasi saja. Judul program jika ditulis, harus terletak pada awal program dan diakhiri dengan titik koma. Bagian Deklarasi  digunakan bila di dalam program menggunakan pengenal (identifier). Identifier dapat berupa label, konstanta, tipe, peubah, prosedur dan fungsi. Jika suatu program menggunakan identifier, Bahasa Pascal menuntut supaya identifier tersebut dikenalkan terlebih dahulu sebelum digunakan, yaitu dideklarasikan terlebih dahulu di dalam bagian ini. Bagian Deskripsi  menunjukkan suatu tindakan yang dikerjakan oleh program. Tindakan yang dilakukan oleh program tergantung pada instruksi-instruksi yang diberikan. Instruksi-instruksi yang akan diberikan untuk dikerjakan ditulis di antara kata cadangan Begin dan End. Akhir penulisan dari End diakhiri dengan tanda baca titik (‘.’). Yang perlu diperhatikan bahwa setiap instruksi per barisnya diakhiri dengan tanda baca titik koma (‘;’). S1 Teknik Informatika - Unijoyo

S1 Teknik Informatika - Unijoyo ALGORITMA Algoritma NAMA_ALGORITMA { Penjelasan mengenai algoritma, yang berisi uraian singkat mengenai apa yang dilakukan oleh algoritma } DEKLARASI { Semua nama yang dipakai, meliputi nama tipe, nama tetapan, nama peubah, nama prosedur dan nama fungsi didefinisikan di sini } DESKRIPSI : { Semua langkah atau aksi algoritma dituliskan di sini } S1 Teknik Informatika - Unijoyo

S1 Teknik Informatika - Unijoyo Contoh translasi dari teks algoritma ke teks bahasa pemrograman C untuk mendapatkan hasil sebagai berikut: 1 2 3 4 5 Untuk mendapatkan hasil seperti di atas, pada bagian deskripsi digunakan instruksi dengan struktur pengulangan While-Do S1 Teknik Informatika - Unijoyo

S1 Teknik Informatika - Unijoyo ALGORITMA Algoritma PENAMBAHAN_SATU { Menampilkan penambahan satu dari suatu bilangan bulat, dimulai dari 0 sampai dengan 5 } DEKLARASI I : integer { peubah data bilangan bulat } DESKRIPSI: I  0 while I  5 do write(I) II + 1 endwhile { I > 5 } S1 Teknik Informatika - Unijoyo

S1 Teknik Informatika - Unijoyo Beberapa hal penting yang harus diketahui dari bahasa Pascal: Bahasa C membedakan nama yang ditulis dalam huruf besar ataupun huruf kecil. Jadi Bahasa C bersifat case sensitive. Misalnya: I tidak sama saja dengan i penambahan_satu berbeda dengan PENAMBAHAN_SATU Komentar ditulis di antara tanda “/*” dan “*/” Program C tidak mengenal aturan penulsian di kolom tertentu, jadi boleh dituliskan mulai kolom ke berapapun. Penulisan instruksi-instruksi yang menjorok masuk beberapa kolom tidak memiliki pengaruh apapun di dalam proses. Hal ini hanya dimaksudkan untuk mempermudah pembacaan atau dokumentasi program, sehingga akan lebih terlihat bagian-bagiannya. S1 Teknik Informatika - Unijoyo

S1 Teknik Informatika - Unijoyo Tabel Translasi Notasi Algoritma Notasi Algoritma Pengisian Nilai, Pembacaan dan Penulisan Notasi Algoritma Struktur Notasi Algoritma Struktur Pengulangan Notasi Algoritma Prosedur Notasi Algoritma Fungsi S1 Teknik Informatika - Unijoyo

Notasi Algoritma ke dalam Notasi Bahasa Pascal Kelompok Algoritmik Pascal C 1. Tipe Dasar boolean integer Byte (1 byte) Shortint (1 byte) Word (2 byte) Integer (2 byte) Longint (1 byte) Short int Long int Signed int Unsigned int real double extended Float char Char string String String[n] - record <field1: type, field2: type, . . . fieldN: type > field1: type; field2: type; fieldN: type; end; Struct { Type field1; Type field2; ... Type fieldN; } S1 Teknik Informatika - Unijoyo

S1 Teknik Informatika - Unijoyo Kelompok Algoritmik Pascal C 2. Operator a. Aritmatika +  * / div mod % b. Perbandingan <  >  =  <= >= <> != c. Logika not and or xor ! && || ^ 3. Komentar { komentar } (* komentar *) // 1 baris /* komentar */ 4. Lain-lain const type true false typedef S1 Teknik Informatika - Unijoyo

S1 Teknik Informatika - Unijoyo Notasi Algoritma Pengisian Nilai, Pembacaan dan Penulisan ke dalam Notasi Bahasa Pascal dan C Kelompok Algoritmik Pascal C 1. Penugasan  := = 2. Pembacaan read readln Cin Scanf 3. Penulisan write writeln cout printf read : Membaca masukan dari keyboard, kursor tetap di baris yang sama Readln/scanf/cin Membaca masukan dari keyboard, kursor kemudian pindah ke baris berikutnya Write/cout/printf Menulis keluaran ke layar, kursor tetap di baris yang sama writeln Menulis keluaran ke layar, kursor kemudian pindah ke baris berikutnya S1 Teknik Informatika - Unijoyo

Notasi Algoritma Struktur Pemilihan ke dalam Notasi Bahasa Pascal + C Algoritmik Pascal C 1. IF-THEN if <kondisi> then aksi endif begin aksi1; aksi2; . aksiN end; (*if*) if <kondisi> { }(*if*) 2. IF-THEN-ELSE aksi1 else aksi2 (*endif*) 3. CASE case nama <kond1> : aksi1 <kondN> : aksiN [otherwise aksiX] endcase Cara 1: case nama of nilai1 : aksi1; nilai2 : aksi1; nilaiN : aksiN; [else aksiX] end; Cara 2: if kond1 then if kond2 then ... switch (nama) Case nilai1: aksi1; break; Case nilai2 : aksi1; break; Case nilaiN : aksiN; break; [default: aksi_df; }

S1 Teknik Informatika - Unijoyo Notasi Algoritma Struktur Pengulangan ke dalam Notasi Bahasa Pascal + C Struktur Algoritmik Pascal C 1. FOR For menaik: for pencacaha to b do aksi endfor for pencacah:=a to b do begin aksi1; aksi2; ... aksiN; end; (*for*) for (x:=a; x<=b; x++) // a>b { }(*for*) For menurun: for pencacahb downto a do for pencacah:=b dowmto a do .... for (x:=a; x>=b; x--) // a>b } (*for*) 2. WHILE while kondisi do endwhile end; (*while*) while (kondisi) } (*while*) 3. REPEAT repeat until kondisi aksi; until kondisi; do } while (kondisi); S1 Teknik Informatika - Unijoyo

Notasi Algoritma Prosedur Prosedur Tanpa Parameter Prosedur dengan Parameter Masukan Prosedur dengan Parameter Keluaran Prosedur dengan Parameter Masukan/Keluaran S1 Teknik Informatika - Unijoyo

Prosedur Tanpa Parameter ALGORITMA procedure NAMA_PROSEDUR { Spesifikasi Prosedur, menyebutkan nama, parameter, kondisi awal, kondisi akhir dan proses } { Kondisi awal : keadaan sebelum prosedur dilaksanakan } { Kondisi akhir : keadaan setelah prosedur dilaksanakan } DEKLARASI { Semua nama yang dipakai prosedur didefinisikan di sini dan hanya berlaku lokal } DESKRIPSI : { badan prosedur, berisi semua langkah atau aksi algoritma } Cara memanggil prosedur: NAMA_PROSEDUR; S1 Teknik Informatika - Unijoyo

Prosedur dengan Parameter Masukan ALGORITMA procedure NAMA_PROSEDUR(input parameter : tipe_param) { Spesifikasi Prosedur, menyebutkan nama, parameter, kondisi awal, kondisi akhir dan proses } { Kondisi awal : keadaan sebelum prosedur dilaksanakan } { Kondisi akhir : keadaan setelah prosedur dilaksanakan } DEKLARASI { Semua nama yang dipakai prosedur didefinisikan di sini dan hanya berlaku lokal } DESKRIPSI : { badan prosedur, berisi semua langkah atau aksi algoritma } Cara memanggil prosedur: NAMA_PROSEDUR(parameter_aktual); S1 Teknik Informatika - Unijoyo

Prosedur dengan Parameter Keluaran ALGORITMA procedure NAMA_PROSEDUR(output parameter : tipe_param) { Spesifikasi Prosedur, menyebutkan nama, parameter, kondisi awal, kondisi akhir dan proses } { Kondisi awal : keadaan sebelum prosedur dilaksanakan } { Kondisi akhir : keadaan setelah prosedur dilaksanakan } DEKLARASI { Semua nama yang dipakai prosedur didefinisikan di sini dan hanya berlaku lokal } DESKRIPSI : { badan prosedur, berisi semua langkah atau aksi algoritma } Cara memanggil prosedur: NAMA_PROSEDUR(parameter_aktual); S1 Teknik Informatika - Unijoyo

Prosedur dengan Parameter Masukan/Keluaran ALGORITMA procedure NAMA_PROSEDUR(input/output parameter : tipe_param) { Spesifikasi Prosedur, menyebutkan nama, parameter, kondisi awal, kondisi akhir dan proses } { Kondisi awal : keadaan sebelum prosedur dilaksanakan } { Kondisi akhir : keadaan setelah prosedur dilaksanakan } DEKLARASI { Semua nama yang dipakai prosedur didefinisikan di sini dan hanya berlaku lokal } DESKRIPSI : { badan prosedur, berisi semua langkah atau aksi algoritma } Cara memanggil prosedur: NAMA_PROSEDUR(parameter_aktual); S1 Teknik Informatika - Unijoyo

S1 Teknik Informatika - Unijoyo Notasi Algoritma ALGORITMA function NAMA_FUNGSI(input daftar parameter formal)tipe_hasil { Spesifikasi Fungsi, menjelaskan apa yang dilakukan dan dikembalikan oleh fungsi } DEKLARASI { Semua nama yang dipakai fungsi didefinisikan di sini dan hanya berlaku lokal } DESKRIPSI : { badan fungsi, berisi semua langkah atau aksi algoritma untuk menghasilkan nilai yang akan dikembalikan } return hasil { pengembalian nilai yang dihasilkan fungsi } S1 Teknik Informatika - Unijoyo

S1 Teknik Informatika - Unijoyo Summary Teks algoritma adalah hasil pemikiran yang konseptual. Agar dapat dilaksanakan oleh komputer maka algoritma harus ditranslasi ke dalam notasi bahasa pemrograman. Judul algoritma adalah bagian algoritma yang terdiri dari nama dan penjelasan (spesifikasi) tentang algoritma tersebut Deklarasi adalah bagian dari teks algoritma yang merupakan tempat untuk mendefinisikan nama tipe, nama konstanta, nama informasi/peubah (nama variabel), nama fungsi (sekaligus spesifikasinya) dan nama prosedur (sekaligus spesifikasinya) Deskripsi merupakan uraian langkah-langkah penyelesaian masalah. Setiap langkah algoritma dibaca dengan urutan dari “atas” ke “bawah”. Urutan penulisan ini akan menentukan urutan pelaksanaan perintah. S1 Teknik Informatika - Unijoyo

S1 Teknik Informatika - Unijoyo Daftar Pustaka Andri Kristanto [2003]. Algoritma dan Pemrograman dengan C++, Graha Ilmu, Yogyakarta. 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