• Tidak ada hasil yang ditemukan

Algoritma Pemrograman 1 (Alpro1) 4 sks. By. Rita Wiryasaputra, ST., M. Cs.

N/A
N/A
Protected

Academic year: 2021

Membagikan "Algoritma Pemrograman 1 (Alpro1) 4 sks. By. Rita Wiryasaputra, ST., M. Cs."

Copied!
42
0
0

Teks penuh

(1)

Algoritma Pemrograman 1

(Alpro1) 4 sks

By. Rita Wiryasaputra, ST., M. Cs.

ritasaputra@gmail.com

(2)
(3)

Buku Referensi

Algoritma dan Pemrograman dalam Bahasa Pascal

dan C (Buku 1), Rinaldi Munir, Informatika

Bandung

Algoritma dan Pemrograman dalam Bahasa Pascal

dan C (Buku2), Rinaldi Munir&Leoni Lidya,

(4)

Alat

Live coding C++

Turbo Pascal 7.0

Borland C++

(5)

Pendahuluan

Sistem Komputer terdiri dari :

• Hardware (perangkat keras)

I, P, O

• Software (perangkat lunak)

Operating System ,

Programming Language, Application Program

• Brainware

user (end), administrator, desainer,

programmer

(6)
(7)
(8)
(9)
(10)
(11)

Ciri Program yang bagus

Correct

Program dapat memberikan solusi yang tepat dari suatu

masalah

Clear

Program harus jelas, dapat dimengerti dengan mudah, dan

dapat di trace dengan mudah

Efesien

Terkait dengan sumber daya yang dibutuhkan. Kecepatan

(12)

Definisi

Algoritma

urutan langkah dari awal hingga akhir disusun secara

sistematis dan bersifat logis untuk menyelesaikan suatu masalah.

Urutan langkah logis  berarti algoritma harus mengikuti suatu urutan

tertentu, tidak boleh melompat-lompat.

Asal kata:

Penulis buku Arab Al-Khowarizmi (dibaca algorism) seorang ahli

matematika, geografi, astronomi dan musik dari Uzbekistan yang

bernama Abu Abdullah Muhammad Ibn Musa al-Khwarizmi

(770-840).

Kitab Al-jabar wal-muqabala (buku pemugaran dan pengurangan)

Dalam bidang komputer, algoritma sangat diperlukan dalam

menyelesaikan berbagai masalah pemrograman, terutama dalam

komputasi numeris

Tanpa algoritma yang dirancang baik maka proses pemrograman

akan menjadi salah, rusak, atau lambat dan tidak efisien.

(13)

Contoh Algoritma Sederhana

Masalah : Membuat Kopi Panas

Algoritma :

Ambil gelas

Ambil gula masukkan ke dalam gelas

Ambil kopi masukkan ke dalam gelas

Ambil air panas, tuangkan ke dalam gelas

Aduk air, gula dan kopi sampai rata

(14)

Contoh Algoritma

Memasak Mie Instant

Jika seseorang ingin mengirim surat kepada kenalannya di

tempat lain, langkah yang harus dilakukan adalah :

– Menulis surat

– Surat dimasukkan kedalam amplop tertutup

– Amplop ditempeli perangko secukupnya

(15)

Penulisan Algoritma

1. Uraian Deskriptif

 dengan bahasa natural (Indonesia, Jawa) seperti contoh

sebelumnya yaitu pembuatan kopi panas

 Terlalu banyak akan membingungkan

2. Pseudocode

 Pseudo : tidak sebenarnya, PseudoCode : Code yang tidak

sebenarnya

 Bahasa Natural tapi Lebih dekat ke bahasa pemrograman

 Sulit dimengerti kecuali yang tahu pemrograman

3. Flow-Chart (Diagram Alir)

 Bagus secara visual dan mudah dimengerti

 Merepotkan untuk menggambar kalau algoritmanya

(16)

What is the difference??

Belajar memprogram

:

pemahaman persoalan, analisis, dan sintesis

Identifikasi masalah

(input,proses,output)

Algoritma

Implementasi algoritma yang ditulis dengan

bahasa pemrograman (program)

Belajar Bahasa Pemrograman

:

Belajar memakai suatu bahasa,aturan sintaks (tata

bahasa)

Pemecahan Masalah -Strategi -Metodologi -Sistematika

Notasi yang telah disepakati

(17)

Notasi

Tidak ada notasi baku dalam penulisan teks

algoritma (notasi algoritmik) sebagaimana

pada notasi bahasa pemrograman. Namun,

agar notasi algoritmik mudah ditranslasikan ke

dalam notasi bahasa pemrograman, sebaiknya

notasi algoritmik tersebut berkoresponden

dengan notasi bahasa pemrograman secara

umum.

(18)

Penyajian dan Struktur Algoritma

Algoritma disajikan dalam 2 bentuk :

Tulisan ( Pseudocode, English structure)

Gambar (Structure chart, HIPO, Flowchart,

Nassi-Scheiderman chart)

