You are on page 1of 53

Algoritma dan Pemrograman I

NOPI RAMSARI, S.Si, M.T

POLITEKNIK PIKSI GANESHA BANDUNG 2012

Pengertian Pengertian (AP1-1)

Tujuan Instuksional Umum Mahasiswa mampu mendefinisikan Algoritma dan Pemrograman serta mengenal berbagai jenis bahasa pemrograman Tujuan Instruksional khusus : Mengenal asal pengertian algoritma dan pemrograman Mengenal jenis penulisan logika pemrograman Mengenal berbagai tata cara penulisan logika Mampu menyebutkan dan mengelompokan bahasa pemrograman kedalam tingkatan bahasa pemrograman Mampu menyebutkan bahasa pemrograman dan kegunaannya

Pengertian Algoritma dan Pemrograman

Ilustrasi :

Bagaimana caranya agar mobil dan pengemudi sampai di tujuan

Pengertian Algoritma dan Pemrograman

Dari gambar ilustrasi


Berapa kemungkinan penyelesaian jalan yang dilalui ? (buat tanda panah sebagai petunjuk arah) Anggap satu kemungkinan yang dipilih, tuliskan tahapan yang harus dilalui Dari tahapan yang dibuat apakah menyelesaikan masalah ?

Pengertian Algoritma dan Pemrograman

Dari pertanyaan yang diajukan, ada suatu hipotesa : Untuk menyelesaikan suatu permasalahan pasti harus memiliki alur yang jelas dan tepat. Dari alur yang dibuat pasti susunan / tahapan tersusun secara sistematis dan hirarkis Susunan sistematis dan hirarkis pasti dapat menyelesaikan masalah tertentu Keyakinan yang didapat : Setiap menyelesaikan masalah harus menggunakan cara-cara sistematis, terstruktur, dan hirarkis Cara-cara tersebut harus bisa dituliskan secara benar dan masuk akal. (Metode Ilmiah)
5

Pengertian Algoritma dan Pemrograman


Bagaimana karateristik komputer ?
Komputer terdiri dari rangkaian elektronik IC, Kawat Tembaga, mainboard, dll
Terdiri dari ribuan transistor (tergabung dalam IC) yang berisikan gerbang-gerbang logika (AND,OR, NAND, NOR, dll) Eksekusi dipicu dari adanya masukan (input) listrik berkisar 5 volt dan berupa TRUE / FLASE Aliran data berupa dijit biner 1 dan 0, yang tersusun sesuai instruksi

Instruksi dibuat secara sistematis dan hirarkis, dan masuk akal (sesuai logika)
Question : Bagaimana agar instruksi dapat dimengerti dan bisa menghasilkan keluaran (output) sesuai keinginan ?
6

Pengertian Algoritma dan Pemrograman

Answer : Harus ada instruksi yang dimengerti oleh komputer Komputer hanya terdiri dari rangkaian elektronik, karena itu hanya mengerti nilai 1 dan 0 Nilai 1 dan 0, dapat berupa rangkaian instruksi jika disusun dengan susunan yang sistematis dan masuk akal untuk menyelesaikan masalah tertentu Susunan masuk akal dikenal dengan istilah urutan instruksi bahasa yang dikenal oleh komputer. Karena itu pasti komputer punya bahasa, dan kita harus membuat bahasa yang dimengerti oleh komputer. Bahasa tersebut dikenal dengan istilah bahasa pemrograman. Program komputer harus dibuat dengan urutan logika yang benar dan sesuai dengan masalah yang ingin diselesaikan.
7

Pengertian Algoritma dan Pemrograman


Urutan logika untuk menyelesaikan masalah tertentu Istilah Algoritma
Diterjemahkan oleh bahasa pemrograman Contoh : PASCAL, C, DELPHI, dll

Hasil

Instruksi yang dikenal oleh komputer

Pengertian Algoritma dan Pemrograman

Simpulan : Algoritma : urutan-urutan logis dari suatu pernyataan untuk menyelesaikan kasus / masalah tertentu Pemrograman : proses penterjemahan algoritma kedalam bahasa yang dimengerti oleh komputer. Asal kata algoritma
Al-Khwrizm, Persian astronomer and mathematician,

