FIL PENGANTAR ILMU KOMPUTER PEMROGRAMAN & ALGORITMA

dokumen-dokumen yang mirip
Pengenalan Algoritma

Pengenalan Komputer & Pemrograman

Pertemuan 01. Pemrograman Dasar [PTI-5001 ] 2012

Pemrograman Dasar P E N G A N T A R A L G O R I T M A

DASAR PEMROGRAMAN & ALGORITMA

Pemodelan Komputer Sederhana

Pemrograman Dasar. Pengantar Algoritma. Sutrisno Chandra Dewi Marji Ismiarta Aknuranda Issa Arwani A. Afif Supianto PTIIK- UB

Pertemuan 01. Pemrograman Dasar

PENDAHULUAN PEMROGRAMAN KOMPUTER. Mengapa Belajar Pemrograman Komputer?

Implementasi OOP Pada Perangkat Lunak Pemrograman

Komputer memiliki dua komponen utama. Yang pertama adalah hardware (perangkat keras) yang tersusun atas komponen elektronik dan mekanik.

Bahasa Pemograman Modul XI

A. Pemahaman Awal. Oleh : Fiftin Noviyanto

PENGANTAR ALGORITMA PEMROGRAMAN

OPERASI DASAR KOMPUTER dan PERANGKAT LUNAK DALAM SISTEM INFORMASI

Mengapa Belajar Pemrograman Komputer?

PENGENALAN KOMPUTER. Sistem Komputer. Dian Palupi Rini, M.Kom

BAB 2 LANDASAN TEORI

APLIKASI KOMPUTER- Perangkat Lunak Komputer

Teori Algoritma. 1Universitas Gunadarma

A. Pemahaman Awal. Hardware dan Software(1) Ada beberapa perangkat utama di komputer 20/01/2012

Pengenalan JAVA PEMROGRAMAN DASAR. Dr. Eng. Herman Tolle, ST., MT. Sistem Informasi PTIIK UB Semester Ganjil 2013/2014

Algoritma dan Struktur Data

Tujuan. Pengenalan. Pengenalan Pemrograman Komputer. Komponen Dasar pada Komputer : Hardware. Komponen Dasar pada Komputer : Hardware

BAB 2 LANDASAN TEORI. yang saling berinteraksi untuk mencapai tujuan. yang dimaksud dengan data dan informasi? Data adalah fakta fakta yang

Pengenalan Algoritma

BAB I TINJAUAN UMUM SISTEM OPERASI

PENGENALAN DASAR PEMROGRAMAN

Materi Pelajaran : Algoritma Pemrograman. Siswa memahami tentang dasar dasar Algoritma Pemrograman

Pengenalan Pemrograman Komputer (Software)

Algoritma Pemrograman 2C

IT234 ALGORITMA DAN STRUKTUR DATA

BAB II TINJAUAN PUSTAKA

Gambar 1. Blok Utama Komputer

Latihan Soal. Teknik Pemrograman

Gb 1.1 Perangkat Sistem Komputer

MATERI : Minggu 2 SISTEM KOMPUTER

BAB 2 LANDASAN TEORI. Istilah komputer (computer) berasal dari bahasa latin computere yang berarti

Algoritma dan Struktur Data

BAB 2 TINJAUAN TEORITIS. Sistem berasal dari bahasa Yunani yaitu Systema, yang artinya sekumpulan objek

Pengantar Teknologi Sistem Informasi C

BAB 2 LANDASAN TEORI. Perangkat lunak adalah perintah ( program komputer ) yang bila dieksekusi

Tabel 1. Instruksi untuk menampilkan teks No. Bahasa Pemrograman Instruksi 1. Pascal WRITE ( Bahasa pemrograman itu mudah );

BAHASA PEMROGRAMAN. Merupakan prosedur/tata cara penulisan program.

MODUL II SISTEM WINDOWS XP DAN SISTEM KEAMANAN KOMPUTER

intruksi kepada CPU untuk mengakses sistem operasi. BIOS tersimpan pada Read Only