Pada dasarnya struktur algoritma meliputi:

Runtunan/sequence

Pemilihan/selection (If dan Case)

(19)

Karakteristik Algoritma (IDETO)

Input

-terdapat nol masukkan atau lebih yang diberikan

secara eksternal

Definite (pasti)

-harus secara sempurna menyatakan

apa yang dilakukan (instruksi-instruksi jelas dan tidak

ambigu)

Efective

-setiap instruksi harus dapat dilakukan secara

manual dalam jumlah waktu yang terhingga. Contoh

instruksi yang tidak efektif adalah: A=A+0 atau A=A*1

Terminate/finite

-harus

berhenti

setelah

sejumlah

terbatas operasi

(20)
(21)

21

Masalah dan Model

Mathematical Modeling

is a procedure that

recognizes and verbalizes a problem and then

quantifies it by turning the words into

mathematical expressions.

Mathematical

Modeling is an

art that

improves with experience

A constrained mathematical model consists of

An objective

(22)

Electrocomp. Corporation

The Electrocomp Corporation manufactures two electrical

products: air conditioners and large fans. The assembly

process for each is similar in that both require a certain

amount of wiring and drilling. Each air conditioner takes 3

hours of wiring and 2 hours of drilling. Each fan must go

through 2 hours of wiring and 1 hour of drilling. During the

next production period, 240 hours of wiring time are

available and up to 140 hours of drilling time may be used.

Each air conditioner sold yields a profit of $25. Each fan

assembled may be sold for a $15 profit. Formulate and

solve this LP production mix situation to find the best

combination of air conditioners and fans that yields the

highest profit.

(23)

Solution Electrocomp.

X

1

= number of air conditioner to be produced

X

2

= number of large fans to be produced

Max = 25 X

1

+ 15 X

2

3 X

1

+ 2 X

2

≤ 240 (hours of wiring constraint)

2 X

1

+ X

2

≤ 140 (hours of drilling constraint)

X

1

≥ 0 ( first nonnegativity constraint)

(24)
(25)

Struktur Dasar Algoritma

Runtunan (sequence)

aksi-aksi dalam algoritma yang dikerjakan secara

berurutan

contoh :

A1. Aksi 1

A2. Aksi 2

A3. Aksi 3

(26)

Struktur Dasar Algoritma(2)

Pemilihan (selection)

– aksi dikerjakan jika kondisi tertentu terpenuhi

– contoh :

IF kondisi1 THEN

Aksi1

ELSE

IF kondisi2 THEN

Aksi2

ELSE

Aksi3

(Aksi 3 dilakukan jika kondisi 1 dan 2 tidak terpenuhi)

IF kondisi THEN

aksi

IF kondisi THEN

aksi1

ELSE

aksi2

(27)

Struktur Dasar Algoritma (3)

Pengulangan (repeatition)

– aksi-aksi yang dikerjakan berulang kali

– contoh :

FORpencacah pengulangan dari a sampai b DO

Aksi

(aksi dilakukan sebanyak hitungan pencacah pengulangan, yaitu dari a sampai b yakni sebanyak b-a+1 kali)

REPEAT

Aksi

UNTILkondisi

(pengulangan aksi dilakukan sehingga kondisi/persyaratan berhenti terpenuhi)

WHILEkondisi DO

Aksi

(28)
(29)
(30)

Contoh Masalah dan Pemecahannya

dengan algoritma

Masalah : memilih bilangan terbesar dari tiga

bilangan

Algoritma :

(31)

Contoh Penulisan Algoritma (Bahasa

Natural)

1. Sediakan wadah sementara untuk menyimpan bilangan

terbesar, beri nama

maks

2. Ambil bilangan pertama dan set

maks

sama dengan bilangan

pertama

3. Ambil bilangan kedua dan bandingkan dengan

maks

4. Apa bila bilangan kedua lebih besar dari

maks

, set

maks

sama dengan bilangan kedua

5. Ambil blangan ketiga dan bandingan dengan

maks

6. Apabila bilangan ketiga lebih besar dari

maks

, set

maks

sama

dengan bilangan ketiga

(32)

Contoh Penulisan Algoritma (Flow Chart)

Mulai maks = bilangan pertama maks < bilangan kedua? maks < bilangan ketiga? maks = bilangan kedua maks = bilangan ketiga Sediakan wadah bernama maks Selesai Ya Tdk Ya Tdk

(33)

Contoh Penulisan Algoritma

(Pseudocode)

maks

bilangan pertama

if (

maks

< bilangan kedua)

Then maks

bilangan kedua

if (

maks

< bilangan ketiga)

(34)

Teks Algoritma

Struktur teks algoritma

Kepala algoritma

terdiri atas nama algoritma dan penjelasan (spesifikasi) tentang algoritma tersebut

Deklarasi

mendefinisikan semua nama (konstanta, peubah, tipe, prosedur atau fungsi) yang dipakai dalam algoritma

Deskripsi

Berisi uraian langkah-langkah penyelesaian