algorism Algoritmi Algorithm


9

the technique of performing basic arithmetic by writing numbers in place value form and applying a set of memorized rules and facts to the digits calculation method

a sequence of finite instructions, often used for calculation and data processing

Beda Algoritma dan Program


1.1.2. Beda Algoritma dan Program Program adalah kumpulan pernyataan komputer, sedangkan metode dan tahapan sistematis dalam program adalah algoritma. Program ditulis dengan menggunakan bahasa pemrograman. Jadi bisa disebut bahwa program adalah suatu implementasi dari bahasa pemrograman. Beberapa pakar memberi formula bahwa: Program = Algoritma + Bahasa (Struktur Data) Bagaimanapun juga struktur data dan algoritma berhubungan sangat erat pada sebuah program. Algoritma yang baik tanpa pemilihan struktur data yang tepat akan membuat program menjadi kurang baik, demikian juga sebaliknya.
10

Keuntungan Algoritma

Pembuatan algoritma mempunyai banyak keuntungan di antaranya: 1. Pembuatan atau penulisan algoritma tidak tergantung pada bahasa pemrograman manapun, artinya penulisan algoritma independen dari bahasa pemrograman dan komputer yang melaksanakannya. 2. Notasi algoritma dapat diterjemahkan ke dalam berbagai bahasa pemrograman. 3. Apapun bahasa pemrogramannya, output yang akan dikeluarkan sama karena algoritmanya sama.
11

hal yang perlu diperhatikan dalam membuat algoritma

1. Teks algoritma berisi deskripsi langkah-langkah penyelesaian masalah. Deskripsi tersebut dapat ditulis dalam notasi apapun asalkan mudah dimengerti dan dipahami. 2. Tidak ada notasi yang baku dalam penulisan teks algoritma seperti notasi bahasa pemrograman. Notasi yang digunakan dalam menulis algoritma disebut notasi algoritmik. 3. Setiap orang dapat membuat aturan penulisan dan notasi algoritmik sendiri. Hal ini dikarenakan teks algoritma tidak sama dengan teks program. Namun, supaya notasi algoritmik mudah ditranslasikan ke dalam notasi bahasa pemrograman tertentu, maka sebaiknya notasi algoritmik tersebut berkorespondensi dengan notasi bahasa pemrograman secara umum.
12

hal yang perlu diperhatikan dalam membuat algoritma..cont


4. Notasi algoritmik bukan notasi bahasa pemrograman, karena itu pseudocode dalam notasi algoritmik tidak dapat dijalankan oleh komputer. Agar dapat dijalankan oleh komputer pseudocode dalam notasi algoritmik harus ditranslasikan atau diterjemahkan ke dalam notasi bahasa pemrograman yang dipilih. Perlu diingat bahwa orang yang menulis program sangat terikat dalam aturan tata bahasanya dan spesifikasi mesin yang menjalannya. 5. Algoritma sebenarnya digunakan untuk membantu kita dalam mengkonversikan suatu permasalahan ke 13

hal yang perlu diperhatikan dalam membuat algoritma..cont

6. Algoritma merupakan hasil pemikiran konseptual, supaya dapat dilaksanakan oleh komputer, algoritma harus ditranslasikan ke dalam notasi bahasa pemrograman. Ada beberapa hal yang harus diperhatikan pada translasi tersebut, yaitu: a. Pendeklarasian variabel Untuk mengetahui dibutuhkannya pendeklarasian variabel dalam penggunaan bahasa pemrograman apabila tidak semua bahasa pemrograman membutuhkannya. b. Pemilihan tipe data Apabila bahasa pemrograman yang akan digunakan membutuhkan pendeklarasian variabel maka perlu hal ini dipertimbangkan pada saat pemilihan tipe data. c. Pemakaian instruksi-instruksi Beberapa instruksi mempunyai kegunaan yang sama tetapi masingmasing memiliki kelebihan dan kekurangan yang berbeda.
14

