Algoritma dan Pemrograman I - WordPress.com

Algoritma dan Pemrograman I - WordPress.com

Algoritma dan Pemrograman I Agus Nursikuwagus Kode AP1-1 (Pengertian-Pengertian) Teknik Informatika Sekolah Tinggi Teknologi dan Sains Indonesia 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

2 Pengertian Algoritma dan Pemrograman Ilustrasi : Bagaimana caranya agar mobil dan pengemudi sampai di tujuan 3 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 ? 4 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 Hasil Algoritm a Diterjemahka n oleh bahasa pemrograma

n Contoh : PASCAL, C, DELPHI, dll Instruksi yang dikenal oleh komputer 8 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 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 Algoritmi calculation method Algorithm a sequence of finite instructions, often used for calculation and data processing 9 Jenis Penulisan Logika Pemrograman Natural : digunakan untuk membuat algoritma 1. Bahasa komplek atau algoritma teknik. Contoh : Buat kotak dengan sama sisi Tentukan sisi dengan ukuran yang sama panjang yang

2. 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 10 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. 11

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. var 2. i,j: integer; 3. 4. begin 5. for i:=1 to row do 6. begin 7. for j:=1 to col do 8. begin 9. if (i=j) then M[i,j] := 1 10. else 11.

M[i,j] := 0; 12. end; 13. end; 14. end 12 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. 13 2. Jenis Penulisan Logika Pemrograman 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) 3. 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 14 Jenis Penulisan Logika Pemrograman 4. Ditinjau dari Kompleksitas: Algoritma efesien 5. Ditinjau dari Computing Power : polynomial time , primitive recursive functions

15 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 yang dikerjakan. 16 Tata Cara Penulisan Logika Diskusi : Buat penyelesaikan masalah untuk Anda belajar AP1 di ST-INTEN Selesaikan dalam 10 Menit Penyelesaian : Domain : Susunan : 17 1. 2. Bahasa Pemrograman dan Tingkatan 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 @@: cmp edx, 2 ja @f mov eax, 1 18 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. 19 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 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 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 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 20 Tugas (Kode AP1-1) Tugas : Mencari definisi algoritma dan pemrograman dari berbagai referensi Mencari jenis bahasa pemrograman dan mengelompokan kedalam tingkatan bahasa pemrograman serta

menyebutkan kegunaannya Dikerjakan secara individu 21 Algoritma dan Pemrograman I Agus Nursikuwagus Kode AP1-2 (Tipe Data dan Notasi Aritmetika) Teknik Informatika Sekolah Tinggi Teknologi dan Sains Indonesia Tipe Data dan Notasi Aritmetika (Kode AP12) 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 23 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 24 Operator Operator Biner Aritmetik: Operator Operation + Addition * / div mod Operand types integer type real type Subtraction integer type real type

Multiplication integer type real type Division integer type real type Integer division integer type Remainder integer type Result type integer type real type integer type real type integer type real type real type real type integer type integer type 25 Operator

String Operator Operator Operation Operand types concatenatio string type, Char + n type, or packed string type Set Operator Operator + * Operation Union Difference Intersection Result type string type

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. 26 Operator Boolean Operator Operator not and or xor

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

Operation Operand types Bitwise negation integer type Bitwise and integer type Bitwise or integer type Bitwise xor integer type Shift left integer type Shift right integer type Result type integer type integer type integer type integer type integer type integer type 27 Operator

Relational Operator Operator = <> < > <= >= <= >= in Operation Result type Operand types compatible simple, pointer, set, string, or Equal Boolean packed string types compatible simple, pointer, set, string, or Not equal Boolean packed string types

compatible simple, string, packed string types, Less than Boolean or PChar Greater compatible simple, string, packed string types, than Boolean or PChar Less or compatible simple, string, packed string types, equal Boolean or PChar Greater or compatible simple, string, or packed string equal Boolean types, or PChar Subset of Boolean compatible set types Superset of Boolean compatible set types Member of Boolean left operand: any ordinal type T; right operand: set whose base is compatible

with T. 28 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 = 29

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 = Berapa hasilnya (TRUE / FALSE): 1. A = A 2. Aku = Aku 3. 5 <> 7 4. 4 >= 3 5. 4 in [1,2,3,4] 30 Tugas (Kode AP1-2) Tugas : Membuat contoh ranah tipe data minimal 50 buah. Dikerjakan kelompok

31

Recently Viewed Presentations

  • Introductory Paragraphs

    Introductory Paragraphs

    Imagine why someone might care about who/what killed Romeo & Juliet. Tie human experience into your introductory paragraph. For instance, we have all been teenagers, been in love, been heart broken, been forced to do something we don't want to...
  • Personality - Weebly

    Personality - Weebly

    Humanistic Theory of Personality Focuses on human potential for growth Basic Ideas Study healthy people, not "sick" people Self-concept: all our thoughts and feelings we have about ourselves Self-Acceptance Survey Ideal Self vs. Actual Self Spotlight Effect: overestimating how much...
  • 490MIC SCIENTIFIC COMMUNICATION Data Bases and Referencing Systems.

    490MIC SCIENTIFIC COMMUNICATION Data Bases and Referencing Systems.

    Harvard. came originally from "The Bluebook: A Uniform System of Citation" published by the Harvard Law Review Association. The Harvard style and its many variations are used in law, natural sciences, social and behavioural sciences, and medicine.
  • The Stranger: Themes - Humble Independent School District

    The Stranger: Themes - Humble Independent School District

    The Stranger: Themes Ms. Beard—English IV, AP The irrationality of the universe Though a work of fiction, the novel contains Camus's philosophical notion of absurdity. Camus asserts that individual lives and human existence in general have no rational meaning or...
  • Electronic structure - FIT

    Electronic structure - FIT

    Electronic structure Orbitals =shells=Energy levels The circles show energy levels - representing increasing distances from the nucleus. You could straighten the circles out and draw the electronic structure as a simple energy diagram Energy levels Energy levels Ground state The...
  • Integrating Climate Change Adaptation into Development ...

    Integrating Climate Change Adaptation into Development ...

    The map is developed as for each grid box and each time slice, each season, the minimum, maximum and median anomaly values are taken from across the ensemble of models. In each grid box, the central value gives the median...
  • Clean Slate Summary - Act 56 of 2018

    Clean Slate Summary - Act 56 of 2018

    Art. B offense (crimes of violence) Art. D offense (crimes against the family) Firearms. Sexual offense requiring registration/tiered sexual offense. Cruelty to animals & corruption of minors. Attempt, conspiracy, solicitation to commit any of the above.
  • Study of Cost Containment Models and Recommendations for

    Study of Cost Containment Models and Recommendations for

    Online learning modules. Offers CME and CE Credits. Well-received by providers seeking enhanced PCMH payments from CCO and commercial payers. The Oregon Health Care Quality Corporation (Q Corp) is an independent, nonprofit organization dedicated to improving the quality and affordability...