(35)

Contoh Teks Algoritma

Judul algoritma spesifikasi algoritma

(36)
(37)

Pemrograman

Program

kumpulan instruksi/perintah tersendiri yang

biasanya disebut source code disusun sedemikian rupa

sehingga mempunyai urutan nalar yang tepat untuk

menyelesaikan suatu persoalan dan dibuat oleh programmer.

Instruksi (statement)

syntax (cara penulisan) sesuai dengan

bahasa pemrograman yang digunakan.

Komponen : input, output, proses, percabangan dan

perulangan.

Pemrograman

proses mengimplementasikan algoritma

(38)

Bahasa Pemrograman

Bahasa Pemrograman

prosedur/tata cara

penulisan program

Fungsi bahasa pemrograman

media untuk

menyusun dan memahami sehingga pemrogram

dengan komputer dapat berkomunikasi.

Contoh : C, C++, C#, Pascal, Basic, Perl, PHP, ASP,

JHP, Java dan sebagainya

Perbedaan : cara memberikan instruksi

Persamaan : bertujuan menghasilkan output yang

sama.

(39)

Bahasa Pemrograman

• Dunia komputer  beraneka ragam bahasa pemrograman.

• Bahasa pemrograman dikelompokkan berdasarkan kriteria tertentu.

Contohnya level bahasa (high, middle, low), procedural/functional

programming, object oriented programming, dan sebagainya.

• Dasarnya  bahasa pemrograman memiliki bagian yang serupa.

• Perbedaannya  tata bahasa yang digunakan.

• Analogi  belajar bahasa Indonesia, bahasa Jawa, bahasa asing.

Perbedaannya pada istilah/simbol yang digunakan dan dialek bahasa tersebut

(40)

Sifat bahasa pemrograman:

• Ekspresivitas  jelas menggambarkan algoritma

• Didefinisikan dengan baik  sintaks dan semantik konsisten dan tidak bermakna ganda.

• Mendukung berbagai tipe data.

• Modularitasnya mempunyai fasilitas subprogramming (modul).

• Fasilitas masukan dan keluaran mendukung berbagai model file

(sequential, random, access, index, multiple index).

• Portabilitas  dipakai pada berbagai mesin komputer yang berbeda

• Efisiensi  dikompilasi dan dieksekusi secara cepat pada mesin komputer dimana program dapat diimplementasikan.

• Mudah dipelajari  dipahami dan diajarkan.

(41)

Faktor Penting Bahasa Pemrograman

Sintaks

aturan gramatikal yang mengatur tata

cara penulisan kata, ekspresi dan pernyataan

Semantik

aturan-aturan untuk menyatakan arti

Pragmatik

kemudahan implementasi dan

(42)

Bahasa pemrograman Pascal

Bahasa pemrograman berbasis teks.

Penulisan program dan proses eksekusinya dilakukan

dari

atas

ke

bawah

pemrograman

Linear

programming.

Bahasa pemrograman Prosedural, dimana program

dibedakan antara data (dalam memori) dengan

instruksi. Program terdiri dari runtunan instruksi yang

dilaksanakan satu per satu secara berurutan oleh

pemroses. Alur pelaksanaan instruksi dapat berubah

karena adanya kondisional. Data dalam memori

dimanipulasi oleh instruksi secara beruntun.

Referensi

Dokumen terkait

Kebutuhan output dari sistem adalah berupa gambar tentang beberapa peristiwabersejarah dan tokohpahlawan kemudian teks untuk penjelasan nama dan informasi

$es yang lebih baruan dikembangkan% :oberts &lt;pperception $est for )hildren 2:&lt;$)3% lebih dekat untuk memenuhi standar psikometri untuk penyusunan tes dan e'aluasi daripada

Meningkatkan Profesionalitas Kinerjanya, Uiversitas Atma Jaya Yogyakarta, Jurnal, Fakultas Hukum, 2014, hlm 1.. Jurnal USM Law Review Vol 3 No 2 Tahun 2020 458 Kepolisian

ambahan lagi, penggunaan dialek oleh guru dalam proses pengajaran dan pembelajaran Bahasa Melayu juga merupakan penyebab berlakunya pencemaran bahasa ini. Mengikut amus 8ewan,

Dengan demikian, kelemahan pendidikan tidak hanya terletak pada penguasaan pengetahuan, sebagai kompilasi data, tetapi mengacu pada pembinaan dalam lembaga

Berikut ini adalah tabel hasil kesimpulan dari pengujian signifikansi parameter, pengujian asumsi independensi residual dan asumsi normalitas residual, serta nilai AIC

Penelitian ini bertujuan untuk mengetahui pengaruh variasi media pendingin terhadap nilai kekuatan uji tarik dan nilai kekerasan Stainless Steel AISI 304, Pada

Cendawan endofit yang berasosiasi dengan tanaman dapat meningkatkan tinggi tajuk 33.09% dan panjang akar pada bibit padi sebesar 47.83% dibandingkan dengan kontrol (Vasudevan