hal yang perlu diperhatikan dalam membuat algoritma..cont


d. Aturan sintaksis Pada saat menuliskan program kita terikat dengan aturan sintaksis dalam bahasa pemrograman yang akan digunakan. e. Tampilan hasil Pada saat membuat algoritma kita tidak memikirkan tampilan hasil yang akan disajikan. Hal-hal teknis ini diperhatikan ketika mengkonversikannya menjadi program. f. Cara pengoperasian compiler atau interpreter. Bahasa pemrograman yang digunakan termasuk dalam kelompok compiler atau interpreter.
15

Contoh-Contoh Algoritma dalam Kehidupan Sehari-hari

16

Definisi Komputer

Kata komputer berasal dari bahasa Latin yaitu Computare yang artinya menghitung. Dalam bahasa Inggris disebut to compute. Secara definisi komputer diterjemahkan sebagai sekumpulan alat elektronik yang saling bekerja sama, dapat menerima data (input), mengolah data (proses) dan memberikan informasi (output) serta terkoordinasi dibawah kontrol program yang tersimpan di memorinya. Jadi cara kerja komputer dapat kita gambarkan sebagai berikut :

17

18

1. Input Device, adalah perangkat-perangkat keras komputer yang berfungsi untuk memasukkan data ke dalam memori komputer, seperti keyboard, mouse, joystick dan lain-lain. 2 Prosesor, adalah perangkat utama komputer yang mengelola seluruh aktifitas komputer itu sendiri. Prosesor terdiri dari dua bagian utama, yaitu ; Control Unit (CU), merupakan komponen utama prosesor yang mengontrol semua perangkat yang terpasang pada komputer, mulai dari input device sampai output device. Arithmetic Logic Unit (ALU), merupakan bagian dari prosesor yang khusus mengolah data aritmatika (menambah, mengurang dll) serta data logika 19

3. Memori adalah media penyimpan data pada komputer. Memori ini terbagi atas dua macam, yaitu ; Read Only Memory (ROM), yaitu memori yang hanya bisa dibaca saja, tidak dapat dirubah dan dihapus dan sudah diisi oleh pabrik pembuat komputer. Isi ROM diperlukan pada saat komputer dihidupkan. Perintah yang ada pada ROM sebagian akan dipindahkan ke RAM. Perintah yang ada di ROM antara lain adalah perintah untuk membaca sistem operasi dari disk, perintah untuk mencek semua peralatan yang ada di unit sistem dan perintah untuk menampilkan pesan di layar. Isi ROM tidak akan hilang meskipun tidak ada aliran listrik. Tapi pada saat sekarang ini ROM telah mengalami perkembangan dan banyak macamnya,: a. PROM (Programable ROM), yaitu ROM yang bisa kita program kembali dengan catatan hanya boleh satu kali perubahan setelah itu tidak dapat lagi diprogram. b. RPROM (Re-Programable ROM), merupakan perkembangan dari versi PROM dimana kita dapat melakukan perubahan berulangkali sesuai dengan yang diinginkan.

c. EPROM (Erasable Program ROM), merupakan ROM yang dapat kita hapus dan program kembali, tapi cara penghapusannya dengan menggunakan sinar ultraviolet.
d. EEPROM (Electrically Erasable Program ROM), perkembangan mutakhir dari ROM dimana kita dapat mengubah dan menghapus program ROM dengan menggunakan teknik elektrik. EEPROM ini merupakan jenis yang paling banyak 20 digunakan saat ini.

Random Access Memori (RAM), dari namanya kita dapat artikan bahwa RAM adalah memori yang dapat diakses secara random. RAM berfungsi untuk menyimpan program yang kita olah untuk sementara waktu (power on) jika komputer kita matikan, maka seluruh data yang tersimpan dalam RAM akan hilang. Tujuan dari RAM ini adalah mempercepat pemroses data pada komputer. Agar data yang kita buat tidak dapat hilang pada saat komputer dimatikan, maka diperlukan media penyimpanan eksternal, seperti Disket, Harddisk, PCMCIA card dan lain-lain.