Sistem Teknologi Informasi. Website Faperta: Materi Kuliah:

Algoritma Pemrograman I

INTRODUCTION JAVA NORHIKMAH,M.KOM

1. Algoritma & Pemrograman

TEKNOLOGI PERANGKAT LUNAK KOMPUTER

BAB 2 LANDASAN TEORI

Pemrograman Dasar P E M R O G R A M A N T E R S T R U K T U R I N P U T / O U T P U T

BAB 1 PENDAHULUAN Pengantar

JENIS PERANGKAT LUNAK

Pengantar Sistem Komputer & Algoritma

Zaenal Abidin, S.Si., M.Cs. Riza Arifudin, S.Pd., M.Cs.

Pengenalan Program Java

Pengantar Teknologi Informasi. Software Komputer

PETUNJUK PENGERJAAN SOAL ULUM TIK

Modul Pengantar Aplikasi Komputer (PAK 240) Prodi S1 P.Akuntansi UNY Pengampu : Annisa Ratna Sari, S.Pd PENGENALAN KOMPUTER

Review C/C++ & Intro to Java. Pemrograman Berorientasi Obyek IT209

Sistem Perangkat Lunak

MATERI II KOMPUTER (SOFTWARE)

BAB 2 LANDASAN TEORI. Data adalah fakta atau bagian dari fakta yang digambarkan dengan simbol-simbol,

Fungsi Bahasa pemrograman adalah sebagai media untuk menyusun dan memahami serta sebagai alat komunikasi antara pemrogram dengan computer.

Modul Praktikum 1 Pemograman Berorientasi Objek

Sekilas Tentang Komputer dan Microsoft word Rauf Fauzan S.Kom

IKG2I4 / Software Project I

PENGENALAN TEKNOLOGI KOMPUTER

Programming Language Bahasa Pemrograman

TIK Ole Ol h: Oktapiyanti

Kualitas bahasa pemrograman: Ekspresivitas : secara jelas menggambarkan algoritma yang dibuat oleh programmer

Pengenalan Algoritma & Pemrograman

Perangkat Keras (Hardware) Komputer dan Fungsinya. Didiek Prasetya M.sn

Tahap pengembangan program

BAB 2 LANDASAN TEORI. Istilah komputer ( computer ) berasal dari bahasa latin computere yang berarti

Media Pembelajaran Bahasa Pemrograman C++...(Luh Joni Erawati Dewi)

SUMBER BELAJAR PENUNJANG PLPG

Bab 1 : Pengenalan dan Pengantar Algoritma

BAB I PENGANTAR ALGORITMA

BAB III PEMROGRAMAN PADA SOFTWARE MICROSOFT VISUAL BASIC dan data-data yang saling terelasi yang memerintahkan apa yang harus

Bab I Pengantar Algorithma & Pemrograman

Komputer bekerja atas dasar instruksi. Orang atau ahli pembuat program ini disebut sebagai programmer.

BAB 2 LANDASAN TEORI

PSEUDOCODE TIPE DATA, VARIABEL, DAN OPERATOR

Pengantar Sistem Komputer

Pendahuluan. Algoritma

Pengenalan Bahasa C++, Algoritma Pemrograman, Integrated Development Equipment (IDE) Visual C++ dan Dasar Dasar Bahasa C++

Pertemuan Ke 2 Arsitek tur Dasar Komputer

BAB 4 IMPLEMENTASI DAN TAMPILAN LAYAR

1: Pengertian Dasar Logika dan Algoritma STRUKTUR DASAR. Oleh: Imana Malia kondou, S.T.

Program. Instruksi-instruksi yang diberikan kepada komputer agar dapat melaksanakan tugas-tugas tertentu

Findra Kartika Sari Dewi

KOMPONEN SISTEM KOMPUTER HARDWARE & SOFTWARE

BAB 2 LANDASAN TEORI. pengumpulan data Tugas Akhir di SMA N 5 Medan. disebut dengan informasi. (Bambang Wahyudi,2003)

BAB 2 LANDASAN TEORI

