Notasi Algoritmik, Tipe Dasar, Nilai, Ekspresi dan Input/Output

Slides:



Advertisements
Presentasi serupa
Dosen : Rinci Kembang Hapsari, S.Si
Advertisements

ALGORITMA & PEMROGRAMAN I-A
Tipe Data, Variabel & Operator
Matakuliah : Algoritma & Struktur Data Versi Materi
Urutan (Sequence) Ery Setiyawan Jullev A.
Algoritma (Struktur, Tipe Data, Input/Output)
Notasi Algoritma.
TIPE DATA Erizal, S.Si, M.Kom Sistem Informasi STTI Respati
Tipe Data, Variabel & Operator
KUG1C3 Dasar Algoritma & Pemrograman
Algoritma Dan Pemrograman
Pengenalan Type Data Type data dapat dikelompokkan menjadi 2
Dasar-dasar Pemrograman
ALGORITMA PEMROGRAMAN 2A
Struktur Algoritma & Tipe Data
Dasar Algoritma dan pemrograman
Prosedur Tim PHKI Modul Dasar Pemrograman Fakultas Ilmu Komputer
Pertemuan 2 Muhamad Haikal, S.Kom., MT
Notasi Algoritma & Tipe Data
ALGORITMA DAN PEMROGRAMAN Tipe Data
KUG1A3 Algoritma& Pemrograman
Implementasi Algortima
PEMROGRAMAN DASAR Varian dan Invarian.
PERTEMUAN 2 Bambang Irawan.
Dasar Algoritma dan Pemrograman
Tipe, Nama, dan Nilai Anifuddin azis.
Algoritma dan Pemrograman 2A
TIPE DATA, NAMA dan EKSPRESI
KUG1A3 Algoritma& Pemrograman
Algoritma dan Struktur Data 1 pertemuan 12
Dasar algoritma dan pemrograman
Implementasi Algortima
Dasar Pemrograman (DasPro) Teknik Informatika S-1 UDINUS
TEL 2112 Dasar Komputer & Pemograman Konsep Tipe Data dan Operator
Konsep Tipe Data dan Operator
TEE 2103 Algoritma dan Pemrograman
Tipe, Nama, dan Nilai.
Pseudocode – Tipe Data, Variabel, dan Operator
TEL 2112 Dasar Komputer & Pemograman Nama dan Nilai Data
Algoritma dan Pemrograman
Algoritma dan Pemrograman (Pertemuan 03)
Pengenalan Type Data Type data dapat dikelompokkan menjadi 2
Tipe Data, Operator dan Ekspresi
Dasar- dasar Algoritma
ALGORITMA DAN PEMROGRAMAN Tipe Data
ALGORITMA DAN PEMROGRAMAN Tipe Data
Pengantar Struktur Data
TEE 2103 Algoritma & Pemrograman
Tipe Data, Nama dan Nilai
TIPE DATA.
CS1023 Pemrograman Komputer
VARIABEL DAN TIPE DATA Erizal, S.Si, M.Kom Sistem Informasi
Algoritma dan Pemrograman (Pertemuan 04)
Konsep Tipe Data dan Operator
Pertemuan 2 Algoritma dan Pemrograman
Review Algoritma 1 Teks Algoritma terdiri dari tiga bagian :
Type, Variabel, Konstanta
PEMROGRAMAN DASAR Varian dan Invarian.
Pertemuan 3 DR. Okfalisa, MsC Tipe, Nama dan Nilai.
KUG1E3/ Pemrograman Terstruktur 1
PEMROGRAMAN DASAR Varian dan Invarian.
Dasar Pemrograman Perintah Dasar Nurul Anisa Sri Winarsih, M. CS
Tipe Data & Notasi Algoritmik
Prosedur Oleh : Tim Teaching Bernadus Anggo Seno Aji, S.Kom., M.Kom
Perulangan (Loop) Oleh : Tim Teaching
FUNCTION Oleh : Tim Teaching Bernadus Anggo Seno Aji, S.Kom., M.Kom
Dasar Pemrograman Percabangan Nurul Anisa Sri Winarsih, M. CS
Algoritma dan Dasar Pemprograman
Dasar Pemrograman Aksi Sekuensial Nurul Anisa Sri Winarsih, M. CS
Memori dan Scope Variabel
Transcript presentasi:

