Anda di halaman 1dari 26

Minggu Pertama

Pendahuluan
Dosen Pengampu : Nama : Muhammad Qurhanul Rizqie, S.Kom, M.T. Kontak : 081373433265 Riset :

Pengolahan Citra, Computer Vision, Biomedical Engineering.

Pendahuluan
Komponen Penilaian Tugas : 15% Quiz : 25% UTS : 30% UAS : 30%

Tujuan
Mahasiswa memahami paradigma pemrograman dan

struktur data Mahasiswa mampu menganalisa dan menyelesaikan persoalan persoalan ilmiah dengan langkah langkah algoritma yang efektif dan efisien Mahasiswa mampu mewujudkan solusi pemecahan masalah tersebut dalam suatu bentuk sistem perangkat lunak

Muhammad Qurhanul Rizqie, S.Kom, M.T.

Algoritma
An algorithm is a general method for solving problems

of a certain kind. (K.Mehlhorn, and P.Sanders : 2008). Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis (Rinaldi Munir : 2002). A set of rules for solving a problem in a finite number of steps (English Dictionary). Algoritma adalah urutan logis pengambilan keputusan untuk pemecahan masalah (KBBI : 1988).

Syarat Algoritma
Tepat.
Konkrit (Dapat dilakukan). Tidak Ambigu.

Terbatas.
Runut.

Contoh Kasus
Memindahkan Air.
Mengambil uang dari ATM. Menentukan bilangan genap atau ganjil.

Menghitung faktorial.
Menyelesaikan suatu persamaan linier.

Representasi
Flowchart : Representasi berupa grafik dan simbol simbol tertentu. Pseudocode : Representasi berupa suatu bahasa informal yang memiliki struktur seperti bahasa pemrograman. Pseudocode is abstraction and simplification of imperative programming languange (K.Mehlhorn, and P.Sanders : 2008).

Simbol Flowchart

Contoh Flowchart
Menghitung faktorial

Aturan Penulisan Pseudocode


Fokus pada logika algoritma, bukan detail bahasa

pemrograman. Lengkap, menjelaskan logika algoritma secara detail. Mudah dibaca dan dipahami.

Contoh Pseudocode
Menentukan bilangan genap atau ganjil
Pascal C/C++

procedure genapganjil void function genapganjil for i := 1 to 10 do for (i = 1; i<=100; i++) { print i; print i; if i is divisible by 2 then if i is divisible by 2 print Genap"; print Genap"; else then else print Ganjil; print Ganjil"; print a newline; print a newline; end }

Quiz
Buatlah satu algoritma pemecahan masalah

sederhana, dan representasikan dalam flowchart dan pseudocode.

Pemrograman
Menginstruksikan komputer untuk melakukan suatu

tugas tertentu. Berdasarkan langkah langkah runut pemecahan masalah. Algoritma Pemrograman

Langkah Pemrograman
Mendefinisikan masalah
Mencari solusi Membuat algoritma

Menulis kode program


Testing Dokumentasi Maintenance

Bahasa Pemrograman
A programming language is a notation for writing

programs. (Anthony Aaby : 2004) Bahasa formal yang di-design untuk menyampaikan instruksi dari manusia ke komputer. Bahasa Pemrograman Compiler Executable

Beberapa Bahasa Pemrograman


Assembler
C/C++ Pascal

Basic
C# JAVA Ruby Phyton PHP

Contoh program sederhana


C #include <stdio.h> main() { printf("Hello World"); } Output : Hello World C++ #include <iostream.h> main() { cout<<"Hello World"; } Output : Hello World

Aturan Penulisan Program


Detailnya berbeda untuk setiap bahasa pemrograman Case sensitive (C/C++, JAVA, C#) Non-case sensitive (Pascal, Basic) Declared variable (C/C++, JAVA) Non-declared variable (PHP, Ruby) Setiap programmer memiliki gaya tersendiri
Harus terurut

Tipe Data
Tipe data primitive

Tipe Data
Tipe data komposisi Array Record / Struct Enumerasi String

Variabel
Simbol untuk nilai yang belum diketahui
Memori penyimpanan yang dikaitkan dengan simbol

tertentu Dapat berupa variabel constant

Operator
Simbol yang melambangkan instruksi untuk

melakukan operasi manipulasi pada variabel Operator pengerjaan (=) Operator aritmatika (+, - , *, /, %) Operator increment dan decrement (++, --) Operator bitwise (<<, >>, &, |, ^, ~) Operator relational (>, <, >=, <=, ==, !=) Operator logika (&&, ||, !)

Quiz
Menurut anda, adakah kegunaan mempelajari

algoritma dan pemrograman pada jurusan sistem komputer? Jelaskan dan berikan contoh kasus.