05/10/2010 PENGENALAN TEKNOLOGI INFORMASI SOFTWARE FUNDAMENTALS. Materi 4: Perkembangan perangkat lunak CHAPTER PREVIEW

ALGORITMA DAN PEMROGRAMAN #2

Bahasa Pemrograman dan Flowchart. Adri Priadana

Transkripsi:

FIL-150013 PENGANTAR ILMU KOMPUTER PEMROGRAMAN & ALGORITMA Dr. Eng., Herman Tolle, ST., MT.

OUTLINE Filosofi Pemrograman Konsep Pemrograman Konsep Algoritma

PROGRAMMING PHILOSOPHY

Definisi Programming: The action or process of writing computer programs Kegiatan atau proses menulis program komputer Programmer: a person who writes computer program Orang yang menulis program komputer

Everybody should learn how to program a computer because it teaches you how to think. - Steve Jobs

A Programmer compared to other profession Manakah profesi yang posisi pekerjaannya setara dengan programmer?

Programmer is Creator (Pencipta) & Developer (Pembangun) Disain Program (Algoritma) Chef / Koki (kreasi / imaginasi) Designer Pakaian Sutradara Film Arsitek / Perancang Bangunan Pelukis (imaginasi) Membuat Code Program (Coding) Chef / Koki (teknik membuat makanan) Kuli bangunan Tukang Kayu Tukang jahit Pelukis (teknik melukis) Kuliah Pemrograman Dasar mengajari [1] bagaimana persoalan sederhana diselesaikan dengan algoritma komputer (membuat algoritma), dan [2] bagaimana menterjemahkan algorima tersebut menjadi program komputer (membuat kode program)