4. Output Device, adalah perangkat komputer yang berguna untuk menghasilkan


keluaran, apakah itu ke kertas (hardcopy), ke layar monitor (softcopy) atau keluaran berupa 21 suara. Contohnya printer, speaker, plotter, monitor dan banyak yang lainnya.

Komponen-Komponen Komputer

1. Hardware (perangkat keras), merupakan peralatan fisik dari komputer yang dapat kita lihat dan rasakan. Hardware ini terdiri dari ; Input/Output Device (I/O Device)

Terdiri dari perangkat masukan dan keluaran, seperti keyboard dan printer. Storage Device (perangkat penyimpanan)

Merupakan media untuk menyimpan data seperti disket, harddisk, CD-I,dll. Monitor /Screen

Monitor merupakan sarana untuk menampilkan apa yang kita ketikkan pada papan keyboard setelah diolah oleh prosesor. Monitor disebut juga dengan Visual Display Unit (VDU).
Casing Unit

Casing unit adalah tempat dari semua peralatan komputer, baik itu motherboard, card, peripheral lain dan Central Procesing Unit (CPU). Casing unit ini disebut juga dengan System Unit.

Central Procesing Unit (CPU)

Central Procesing Unit adalah salah satu bagian komputer yang paling penting, karena jenis prosesor menentukan pula jenis komputer. Baik tidaknya suatu komputer, jenis komputer, harga komputer, ditentukan terutama oleh jenis prosesornya. Semakin canggih prosesor komputer, maka kemampuannya akan semakin baik dan biasanya harganya akan semakin mahal. 22

Komponen-Komponen Komputer..cont
2. Software (perangkat lunak), merupakan program-program komputer yang berguna untuk menjalankan suatu pekerjaan sesuai dengan yang dikehendaki. Program tersebut ditulis dengan bahasa khusus yang dimengerti oleh komputer. Software terdiri dari beberapa jenis, yaitu ; Sistem Operasi, seperti DOS, Unix, Novell, OS/2, Windows, dll. Adalah software yang berfungsi untuk mengaktifkan seluruh perangkat yang terpasang pada komputer sehingga masing-masingnya dapat saling berkomunikasi. Tanpa ada sistem operasi maka komputer tak dapat difungsikan sama sekali. Program Utility, seperti Norton Utility, Scandisk, PC Tools, dll. Program utility berfungsi untuk membantu atau mengisi kekurangan/kelemahan dari system operasi, misalnya PC Tools dapat melakukan perintah format sebagaimana DOS, tapi PC Tools mampu memberikan keterang dan animasi yang bagus dalam proses pemformatan. File yang telah dihapus oleh DOS tidak dapat dikembalikan lagi tapi dengan program bantu hal ini dapat dilakukan. Program Aplikasi, seperti GL, MYOB, Payroll, dll. Merupakan program yang khusus melakukan suatu pekerjaan tertentu, seperti program gaji pada suatu perusahaan. Maka program ini hanya digunakan oleh bagian keuangan saja tidak dapat digunakan oleh departemen yang lain. Biasanya program aplikasi ini dibuat oleh seorang programmer komputer sesuai dengan permintaan/kebutuhan 23 seseorang/lembaga/perusahaan guna keperluan interennya.