Notasi Algoritmik, Tipe Dasar, Nilai, Ekspresi dan Input/Output Oleh : Tim Teaching Bernadus Anggo Seno Aji, S.Kom., M.Kom Farah Zakiyah Rahmanti, S.ST., M.T. Agustus 2018

Bahan kajian Mata kuliah Notasi Algoritmik, Tipe Dasar, Nilai, Percabangan Percabangan Perulangan Skema Pemprosesan Sekuensial Fungsi UTS Prosedur Array dan String Searching Sorting UAS

Review : Algoritma vs Program “Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis dan logis” Program = Algoritma + Struktur Data Algoritma adalah solusi detail secara prosedural dari suatu persoalan dalam notasi algoritmik. Program adalah program komputer dalam suatu bahasa pemrograman yang tersedia di dunia nyata.

Teks Algoritma

Contoh Kamus Agustus 2017

Tipe Data Tipe Data Dasar Tipe Data Enumerasi Tipe Data Bentukan Bilangan Logika / Boolean Bilangan Bulat / Integer Bilangan Riil / Real Karakter / Char Tipe Data Enumerasi Tipe Data Bentukan Type tidak menentukan alokasi memori di komputer tapi hanya mendefinisikan pola struktur informasi

Tipe Data Dasar Boolean Nama boolean Domain [true,false] Konstanta true false

Tipe Data Dasar Boolean

Tipe Data Dasar Integer Nama : integer Domain : Z Memiliki suksesor dan predesesor (keterurutan) Suksesor 0 adalah 1 Predesesor 1 adalah 0

Tipe Data Dasar Real Nama : real / Float (dalam C) Domain : R E berarti pangkat 10

Tipe Data Dasar Character Nama : character Domain : himpunan yang terdefinisi pada suatu enumerasi (ASCII) [‘0’..‘9’, ‘a’..‘z’, ‘A’..‘Z’, SPACE, RETURN, EOL] Konstanta : ‘d’, ‘a’, ‘p’, SPACE

Tipe Data Istimewa String Nama : string Domain : seluruh untaian karakter yang didefinisikan pada character Konstanta “Alpro mudah”, “Alpro”, “Alpro seru”

Tipe Data Bentukan type nama_type < elemen_1 : type_1, elemen_2 : type_2, ……………………........ elemen_n : type_n,> type Point <X : real , Y : real> type Date <HH : integer[0..23] , MM : integer[0..59] , SS : integer[0..59] >

Nilai Nilai adalah suatu besaran bertipe yang telah dikenal Dalam program, nilai disimpan dalam suatu variabel sehingga dapat dilakukan operasi aritmetika dan logika dengan mengacu nama variabelnya Nilai dapat diperoleh dari Merupakan isi dari suatu nama variabel Hasil perhitungan suatu ekspresi Hasil yang dikirim suatu fungsi Merupakan suatu konstanta

Pengisian Nilai melalui Assignment Assignment adalah instruksi primitif algorimtik untuk menyimpan informasi

Syarat Assignment Bagian kiri dan bagian kanan tanda pemberian harga (← ) bertype sama <nama> dan <nama1> (bagian kiri tanda ← ) harus merupakan nama informasi, tidak boleh nama konstanta, type, fungsi atau prosedur Nama yang tertulis di bagian kanan tanda ← (misalnya nama2 atau nama konstanta atau nama yang dipakai dalam ekspresi) boleh berupa nama informasi, nama fungsi, nama konstanta Semua nama yang dipakai dalam assignment tidak boleh berupa nama type atau nama prosedur