Perbandingan Chef dengan Programmer Chef Memiliki dasar pengetahuan dan teknik pengolahan masakan Bekerja mengikuti resep masakan Apa beda masterchef dengan normal chef? Menyajikan dengan style Modifikasi resep Bekerja efisien Programmer Memiliki dasar pengetahuan dan teknik pemrograman (Sense of Programming Bekerja mengikuti Algoritma / Flowchart Good programmer? Menyajikan dengan style Algoritma yang efektif Bekerja efisien

Be a good programmer! Algoritma yang efektif dan efisien Bekerja dengan efisien Menyajikan dengan style PROGRAMMING is FUN

KONSEP PEMROGRAMAN

Komponen Komputer Perangkat keras: perangkat komputer yang dapat disentuh secara fisik Hardware Perangkat lunak: program yang berisikan perintah-perintah yang menentukan operasi yang dilakukan oleh komputer Software Pengguna (user): orang yang menggunakan komputer Brainware User, Operator, Programmer, Developer

COMPUTER TO COMPUTE + ER (Menghitung/Mengolah bilangan) (Mengolah Data) Data yg Diolah (Masukan/Input) PUSAT PENGOLAH DATA (berbasis Arithmatika dan Logika) Data hasil pengolahan (Keluaran/Output) Penyimpanan Data 13

Perangkat Keras Perangkat Input: keyboard, mouse, scanner Perangkat Pemroses: mainboard, prosesor Perangkat Penyimpan Data: memori, hard disk, flash disk Perangkat Output: monitor, printer, speaker Perangkat Penunjang: berbagai card (VGA card, sound card, LAN card, TV card).

Rerangkat Lunak Perangkat keras tidak bisa bekerja tanpa perintah yang dikendalikan oleh perangkat lunak yang ditulis / dibuat oleh manusia 3 jenis Perangkat lunak: Sistem Operasi, Program Aplikasi, dan Bahasa Pemograman

Sistem Operasi Untuk membantu agar komputer dapat digunakan setiap orang (meski dia tidak tahu cara kerja perangkat keras) maka dibuatlah sebuah sistem operasi Contoh : Windows, Unix, Linux, FreeBSD, Solaris, Macintosh, dll Sistem operasi berguna untuk mengatur seluruh operasi dan sumber daya perangkat keras komputer Sistem operasi ditulis oleh pabrik software sehingga mudah digunakan oleh orang yang tidak mengerti komputer secara rinci, jadi berfungsi sebagai antarmuka (interface) mesin-manusia Misalnya: kita bisa menggunakan perintah print pada komputer untuk mencetak tanpa harus tahu bagaimana komputer dan printer bekerja

Program Aplikasi Program Aplikasi adalah program komputer yang ditulis untuk dapat menyelesaikan permasalahan atau pekerjaan tertentu Dapat dibeli (sudah dibuatkan oleh orang lain / software) atau dibuat sendiri menggunakan bahasa pemograman Dibuat oleh programmer menggunakan bahasa pemograman Misalnya Ms Word untuk olah dokumen, Ms Excel untuk olah tabel spreedsheet, Ms Powerpoint untuk presentasi, game, pengolah grafis untuk edit gambar, multimedia player, dll

Jenis Program Aplikasi Aplikasi Office: MS Word, MS PowerPoint, MS Excel Pengolah Grafis: Adobe Photoshop, Corel Draw Pengolah Video: Adobe Premiere Utility: Data Recovery, Internet Browser Game, Multimedia Player, dll

BAHASA PEMOGRAMAN

Bahasa Pemograman Bahasa pemograman adalah program komputer yang berguna untuk memberikan perintah kepada komputer untuk menyelesaikan permasalahan tertentu atau menghasilkan program aplikasi tertentu (program aplikasi, sistem operasi, dll) Bahasa Pemrograman mempermudah manusia (programmer) untuk berinteraksi dan menggunakan sumber daya yang ada pada sebuah mesin komputer

Bahasa Pemrograman Bahasa komunikasi manusia dengan komputer untuk memberikan instruksi kepada komputer Low Level Programming Language dekat ke Bahasa mesin (01) Bahasa Mesin Bahasa Assembly High Level Programming Language dekat ke Bahasa manusia

Tingkatan Bahasa Pemrograman Bahasa Mesin Low Level Language (Mnemonic, Assembler) Middle Level Language High Level (3 rd Generation) Language Generasi ke 4 GUI based Programming (drag and drop) Generasi ke-5 Agile Programming

Bahasa Mesin Pada prinsipnya komputer (CPU) bekerja atas perintah dalam bentuk sinyal bit positif (1) dan sinyal bit negatif (0) Perintah dalam bentuk kombinasi biner (bit 1 dan bit 0) sedemikian sehingga komputer dapat bereaksi sesuai perintah tersebut, misal: 01100101100110 Kombinasi bit 0 dan 1 sangat sulit untuk diingat manusia

Low Level Programming Language Bahasa Mesin 8B542408 83FA0077 06B80000 0000C383 FA027706 B8010000 00C353BB 01000000 B9010000 008D0419 83FA0376 078BD98B C84AEBF1 5BC3 Assembly fib: mov edx, [esp+8] cmp edx, 0 ja @f mov eax, 0 ret @@: cmp edx, 2 ja @f mov eax, 1 ret @@: push ebx mov ebx, 1 mov ecx, 1

High Level Programming Language Mendekati bahasa manusia (natural language) Menggunakan istilah-istilah dalam bahasa Inggris dan notasi matematis umum Third-generation programming language (Fortran, ALGOL, and COBOL) Pemrograman Terstruktur. General-purpose languages C, C++, C#, Java, BASIC and Pascal

Bahasa Tingkat Tinggi Satu pernyataan menyelesaikan tugas-tugas substantial Program compiler mengkonversi ke bahasa mesin (seluruh kode program) Program interpreter mengeksekusi perintah satu persatu dalam bahasa tingkat tinggi secara langsung

Paradigma Pemrograman Pemrograman Terstruktur / Sequiensial diajarkan di MK Pemrograman Dasar Pemrograman Berorientasi Objek (OOP) Pemrograman Lanjut Pemrograman Berbasis Kejadian (Event Based Programming) Pemrograman Visual / Window / GUI Pemrograman Platform Khusus (Semester 5)

Object Oriented Programming Pemrograman Berorientasi Objek C++, Java and C# Memodelkan kode program komputer dari perspektif bagaimana manusia memandang sesuatu sebagai sebuah objek Object-Class-Attribute-Behaviour

Jenis Program berdasarkan Output Console Console with GUI Desktop / Windows / GUI Web Mobile Wearable

Console Programming Input & Output program pada layar console Command line Instruction (CLI)

Desktop / Windows / GUI Paradigma Pemrograman: Event-Based Programming

Programming Lainnya Pemrograman Windows: Visual Basic, Delphi, Visual Studio Pemrograman Web: Markup Language (HTML style) Script style (Javascript, AJAX) Server Programming (CGI, PHP, ASP, Ruby, Phyton) Pemrograman Embedded Pemrograman Game Pemrograman Enterprise Pemrograman Mobile: Android, Symbian, Objective-C

TOP LANGUAGE 2016

Profesi Programmer Desktop Application Programmer Software Programmer / Developer Web Programmer / Developer Mobile Apps Programmer / Developer Embedded System Programmer Scientist / Researcher Network Administrator Database Apps Developer Etc..

ALGORITMA PEMROGRAMAN

Algoritma adalah sekumpulan langkah-langkah terbatas untuk mencari solusi suatu masalah. Berasal dari kata algoris dan ritmis. Awalnya diungkapkan oleh Al Khowarizmi. Di pemrograman, algoritma didefinisikan sebagai metode yang terdiri dari langkah-langkah terstuktur untuk mencari solusi suatu masalah dengan bantuan komputer. Belajar Algoritma adalah belajar bagaimana suatu persoalan diselesaikan dengan langkah-langkah berurut 39

MASALAH / IDEA PEMECAHAN SOLUSI / HASIL Algoritma Source Code Executable Code

DEFINISI MASALAH MEMBUAT MODEL RANCANG ALGORITMA TULIS PROGRAM COMPILE Y Y Sintak Err T Executable code: => Run Output Err T DOKUMEN TASI 42

Kasus: Akar Persamaan Kuadrat PENYELESAIAN SECARA MATEMATIS Persamaan Kuadrat: ax 2 + bx + c = 0 Contoh: X 2 + 5X + 6 = 0 (X+x1)(X+x2) = 0; x1, x2 =? Solusi: X 2 + 5X + 6 = 0 a = 1, b = 5, c = 6 x1 = (-b + (b 2 4.a.c)) / 2.a = (-5 + 5 2 4.1.6) / 2 = (-5 + (25-26)) / 2 = (-5 + 1 ) / 2 = -4 / 2 = -2 x2 = (-b - (b 2 4.a.c)) / 2.a = (-5-5 2 4.1.6) / 2 = = (-5-1 ) / 2 = -6 / 2 = - 3 Akar dari X 2 + 5X + 6 = 0 adalah (X+2)(X+3) = 0; x1 = -2, x2 = -3

Kasus: Akar Persamaan Kuadrat PENYELESAIAN DENGAN KOMPUTER Membuat sebuah program komputer yang dapat menghitung secara otomatis akar dari suatu persamaan kuadrat, dimana pengguna hanya menginputkan nilai (a, b, c) dari bentuk persamaan kuadratnya. Program komputer adalah bersifat generic dan umum, dibuat untuk menyelesaikan semua kasus persamaan kuadrat dengan nilai a, b, c apapun yang memenuhi ax 2 + bx + c = 0 Programmer memberikan perintah dalam bentuk urutan-urutan langkah yang harus dikerjakan oleh komputer, perintah-perintah tersebut dalam bentuk Kode Program Sekali komputer telah diprogram, maka proses tsb dapat dikerjakan sendiri oleh komputer

Kasus: Akar Persamaan Kuadrat PENYELESAIAN DENGAN KOMPUTER Langkah-langkah yang dilakukan Programmer: 1. Membuat Pemodelan Matematis 2. Membuat Algoritma, urutan langkah penyelesaian 3. Membuat Kode Program 4. Menjalankan / Menguji Program 5. Mendokumentasikan Program jika sudah berhasil

Kasus: Akar Persamaan Kuadrat PENYELESAIAN DENGAN KOMPUTER Langkah 1: Pemodelan Matematis Persamaan Kuadrat: ax 2 + bx + c = 0 Langkah Penyelesaian: 1. Tentukan Output: Output: x1, x2 2. Buat Proses untuk menghitung output dengan menggunakan nilai-nilai yang sudah diketahui (input) Proses: x1 = (-b + (b 2 4.a.c)) / 2.a x2 = (-b - (b 2 4.a.c)) / 2.a Pastikan bahwa semua nilai yang ada pada bagian sebelah kanan dari tanda = (sama dengan) telah diketahui nilainya. 3. Tentukan Input: Input: a, b, c?

Kasus: Akar Persamaan Kuadrat PENYELESAIAN DENGAN KOMPUTER Langkah 2 Membuat Algoritma Persamaan Kuadrat: ax 2 + bx + c = 0 Langkah Penyelesaian: 1. Input: a, b, c? 2. Proses: x1 = (-b + (b 2 4.a.c)) / 2.a x2 = (-b - (b 2 4.a.c)) / 2.a 3. Output: x1, x2 Algoritma secara umum harus dalam urutan IPO INPUT-PROSES-OUTPUT Ingat Algoritma Membuat Kopi! Mulai Algoritma Persamaan Kuadrat Input a? Input b? Input c? x1 = (-b + (b 2 4.a.c)) / 2.a x2 = (-b - (b 2 4.a.c)) / 2.a Cetak hasil x1 Cetak hasil x2 Selesai

Kasus: Akar Persamaan Kuadrat PENYELESAIAN DENGAN KOMPUTER Langkah 3 Membuat Program Komputer class PersamaanKuadrat { public static void main (String arg[]) { System.out.print( Nilai A? ); int A = input.nextint(); System.out.print( Nilai B? ); int B = input.nextint(); System.out.print( Nilai C? ); int C = input.nextint(); double X1, X2; X1 = (-B + Math.sqrt(B*B-4*A*C))/(2*A); X2 = (-B - Math.sqrt(B*B-4*A*C))/(2*A); System.out.println( X1 = + X1); System.out.println( X2 = + X2); }} Algoritma Persamaan Kuadrat Mulai Input a? Input b? Input c? x1 = (-b + (b 2 4.a.c))/ 2.a x2 = (-b - (b 2 4.a.c))/ 2.a Cetak hasil x1 Cetak hasil x2 Selesai

Kasus: Akar Persamaan Kuadrat PENYELESAIAN DENGAN KOMPUTER Langkah 4 Menjalankan Program Komputer class PersamaanKuadrat { public static void main (String arg[]) { System.out.print( Nilai A? ); int A = input.nextint(); System.out.print( Nilai B? ); int B = input.nextint(); System.out.print( Nilai C? ); int C = input.nextint(); double X1, X2; X1 = (-B + Math.sqrt(B*B-4*A*C))/(2*A); X2 = (-B - Math.sqrt(B*B-4*A*C))/(2*A); System.out.println( X1 = + X1); System.out.println( X2 = + X2); }}

DEFINISI MASALAH MEMBUAT MODEL RANCANG ALGORITMA TULIS PROGRAM COMPILE Masalah: Tentukan akar-akar dari suatu persamaan kwadrat. Definisi: Persamaan kwadrat : ax^2 + bx + c = 0 Data yg diperlukan : Nilai dari a, b dan c : tipe real Sintak Err Executable code: => Run Output Err DOKUMEN TASI 50

DEFINISI MASALAH MEMBUAT MODEL RANCANG ALGORITMA TULIS PROGRAM COMPILE Model Matematika : Sintak Err Rumus ABC x1 = (-b + sqrt(b^2-4ac))/2a x2 = (-b sqrt(b^2-4ac))/2a Executable code: => Run Output Err DOKUMEN TASI 51

DEFINISI MASALAH MEMBUAT MODEL RANCANG ALGORITMA TULIS PROGRAM Start COMPILE Masukkan a,b,c d = b^2 4ac Sintak Err d < 0 T x1=(-b+sqrt(d))/2a x2 =(-b-sqrt(d))/2a Y Cetak: Akar majiner Executable code: => Run Output Err Cetak: x1, x2 Stop DOKUMEN TASI 52

DEFINISI MASALAH MEMBUAT MODEL RANCANG ALGORITMA TULIS PROGRAM COMPILE Sintak Err Executable code: => Run Output Err DOKUMEN TASI 53

DEFINISI MASALAH MEMBUAT MODEL RANCANG ALGORITMA TULIS PROGRAM COMPILE Sintak Err Executable code: => Run Output Err DOKUMEN TASI 54

DEFINISI MASALAH MEMBUAT MODEL RANCANG ALGORITMA TULIS PROGRAM COMPILE Sintak Err Executable code: => Run Output Err DOKUMEN TASI 55

DEFINISI MASALAH MEMBUAT MODEL RANCANG ALGORITMA TULIS PROGRAM COMPILE Sintak Err Executable code: => Run Output Err DOKUMEN TASI 56

DEFINISI MASALAH MEMBUAT MODEL RANCANG ALGORITMA TULIS PROGRAM COMPILE Sintak Err Executable code: => Run Output Err DOKUMEN TASI 57

DEFINISI MASALAH MEMBUAT MODEL RANCANG ALGORITMA TULIS PROGRAM COMPILE Sintak Err Executable code: => Run Output Err DOKUMEN TASI 58

Tujuh operasi dasar komputer: 1. Membaca data (Input) 2. Menampilkan data (Output) 3. Melakukan perhitungan aritmetika (Compute) 4. Memberikan nilai ke suatu identifier (Store) 5. Membandingkan dan Memilih (Compare / Selection) 6. Melakukan pengulangan (Loop / Repetition ) 7. Menyimpan data dalam variabel larik (Array) 8. Mengerjakan Fungsi atau Tugas tertentu (Function / Method) 59

Algoritma bisa dibuat dengan: Teknik Tulisan seperti : Structure english dan Pseudocode. Teknik Visual seperti : Flow chart. 60

Outline dari sebuah program komputer Ditulis dalam bahasa Inggris atau Indonesia sederhana Kata kunci (keyword) digunakan untuk menjelaskan struktur kendali (misalnya: jika, ulangi, sampai, if, repeat, until ) 61

Algoritma Menggunakan Kalkulator Mulai Nyalakan kalkulator Kosongkan Kalkulator Ulangi Input harga Tekan tombol Plus (+) Sampai semua harga diinput Tampilkan total harga Matikan kalkulator Selesai 62

Terminator Proses Arah Konektor Input/Output Dokumen Pemilihan Konektor antar halaman Pemanggilan Procedure Pengulangan 63

Start Masukkan a,b,c d = b^2 4ac d < 0 T x1=(-b+sqrt(d))/2a x2 =(-b-sqrt(d))/2a Y Cetak Pesan Akar imajiner Cetak x1,x2 Stop 64

1. Mempunyai logika yang tepat untuk memecahkan masalah. 2. Menghasilkan output yang benar dalam waktu yang singkat. 3. Ditulis dengan bahasa baku terstruktur sehingga tidak menimbulkan arti ganda. 4. Ditulis dengan format baku sehingga mudah diimplementasikan kedalam bahasa pemrograman. 5. Semua operasi didefinisikan dengan jelas dan berakhir sesudah sejumlah langkah. 66

Pemrograman terstruktur merupakan pola penyusunan program komputer hanya dengan menggunakan tiga struktur kontrol yaitu: 1. Sequence 2. Selection 3. Repetition 67

Sequence merupakan urutan pengerjaan dari perintah/statement pertama sampai dengan perintah/statement terakhir. Umumnya bahasa pemrograman mempunyai sequence (urutan pengerjaan dari perintah / statement ) mulai dari atas ke bawah dan dari kiri ke kanan. Top-down dari atas ke bawah - mengalir 68

Contoh: Cetak Jumlah Mahasiswa Set Jumlah to 49 Cetak Tambahan mahasiswa baru Baca mhs_baru Jumlah = Jumlah + mhs_baru Cetak Jumlah Mahasiswa Cetak jumlah Penjelasan Urutan pengerjaan adalah mulai dari urutan pertama sampai dengan urutan terakhir, jika mhs_baru diisi dengan 2, maka jumlah yang tercetak adalah 51 69

Struktur Kontrol Selection adalah penggambaran sebuah kondisi dan pilihan diantara dua aksi. Statement Pertama akan dikerjakan jika kondisi bernilai benar, jika tidak maka akan mengerjakan perintah setelah keyword else (jika ada). 70

Contoh Selection Contoh : IF Hari=1 THEN Cetak Senin ELSE Cetak Bukan hari Senin ENDIF Penjelasan Tulisan Senin akan ditampilkan jika Hari bernilai 1, jika tidak maka tulisan Bukan hari Senin yang akan ditampilkan 71

Beberapa statement / perintah dapat diulang dengan menggunakan struktur kontrol repetition. Statement / perintah akan tetap diulang selama kondisi perulangan memenuhi (jika menggunakan DOWHILE ENDDO) 72

Contoh Repetition Contoh: Bintang = 0 DOWHILE bintang < 5 Cetak bintang bintang = bintang + 1 ENDDO Penjelasan: Pertama kali bintang akan diisi dengan 0, setelah itu isi dari bintang akan dicetak sebanyak lima kali, sehingga tampilannya akan sebagai berikut: 0 1 2 3 4 73

ALGORITMA Berbagai algoritma kemudian diciptakan untuk menyelesaikan berbagai persoalan komputasi, misalnya: Algoritma mengurutkan data (Sorting) Algoritma mencari data (Searching) Algoritma mengenali sesuatu (Pattern Recognition) Mengelompokkan dalam kelas tertentu (Klasifikasi) Mengelompokkan dalam cluster tertentu (Klastering) Algoritma Mencari Jarak Terdekat (Graph) Belajar secara visual: visualgo.net

BE A GOOD PROGRAMMER! Algoritma yang efektif dan efisien Bekerja dengan efisien Menyajikan dengan style PROGRAMMING is FUN

CODE WITH STYLE

Gunakan komentar (comments) pada setiap file yang dibuat /* ================================= Nama File Versi : 1.1 Fungsi : Perkalian.java : Untuk menghitung Perkalian Programmer : Nama (NIM) (Kelas) Last Update : 2-Maret-2016 Update : - V1.0 Membuat class perkalian - V1.1 merubah nama variabel ==================================== */ 77

Gunakan komentar (comments) pada bagian tertentu dari baris program yang dianggap perlu // fungsi untuk menghitung luas lingkaran public int LuasLingkaran(int R) // R variabel input { return pi * R * R; } 78

Gunakan nama identifier (nama kelas, nama variabel, nama method) dengan nama yang mempunyai makna dan kontekstual (sesuai dengan kegunaannya) int Panjang; double LuasLingkaran; void CetakInfo(); class ContohMobilBeraksi 79

Simpan setiap file dalam folder yang mudah ditelusuri, diingat nama dan lokasinya Perbanyak latihan soal, RUN -> lihat apa yang terjadi, dan pelajari bagaimana cara kerja contoh kode tersebut Catat kejadian khusus yg belum bisa ditemukan solusinya, cari jawaban melalui internet atau tanya ke senior, asisten atau dosen 80

PENUTUP Belajar pemrogaraman (dasar) adalah belajar logika bagaimana suatu persoalan dapat diselesaikan dengan perintah-perintah program komputer yang terstruktur Kuasai konsep dan logika pemrograman, kuasai 1 Bahasa pemrograman belajar Bahasa Pemrograman apapun akan menjadi mudah Investasikan waktu untuk terus belajar berbagai kasus algortima pemrograman Practise, Practise, Practise Pengetahuan dan Ketrampilan Pemrograman adalah landasan utama bagi bidang-bidang IT lainnya

ANY QUESTIONS?