Komponen-Komponen Komputer..cont
Program Paket, seperti MS-Word, MS-Excel, Lotus 125, dll Adalah program yang disusun sedemikian rupa sehingga dapat digunakan oleh banyak orang dengan berbagai kepentingan. Seperti MS-Word, dapat digunakan oleh departemen keuangan untuk membuat nota, atau bagian administrasi untuk membuat surat penawaran dan lain sebagainya. Bahasa Pemrograman, Pascal, Fortran, Clipper, dBase, dll. Merupakan software yang khusus digunakan untuk membuat program komputer, apakah itu sistem operasi, program paket dll. Bahasa pemrograman ini biasanya dibagi atas 3 tingkatan, yaitu ; 1. Low Level Language, bahasa pemrograman generasi pertama, bahasa pemrograman jenis ini sangat sulit dimengerti karena instruksinya menggunakan bahasa mesin. Biasanya yang mengerti hanyalah pembuatnya saja. 2. Midle Level Language, merupakan bahasa pemrograman tingkat menengah dimana penggunaan instruksi sudah mendekati bahasa sehari24 hari, walaupun begitu masih sulit untuk di mengerti karena banyak menggunakan singkatansingakatan seperti STO artinya simpan (singkatan

Komponen-Komponen Komputer..cont
3. High Level Language, merupakan bahasa tingkat tinggi yang mempunyai ciri mudah dimengerti, karena menggunakan bahasa sehari-hari, seperti BASIC, COBOL, dBase dll. 4. Brainware (User), adalah personil-personil yang terlibat langsung dalam pemakaian komputer, seperti Sistem analis, programmer, operator, user, dll. Pada organisasi yang cukup besar, masalah komputerisasi biasanya ditangani oleh bagian khusus yang dikenal dengan bagian EDP (Electronic Data Processing), atau sering disebut dengan EDP Departemen, yang dikepalai oleh seorang Manager 25 EDP.

Jenis Penulisan Logika Pemrograman


1.

Bahasa Natural : digunakan untuk membuat algoritma yang komplek atau algoritma teknik. Contoh : Buat kotak dengan sama sisi Tentukan sisi dengan ukuran yang sama panjang Pseudocode : susunan yang padat dan merupakan algoritma informal untuk deskripsi high-level dengan menggunakan struktur konvensi bahasa pemrograman, tetapi dalam penulisan tidak memperhatikan pemakaian subrutin (prosedur) , deklarasi varabel dan kode sistem khusus. Contoh : if NIM Valid then Eksekusi transkrip nilai else tampilkan pesan kesalahan end if
26

2.

Jenis Penulisan Logika Pemrograman


3.

Flowcharts (representasi grafik) : representasi algoritma dengan skema atau langkah proses yang ditunjukan dengan berbagai macam bentuk dan dikaitkan dengan arah panah.

27

Flowchart

Flowchart merupakan gambar atau bagan yang memperlihatkan urutan dan hubungan antar proses beserta pernyataannya. Gambaran ini dinyatakan dengan simbol. Dengan demikian setiap simbol menggambarkan proses tertentu. Sedangkan antara proses digambarkan dengan garis penghubung. Dengan menggunakan flowchart akan memudahkan kita untuk melakukan pengecekan bagian-bagian yang terlupakan dalam analisis masalah. Di samping itu flowchart juga berguna sebagai fasilitas untuk berkomunikasi antara pemrogram yang bekerja dalam tim suatu proyek.
28

Ada dua macam flowchart yang menggambarkan proses dengan komputer, yaitu: 1. Flowchart sistem yaitu bagan dengan simbolsimbol tertentu yang menggambarkan urutan prosedur dan proses suatu file dalam suatu media menjadi file di dalam media lain, dalam suatu sistem pengolahan data.

29

Beberapa contoh Flowchart sistem:

2. Flowchart program yaitu bagan dengan simbolsimbol tertentu yang menggambarkan urutan proses dan hubungan antar proses secara mendetail di dalam suatu program.
30

Kaidah-Kaidah Umum Pembuatan Flowchart Program

Dalam pembuatan flowchart Program tidak ada rumus atau patokan yang bersifat mutlak. Karena flowchart merupakan gambaran hasil pemikiran dalam menganalisis suatu masalah dengan komputer. Sehingga flowchart yang dihasilkan dapat bervariasi antara satu pemrogram dengan yang lainnya. Namun secara garis besar setiap pengolahan selalu terdiri atas 3 bagian utama, yaitu: Input, Proses pengolahan dan Output
31

Untuk pengolahan data dengan komputer, urutan dasar pemecahan suatu masalah: START, berisi pernyataan untuk persiapan peralatan yang diperlukan sebelum menangani pemecahan persoalan. READ, berisi pernyataan kegiatan untuk membaca data dari suatu peralatan input. PROSES, berisi kegiatan yang berkaitan dengan pemecahan persoalan sesuai dengan data yang dibaca. WRITE, berisi pernyataan untuk merekam hasil kegiatan ke peralatan output. END, mengakhiri kegiatan pengolahan.
32

Walaupun tidak ada kaidah-kaidah yang baku dalam penyusunan flowchart, namun ada beberapa anjuran: Hindari pengulangan proses yang tidak perlu dan logika yang berbelit sehingga jalannya proses menjadi singkat. Jalannya proses digambarkan dari atas ke bawah dan diberikan tanda panah untuk memperjelas. Sebuah flowchart diawali dari satu titik START dan diakhiri dengan END.
33

34

Jenis Penulisan Logika Pemrograman


Bahasa Pemrograman : bahasa buatan yang digunakan untuk menuliskan suatu program yang mengontrol kelakuan dari mesin, seperti komputer. Contoh : bahasa pemrograman PASCAL
1.
2. 3. 4. 5. 6. 7. 8. 9. 10. 11.

var
i,j: integer; begin for i:=1 to row do begin for j:=1 to col do begin if (i=j) then M[i,j] := 1 else M[i,j] := 0; end; end; end

12.
13. 14.

35

Tahapan dalam Pemrograman


1. Definisikan Masalah 2. Buat Algoritma dan Struktur Cara Penyelesaian 3. Menulis Program Program yang baik memiliki standar penilaian: a. Standar teknik pemecahan masalah - Teknik Top-Down Teknik pemecahan masalah yang paling umum digunakan. Prinsipnya adalah suatu masalah yang kompleks dibagibagi ke dalam beberapa kelompok masalah yang lebih kecil. Dari masalah yang kecil tersebut dilakukan analisis. Jika dimungkinkan maka masalah tersebut akan dipilah lagi menjadi subbagiansubbagian dan setelah itu mulai disusun langkah-langkah penyelesaian yang lebih detail.
36

Tahapan dalam Pemrograman..cont


- Teknik Bottom-Up Prinsip teknik bottom up adalah pemecahan masalah yang kompleks dilakukan dengan menggabungkan prosedurprosedur yang ada menjadi satu kesatuan program sebagai penyelesaian masalah tersebut. b. Standar penyusunan program - Kebenaran logika dan penulisan. - Waktu minimum untuk penulisan program. - Kecepatan maksimum eksekusi program. - Ekspresi penggunaan memori. - Kemudahan merawat dan mengembangkan program. - User Friendly. - Portability. 37 - Pemrograman modular.

Tahapan dalam Pemrograman..cont


4. Mencari Kesalahan a. Kesalahan sintaks (penulisan program). b. Kesalahan pelaksanaan: semantik, logika, dan ketelitian. 5. Uji dan Verifikasi Program 6. Dokumentasi Program 7. Pemeliharaan Program a. Memperbaiki kekurangan yang ditemukan kemudian. b. Memodifikasi, karena perubahan spesifikasi.
38

Jenis Penulisan Logika Pemrograman

Klasifikasi Algoritma : 1. Ditinjau dari Implementasi : Recursion or iteration: A recursive algorithm merupakan algoritma yang dapat memanggil dirinya sendiri sampai kondisi yang ditentukan dipenuhi, dikenal dengan functional programming Logical: suatu algoritma yang dapat dilihat sebagai deduksi lojik terkontrol. Serial atau parallel atau distributed: algoritma yang biasanya dieksekusi dengan asumsi satu instruksi pada suatu waktu. Deterministic or non-deterministic: algoritma deterministik menyelesaikan masalah dengan keputusan yang tepat pada setiap tahapannya, sedangkan algoritma non-deterministic menyelesaikan masalah dengan perkiraan. Exact atau approximate: mencari suatu perkiraan yang bisa menghampiri solusi yang benar. Biasa digunakan pada deterministik atau strategi random.

39

Jenis Penulisan Logika Pemrograman


2. 3.

Ditinjau dari Paradigma perancangan: Divide and conquer Dynamic programming The greedy method

Linear programming
Reduction. Search and enumeration The probabilistic and heuristic paradigm (Probabilistic algorithms, Genetic algorithms, Heuristic algorithms) Ditinjau dari Kajian Studi : search algorithms, sorting algorithms, merge algorithms, numerical algorithms, graph algorithms, string algorithms, computational geometric algorithms, combinatorial algorithms, machine learning, cryptography, data compression algorithms parsing techniques

40

Jenis Penulisan Logika Pemrograman


4.

Ditinjau dari Kompleksitas:


Algoritma efesien

5.

Ditinjau dari Computing Power :


polynomial time , primitive recursive functions

41

Tata Cara Penulisan Logika

Yang harus diingat dalam menuliskan logika adalah : Domain (masalah utama) yang ingin diselesaikan Keteraturan / susunan pernyataan logika yang mengarah pada penyelesaian masalah Penggunaan notasi / lambang / simbol yang digunakan dalam menterjemahkan suatu logika Contoh : Membuat Mie Rebus Masalah utama : Mie Rebus (hasil yang akan diperoleh) Susunan : 1. Ambil Mie 2. Nyalakan kompor 3. Ambil wadah dan isi air 4. Panaskan air hingga mendidih 5. Masukkan Mie kedalam wadah yang berisi air mendidih 6. Aduk hingga matang 7. Angkat dan sajikan Lambang bilangan 1 7 merupakan penggunaan lambang untuk langkah 42 yang dikerjakan.

Bahasa Pemrograman dan Tingkatan


1.

High-Level languages : menunjukan level abtraksi tertinggi dari bahasa mesin , bekerja dengan teknik usability, threads, locks, objects, variables, arrays dan aritmetik komplek atau ekspresi boolean. Low-Level Languages : menunjukkan bahasa yang dekat dengan hardware, dikenal dengan bahasa asembly.
Contoh : fib: mov edx, [esp+8+1] cmp edx, 0 ja @f mov eax, 0 ret

2.

@@:
cmp edx, 2 ja @f mov eax, 1
43

Bahasa Pemrograman dan Tingkatan


Pengertian level bukan menunjukan lebih tinggi tetapi menunjukkan kedalaman informasi tentang bagaimana komputer bekerja produktif dengan bahasa yang diberikan. Contoh Bahasa : High Level : PASCAL, C, DELPHI, JAVA, dll Low Level : Assembler, TASM, MASM, dll Model Eksekusi : Interpreted : Interpreted languages melakukan eksekusi dan pembacaan secar alangsung, dan tidak ada tahapan kompilasi. Compiled : menterjemahkan kedalam bentuk executable program sebelum di run. Terbagi atas : 1. Intermediate representations : ketika eksekusi dibuat terlebih dulu representasi program dalam bentuk bytecode, sehingga ketika kompilasi tidak membaca program sumber kembali 2. Machine code generation : mengkompilasi langusung menjadi bahasa mesin Translated : bahasa diterjemahkan kedalam low level programming sehingga eksekusi mengikuti aturan eksekusi bahasa mesin.
44

Bahasa Pemrograman dan Tingkatan


1. Array languages 2 Aspect-oriented languages 3 Assembly languages 4 Authoring languages 5 Command line interface languages 6 Compiled languages 7 Concurrent languages 8 Curly-bracket languages 9 Dataflow languages 10 Data-oriented languages

22 Logic-based languages 23 Machine languages 24 Macro languages 25 Metaprogramming languages 26 Multiparadigm languages 27 Numerical analysis 28 Non-English-based languages 29 Object-oriented class-based languages 29.1 Multiple dispatch 29.2 Single dispatch

11 Data-structured languages 12 Declarative languages 13 Esoteric languages 14 Extension languages 15 Fourth-generation languages 16 Functional languages 17 Interactive mode languages 18 Interpreted languages 19 Iterative languages 20 List-based languages LISPs
45

30 Object-oriented prototype-based languages 31 Off-side rule languages 32 Procedural languages 36 Stack-based languages 33 Reflective languages 37 Synchronous languages 34 Rule-based languages 38 Syntax handling languages 35 Scripting languages 39 Visual languages 40 Wirth languages 41 XML-based languages

Tipe Data dan Notasi Aritmetika (Kode AP1-2)

Tujuan Instuksional Umum


Mahasiswa mampu menyebutkan tipe data dan kegunaan notasi aritmatika

Tujuan Instruksional khusus :


Mengenal Tipe data ordinal dan tipe bentukan Mampu menyebutkan ranah tiap-tiap tipe ordinal dan tipe bentukan Mampu menggunakan tipe data untuk berbagai kasus Mengenal kegunaan notasi aritmetika dan cara menggunakannya

Durasi 60 Menit Tatap Muka Metode : Tutorial dan Diskusi


46

Tipe data ordinal dan tipe bentukan


Data ordinal : tipe data yang memiliki ranah yang dapat dihitung. Contoh : Integer : -32768 32767 Real : 2.9 x e -39 1.7 x 10 e 38 Char : char(0) char (255) Bolean : [ TRUE,FALSE] String : abc,456,10 Tipe bentukan : LIST Record (rekaman) STACK FILE TREE, dll Tipe Array Tipe Set (himpunan) memiliki batas bawah 0 dan batas atas 255 elemen

47

Operator

Operator Biner Aritmetik: Operator Operation + Addition * / div mod Subtraction Multiplication Division Integer division Remainder Operand types integer type real type integer type real type integer type real type integer type real type integer type integer type Result type integer type real type integer type real type integer type real type real type real type integer type integer type

48

Operator

String Operator Operator Operation Operand types + concatenation string type, Char type, or packed string type Result type string type

Set Operator Operator + * Operation Union Difference Intersection Operand types compatible set types compatible set types compatible set types

Hasil dari operasi set tergantung dari aturan logika set : An ordinal value C is in A + B only if C is in A or B. An ordinal value C is in A - B only if C is in A and not in B. An ordinal value C is in A * B only if C is in both A and B.

49

Operator

Boolean Operator
Operator not and or xor Operation negation logical and logical or logical xor Operand types Boolean Boolean Boolean Boolean Result type Boolean Boolean Boolean Boolean

Logical Operator
Operator not and or xor shl shr Operation Bitwise negation Bitwise and Bitwise or Bitwise xor Shift left Shift right Operand types integer type integer type integer type integer type integer type integer type Result type integer type integer type integer type integer type integer type integer type

50

Operator

Relational Operator
Operation Equal Not equal Less than Greater than Less or equal Greater or equal Subset of Superset of Member of Result type Boolean Boolean Boolean Boolean Boolean Boolean Boolean Boolean Boolean Operand types compatible simple, pointer, set, string, or packed string types compatible simple, pointer, set, string, or packed string types compatible simple, string, packed string types, or PChar compatible simple, string, packed string types, or PChar compatible simple, string, packed string types, or PChar compatible simple, string, or packed string types, or PChar compatible set types compatible set types left operand: any ordinal type T; right operand: set whose base is compatible with T.

Operator = <> < > <= >= <= >= in

51

Tipe Data Untuk Berbagai Kasus

Kasus 1 : Definisikan suatu tipe data untuk nilai-nilai berikut: 1. 0.9899 2. Saya Pergi ke ST-INTEN 3. 120000 4. 12 x 10 7 5. (Januari,, Desember) 6. X bernilai False, dan Y bernilai TRUE 7. Y = 10 Kasus 2 Gunakan operator yang sudah ada, berapakah hasilnya 1. 3+3= 2. saya + dia = 3. TRUE and False = 4. 7 div 3 = 5. 8 mod 3 =
52

Tipe Data Untuk Berbagai Kasus

Kasus 3: Berapa hasilnya X = (1,2,3,4,5,6) Y = (3,5,6,8) 1. X + Y = 2. X Y = 3. X * Y =


1. 2. 3. 4. 5.

Berapa hasilnya (TRUE / FALSE): A=A Aku = Aku 5 <> 7 4 >= 3 4 in [1,2,3,4]

53

You might also like