Pengisian Nilai melalui Input Suatu harga dapat diisikan ke suatu nama informasi melalui pembacaan harga tersebut dari piranti masukan (keyboard, mouse, scanner, dsb Syarat : list nama adalah satu atau lebih nama informasi nama yang muncul pada list-nama hanya boleh berupa nama informasi, dan tidak boleh nama lain (nama konstanta, type, fungsi atau prosedur)

Assignment

Output Suatu nilai yang disimpan dalam memori komputer harus dapat dikomunikasikan ke dunia luar untuk diinterpretasikan oleh pemakai program Dalam hal ini, harga harus dapat dituliskan ke suatu piranti keluaran, misalnya layar, printer Instruksi algoritmik untuk menuliskan nama informasi adalah instruksi penulisan atau output

Output

Syarat Output List nama adalah satu atau lebih nama : boleh nama INFORMASI, nama KONSTANTA atau nama FUNGSI berikut parameternya. Nama-nama dalam list-nama TIDAK BOLEH berupa nama TYPE atau PROSEDUR Nama yang akan dituliskan sudah terdefinisi harganya. Jika suatu nama informasi, didefinisikan dengan assignment atau instruksi input

jumlah  bilangan1+bilangan2 Ekspresi Ekspresi adalah suatu “rumus perhitungan” yang terdiri dari operan dan operator Contoh : jumlah  bilangan1+bilangan2 Operan : bilangan1 dan bilangan2 Operator : + Ekspresi uner adalah ekspresi dengan operator uner, yaitu operator yang hanya membutuhkan satu operan

Ekspresi Uner Ekspresi uner adalah ekspresi dengan operator uner, yaitu operator yang hanya membutuhkan satu operan Contoh not true

Ekspresi Biner Ekspresi biner adalah ekspresi dengan operator biner (membutuhkan dua operan) dapat dituliskan dalam 3 macam notasi, yaitu : Notasi infix: operan1 operator operan2 13 * 5 ((3 * 5) + (4 div 7) )- (a * b) Notasi prefix: operator operan1 operan2 * 13 5 - +* 3 5 div 4 7 * a b Notasi suffix/Polish: operan1 operan2 operator 13 5 * 3 5 * 4 7 div + a b * -

Sekuensial Sequence adalah sederetan instruksi primitif dan/atau aksi yang akan dilaksanakan (dieksekusi) oleh komputer berdasarkan urutan penulisannya. Initial State dari sequence adalah state awal yang harus dipenuhi dan Final state dari sequence adalah final state setelah instruksi/aksi terakhir. Sequence dapat dituliskan menjadi satu baris program dengan cara memisahkan penulisan setiap instruksi/aksi dengan tanda “titik koma”. Penulisan sequence dengan dipisahkan titik koma sebaiknya hanya dilakukan untuk sequence yang jika urutan penulisannya diubah tidak berpengaruh kepada program

Penulisan Sekuensial Sequence dapat dituliskan menjadi satu baris program dengan cara memisahkan penulisan setiap instruksi/aksi dengan tanda “titik koma”. Penulisan sequence dengan dipisahkan titik koma sebaiknya hanya dilakukan untuk sequence yang jika urutan penulisannya diubah tidak berpengaruh kepada program

Penulisan Sekuensial Sequence dapat dituliskan menjadi satu baris program dengan cara memisahkan penulisan setiap instruksi/aksi dengan tanda “titik koma”. Penulisan sequence dengan dipisahkan titik koma sebaiknya hanya dilakukan untuk sequence yang jika urutan penulisannya diubah tidak berpengaruh kepada program

Penulisan Sekuensial Sequence dapat dituliskan menjadi satu baris program dengan cara memisahkan penulisan setiap instruksi/aksi dengan tanda “titik koma”. Penulisan sequence dengan dipisahkan titik koma sebaiknya hanya dilakukan untuk sequence yang jika urutan penulisannya diubah tidak berpengaruh kepada program

Hello World !

Latihan 1 Buatlah algoritma yang meminta 2 buah inputan bilangan bulat dari user, lalu mengoutputkan hasil tambah dan kali kedua bilangan tersebut. Hasil yang diharapkan : Masukkan bil1 : 10 Masukkan bil2 : 20 10 + 20 = 30 10 x 20 = 200

Latihan 2 Buatlah algoritma yang meminta inputan berupa 3 buah bilangan bulat, lalu mengoutputkan perhitungan berikut ini : bil1^2 + (bil2/bil3) – bil 3 Output yang diharapkan adalah : Masukkan bil1, bil2, bil3 : 3,2,4 Hasil perhitungan bil1^2+ (bil2/bil3) – bil3 adalah 9 + (2/4) – 4 = 5.5

Latihan 3 Spesifikasi: Input : v (kecepatan, m/detik) real dan S (jarak yang ditempuh dalam meter ) integer Proses : menghitung t = S / v Output :t (waktu, detik)

Latihan 4 Suatu bus pariwisata berkapasitas 25 orang. Suatu sekolah ingin berwisata menggunakan bus tersebut. Berdasarkan jumlah siswa yang terdapat disekolah tersebut, berapa banyak bus yang berisi penuh dan berapa sisa siswa yang tidak dapat bus? Buat algoritma untuk kasus tersebut. Contoh : Input : Jumlah siswa : 90 Output : Bus : 3 Sisa siswa : 15

Soal 5 Buat program dengan tampilan Nama 1 : <masukkan Nama orang 1> Umur 1 : <masukkan umur orang 1> Nama 2 : <masukkan Nama orang 2> Umur 2 : <masukkan umur orang 2> //Selisih = |Umur1-Umur2| Selisih umur <Nama1> dan <Nama2> adalah <Selisih>

Soal 6 Buatlah program untuk mencetak gabungan dari huruf-huruf yang di asignment A  C B  I C  E D  B E  S F  A Keluaran CIE BISA 04/04/2019

04/04/2019

Program Versi 1

Program Versi 2 Mengenai input untuk program : dalam kehidupan sehari-hari, akan sangat sulit untuk memasukkan input nilai v dan t di atas, karena jika pemakai program salah memasukkan urutan, harga yang tersimpan akan salah. Untuk contoh di atas, karena rumusnya hanya perkalian dua buah nilai integer mungkin tidak fatal. Jika rumus misalnya adalah v-t maka pemasukan data dengan urutan yang lain akan fatal akibatnya. Mengenai output : output program di atas sangat sulit diinterpretasi karena yang dihasilkan oleh program hanya sebuah angka yang tidak jelas interpretasinya.

Program Versi 3 Catatan : Dengan menuliskan semacam ini, program akan dapat dioperasikan dengan lebih mudah, namun algoritma menjadi sangat rinci. Lebih rinci lagi, dapat dibuat layar yang indah dengan warna-warni dan posisi penulisan yang enak dibaca. Tujuan dari menuliskan algoritma adalah untuk menuliskan “sketsa” solusi dari program, jadi hanya mengandung hal yang esensial. Sebaiknya instruksi yang sudah sangat rinci dan tidak mengandung hal esensial dikode secara langsung dalam bahasa pemrograman pada saat impelementasi. Jadi, teks algoritma JARAK1 dan JARAK2 yang hanya mengandung hal yang esensial adalah produk dari design program, sedangkan teks rinci semacam JARAK3 langsung pada bahasa pemrogramannya. Untuk selanjutnya, teks algoritma dituliskan dengan hanya mengandung hal yang esensial saja karena pusat perhatian kita adalah untuk menghasilkan sketsa solusi saja.

Question?

Referensi Liem, Inggriani. Diktat kuliah Algoritma & Pemrograman. ITB. 2003

Terima Kasih