You are on page 1of 83

KONSEP

PEMROGRAMAN
M. Ramli
Program Studi Informatika
08568400278 coursework.informatics@gmail.com

Rancangan Pembelajaran (1)


Mata Kuliah : Konsep Pemrograman
Bobot : 3 SKS Tatap Muka, 1 SKS Praktikum ( 4 SKS)
Semester : 1

Kompetensi Umum :
Memberikan pemahaman kepada mahasiswa tentang konsep pemrograman.
Memberikan pemahaman bahwa program komputer merupakan gabungan dari struktur data dan
algoritma.

Kompetensi Khusus :
Memahami konsep pemrograman.
Memberi kemampuan menggunakan komputer untuk memecahkan masalah-masalah khusus
menggunakan bahasa C/C++

KP

Rancangan Pembelajaran (2)


Metode Pembelajaran :
Ceramah.
Diskusi.
Latihan di kelas.
Tugas (Self).
Praktikum in Lab.
Penilaian :
Tugas & QUIZ : 20%
UTS : 30 %
UAS : 30 %
Praktikum : 15 %
Kehadiran/Partisipasi : 5 %

Materi :
Konsep Pemrograman
Algoritma & Pemrograman
Pengantar Bahasa C/C++
Jenis Data & Deklarasi
Operator & Ekspresi
Pengambilan Keputusan
Pengulangan Proses
Fungsi
Array & String
Console & File I/O
Pointer
More Function
String & Struct
Software Dev on C /C++*
KP

Rancangan Pembelajaran (3)


Pretest dan Posttest
untuk Mengukur
Kompetensi Kognifif
Mahasiwa
Penyajian Materi
dengan Model
Minimalism berbasis
Konsep Amati-TiruModifikasi

Penugasan berbasis
Self-Practice dan
Literatur Review

Latihan Secara Iteratif


untuk Meningkatkan
Kompetensi Kognitif dan
Psikomotorik Mahasiswa
KP

Rancangan Pembelajaran (4)


Bahan Bacaan :
Deitel, 2010, C How to Program, Pearson
Horton Ivon, 2006, Begining C from novice to Profesional 4th edition, appress.
Shildt Herbert, 2000, C :Complete Reference 4th edition, McGraw-hill
Griffith Artur, 2000, GCC: Complete Reference, McGraw-Hill
Loudon Keyle, 1999, Mastering Algorithm with C, O'Reilly
Gottfried, Byron S,Schaums outline of theory and problems of programming with C ,
McGraw-Hill
Rinali Munir, algoritma & pemrograman, penerbit Informatika
Suagra, algoritma & pemrograman, penerbit Andi
Bahan Bahan Algoritma & Bahasa Pemrograman C di Internet

KP

Software Requiretment
Contoh :
DEV C++/C Windows
http://orwelldevcpp.blogspot.com/

GCC Linux

KP

LETS Begin !!
KONSEP PEMROGRAMAN

ALGORITMA & FLOWCHART

KP

Objectives
Mengerti tentang konsep pemrograman
Mengerti perbedaan belajar memprogram dan Bahasa
pemrograman
Mengerti konsep pemecahan masalah
Mengerti tentang algoritma dan pseudocode.
Membuat algoritma dari suatu permasalahan.
Mengerti tentang flowchart.
Membuat flowchart dari suatu permasalahan.
KP

Mengapa Belajar Konsep


Pemrograman?
Untuk menulis kode dalam bahasa yang
dimengerti komputer
Untuk melatih logika berpikir
Untuk dasar matakuliah lain di Teknik
Informatika

KP

Apakah belajar programming itu


sulit?
Hanya butuh waktu / jam terbang
Hanya butuh semangat dan kemauan
Hanya butuh sering mencoba / latihan!
Kuncinya latihan dan diskusi!

KP

10

Tips Belajar
Buat catatan!
Baca buku acuan!
Banyak latihan / praktek / mencoba
Banyak bertanya dan belajar dari sumber lain

KP

11

Computer

KP

12

Bagan Sistem Komputer

KP

13

Overview Konsep Pemrograman


Komputer bekerja seperti switching dan hanya
mengenali 0 dan 1
Manusia tidak (paham) berbicara dengan bahasa 0
dan 1
Perlu bahasa pemrograman yang dapat menjadi
perantara percakapan antara komputer dan manusia
Bahasa pemrograman diubah ke dalam bahasa yang
dipahami oleh komputer dengan menggunakan
interpreter atau kompiler
KP

14

Lanjutan ..
Sarana komunikasi antara manusia dan komputer
disebut bahasa komputer
Bahasa Pemrograman Komputer adalah tata cara
penulisan program (kata, ekspresi, pernyataan)
berupa langkah untuk menyelesaikan masalah
Faktor yang perlu diperhatikan adalah sintaksis,
semantik dan logika
Jenis Bahasa pemrograman: tingkat tinggi,
menengah dan rendah
KP

15

Konsep Pemecahan Masalah


Menganalisa dan memahami permasalahan dan
membuat algoritma (pola berfikir terstruktur berisi
tahap-tahap penyelesaian masalah)
Membuat kode dari algoritma dalam pernyataan yang
sesuai dengan bahasa pemrograman
Testing (menjalankan program) dan debugging
(menemukan kesalahan)
Melakukan dokumentasi terhadap setiap langkah
KP

16

Definisi Program
Sebuah program komputer hanyalah
kumpulan instruksi yang diperlukan untuk
memecahkan suatu masalah tertentu
Program adalah kumpulan instruksi atau perintah
yang disusun sedemikian rupa sehingga
mempunyai urutan nalar yang tepat untuk
menyelesaikan suatu persoalan.
Program adalah kumpulan instruksi-instruksi
tersendiri yang biasanya disebut source code
yang dibuat oleh programmer (pembuat program)
Instruksi (statement) yang dimaksud adalah
syntax (cara penulisan) sesuai dengan bahasa
pemrograman yang digunakan yang mempunyai
KP
komponen-komponen : Input,
Output, Proses,

17

Langkah Membuat Program


Mendefinisikan / mengerti masalah
Input layout,
Proses proses
Output layout

Mencari solusi untuk masalah


Memilih teknik pemecahan masalah dan algoritma /flowchart
Menulis program
Melakukan testing dan debugging
Melakukan dokumentasi
Melakukan pemeliharaan
KP

18

KP

19

Paradigma Pemrograman

Pemrograman Prosedural / Terstruktur

Berdasarkan urutan-urutan, sekuensial


Program adalah suatu rangkaian prosedur untuk
memanipulasi data. Prosedur merupakan kumpulan instruksi
yang dikerjakan secara berurutan.
Harus mengingat prosedur mana yang sudah dipanggil dan
apa yang sudah diubah.
Program dapat dibagai-bagi menjadi prosedur dan fungsi.
Contoh: PASCAL dan C

Pemrograman Fungsional

Berdasarkan teori fungsi matematika


Fungsi merupakan dasar utama program.

Pemrograman Modular

Pemrograman ini membentuk banyak modul.


Modul merupakan kumpulan dari prosedur dan fungsi yang
berdiri sendiri
Sebuah program dapat merupakan kumpulan modul-modul.
Contoh: MODULA-2 atau ADA
KP

20

Paradigma Pemrograman

Pemrograman Berorientasi Obyek

Pemrograman berdasarkan prinsip obyek, dimana


obyek memiliki data/variabel/property dan
method/event/prosedur yang dapat dimanipulasi
Contoh: C++, Object Pascal, dan Java.

Pemrograman Berorientasi Fungsi

Pemrograman ini berfokus pada suatu fungsi


tertentu saja. Sangat tergantung pada tujuan
pembuatan bahasa pemrograman ini.
Contoh: SQL (Structured Query Language), HTML,
XML dan lain-lain.

Pemrograman Deklaratif

Pemrograman ini mendeskripsikan suatu masalah


dengan pernyataan daripada memecahkan
masalah dengan implementasi algoritma.
Contoh: PROLOG
KP

21

Pembagian Target Program


Pemrograman Desktop
Pemrograman Web
Pemrograman Mobile
Pemrograman Network
Pemrograman Sistem (Embeded)-robotic dan IoT
Pemrograman Cloud software as a services (SaaS)

KP

22

Siklus Hidup Perangkat Lunak


(Waterfall Model)

Dilihat dari Siklus diatas, Algoritma Pemrograman


menempati posisi dibagian Code / implementasi karena
bagian implementasi merupakan bagian dimana pemrogram
melakukan proses coding (pembuatan program).
KP

23

Ciri Pemrograman Terstruktur


Mempunyai teknik pemecahan masalah yang benar
Memiliki algoritma pemecahan masalah yang
sederhana dan efisien
Teknik penulisan program memiliki struktur logika yang
benar dan mudah dipahami
Membutuhkan biaya testing yang rendah
Memiliki dokumentasi yang baik

KP

24

Belajar Memprogram dan


Belajar Bahasa Pemrograman
Belajar Memprogram = Belajar Metodelogi
Pemecahan masalah dan menuangkannya
kedalam notasi tertentu sehingga mudah
dipahami.
Belajar BP = Belajar memakai suatu bahasa ,
aturan2, intruksi2, tatacara pengoperasian
compiler-nya, dan memanfaatkan intruksi2 itu
untuk membuat program dalam bahasa itu saja.
KP

25

Belajar Memprogram
Belajar memprogram belajar bahasa pemrograman.
Belajar memprogram : belajar tentang strategi
pemecahan masalah, metodologi dan sistematika
pemecahan masalah kemudian menuliskannya dalam
notasi yang disepakati bersama.
Bersifat pemahaman persoalan, analisis dan sintesis.
Titik berat : designer program.

KP

26

Belajar Bahasa Pemrograman


Belajar bahasa pemrograman : belajar memakai
suatu bahasa pemrograman, aturan sintaks,
tatacara untuk memanfaatkan instruksi yang
spesifik untuk setiap bahasa
Belajar bahasa pemrograman, titik berat : coder

KP

27

Produk Pemrograman
Program dengan rancangan yang baik (metodologis,
sistematis).
Dapat dieksekusi oleh mesin.
Berfungsi dengan benar.
Sanggup melayani segala kemungkinan masukan.
Disertai dokumentasi.
Belajar memprogram, titik berat : designer program.
KP

28

ALGORITMA &
PSEUDOCODE

Brief of Algorithm
Asal kata algorism
Penemu : Abu Jafar Muhammad Ibnu Musa AlKhuwarizmi (770-840M)
Buku-nya : Kitab Al Jabar Wal-Muqabala/The book of
restoration and reduction/Buku pemugaran dan
pengurangan
Definisi : logika,metode,urutan langkah-langkah
untuk menyelesaikan permasalahan yang disusun
secara sistematis dan logis
KP

30

Pemahaman Algoritma
Algoritma = kunci ilmu komputer
Algoritma != Program (kumpulan intruksi com)
Program = stuktur data + Algoritma
Notasi Algoritma independen terhadap bahasa pemrograman &
Mesin Komputer
Aturan penulisan algoritma tidak baku.
Penulisan sebaiknya berkoresponden/merujuk ke notasi bahasa
pemrograman secara umum.
Aksi dari algoritma kejadian yg terjadi dari selang waktu
tertentu (awal = t0, akhir=t1) dan menghasilkan effect netto
yang terdefinisi dengan baik dan direncanakan
KP

31

Aksi dalam algoritma


Kejadian yang terjadi pada waktu yang terbatas
dan menghasilkan efek yang memang
direncanakan
Dari waktu0 ke waktuN
Contoh: aksi Bu Ani mengupas kentang untuk
makan malam
Batasan:
Apa kentang harus dibeli dulu atau sudah ada?
Apakah mengupas berarti sampai kentang terhidang?
Apakah setelah kentang selesai dikupas, harus ada
kegiatan lain seperti dibuat sup atau digoreng?

Berarti harus ada kejadian awal = start dan kejadian


akhir = finish

Kejadian bu Ani dapat juga diterapkan pada


ibu-ibu yang lain, yang juga akan mengupas
kentang
KP

32

Algoritma Login ke Facebook


User : Masukkan user name
User : Masukkan Password
Sistem :Cek apakah username terdaftar?
Sistem :Jika tidak terdaftar, maka sistem akan
mengeluarkan peringatan adanya kesalahan. Jika
terdaftar maka, selanjutnya sistem akan
mengecek apakah username dan password cocok
(sesuai dengan database)?
Sistem :Jika Username dan password cocok maka
user diperbolehkan masuk ke Facebook ybs. Jika
tidak cocok maka sistem akan mengeluarkan
peringatan adanya kesalahan

User : Dapat mengakses halaman facebook ybs


KP

33

Contoh Algoritma dalam


kehidupan ?
Proses

Algoritma

Contoh Langkah dlm


Algo

1. Membuat Kue

Resep Kue

Masukan telur ..

2. Membuat pakaian

Pola Pakaian

Gunting kain dari kiri

3. Praktikum Reaksi Kimia

Panduan Praktikum

Campur 10 ml NaCL..

4. Merakit Mobil

Panduan Merakit

Gabungkan komponen A..

5. Memainkan Musik

Papan Not Balok

Not Balok

6. Mengisi Voucher HP

Panduan pengisian

Tekan no 888 ..

7. Menanak Nasi

Panduan Menanak Nasi

Cuci beras ..

KP

34

Contoh Kasus Lainnya ..


Ibu Saya Memasak Nasi Untuk Makan
Siang
Perhatikan, Ruang lingkupnya luas, maka perlu didefinisikan keadaan awal
dan effect netto yang direncanakan. (initial state & final state).
Initial state/keadaan awal:t0 beras sudah ada panci yang terletak didapur
dekat tempat pencucian.
Final state /keadaan akhir:t1 Beras telah matang menjadi nasi dan disajikan
diatas meja.
Contoh Kejadian memasak nasi :
Ambil panci berisi beras
Bawa ketempat pencucian
Nyalakan kran air
Cuci beras sampe bersih
Masukan ke panci untuk menanak nasi
Isikan air secukupnya
Bawa ketempat menanak nasi
Masukan ke rice cooker
Nyalakan rice cooker dan setting mode memasak
Tunggu beberapa menit sampe matang
Angkat nasi dari rice cooker
Bawa dan hidangkan diatas meja
KP

35

Pemahaman Contoh
Kejadian = urut-urutan dari beberapa
aksi yang terjadi saling berurutan.
Effek kumulatif dari semua aksi yang
terjadi menjadi effek netto dari kejadian
Penggolongan kejadian menjadi aksi
adalah relative tergantung sudut
pandang.
Coba Anda Carikan sudut pandang lainnya dari contoh tersebut !

KP

36

Contoh Algoritma Matematika


Perkalian:
Hitung 25 x 34 = ?
Algoritma :
Grid method
Long multiplication method
Karatsuba multiplication

KP

37

Hitung 25 x 34 = ?
Long multiplication
Grid method :
method
25 x 34 = 600 + 150 + 80 +
25
20 = 850
30
4

20
600
80

34
___X
100
75
____+
850

5
150
20

KP

38

Hitung 25 x 34 = ?

2 5 x 3 4
x1 x2
y1 y2

Karatsuba multiplication method


1. Hitung A = x1 * y1
2. Hitung B = x2 * y2

3.
4.
5.
6.

A= 2 x 3 = 6
B = 5 * 4 = 20

Hitung C = (x1 + x2) (y1 + y2) C = (7) * (7)= 49


Hitung K = C A B
K = 49 6 20 = 23
Hitung H = A * 100 + K * 10 + B
Hasilnya adalah H
H = 6 * 100 + 23 * 10 + 20
= 600 + 230 + 20
= 850

KP

39

Penilaian Algoritma
Tingkat kepercayaan tinggi (realibility) = hasil yang
diperoleh harus berakurasi tinggi dan benar.
Pemrosesan efesien (low cost) = proses dilakukan
secepat mungkin dan seakurasi mungkin.
Sifat General = Bukan hanya bisa menyelesaikan satu
kasus saja.
Mudah dimengerti = siapapun yang melihat akan
memahami algoritma Anda.
Portabllitas tinggi = bisa diimplementasikan di
berbagai platform komputer.
KP

40

Kriteria Algoritma
Input: algoritma dapat memiliki nol atau lebih inputan dari luar.
Output: algoritma harus memiliki minimal satu buah output keluaran.
Definite (pasti): algoritma memiliki instruksi-instruksi yang jelas dan
tidak ambigu.
Finite (ada batas): algoritma harus memiliki titik berhenti (stopping
role).
Effective (tepat dan efisien): algoritma sebisa mungkin harus dapat
dilaksanakan dan efektif. Contoh instruksi yang tidak efektif adalah: A
= A + 0 atau A = A * 1
Namun ada beberapa program yang memang dirancang untuk unterminatable,
contoh Sistem Operasi
KP

41

Aturan Penulisan
Algoritma
Tiap Algoritma terdiri dari 3 bagian
( Header/judul,Kamus/Deklarasi,Algoritma/Deskripsi) dan
{ } untuk komentar.
Judul/Header
{ Komentar mengenai algoritma, ex. Cara kerja program, kondisi awal,
kondisi akhir algoritma}
Kamus / Deklarasi
{ Definisikan nama prosedur,nama fungsi, variable, nama konstanta }
Algoritma
{ Isi dari algoritma dituliskan disini }

KP

42

Contoh
Program Luas_Lingkaran
{Judul Algoritma}
{ Menghitung luas lingkaran untuk jari-jari dibaca dari keybord
dan mencetak hasilnya kepiranti keluaran} {Spesifikasi Algoritma}
Penulisan judul sebaiknya disambungkan tanpa spasi
Contoh lain standar penulisan judul :
luasLingkaran/LuasLingkaran/luas_lingkaran.

KP

43

Kamus / Deklarasi
{Nama type, hanya untuk type yang bukan type dasar}
type jam : <hh,mm,ss :integer> {Type jam terdiri dari 3 masukan yaitu hh sebagai
jam. mm sebagai menit dan ss sebagai detik}
{Nama konstanta, harus menyebutkan type dan nilai }
constant phi : real = 3,14159
constant nama : string = joe
constant benar : boolean = true
{Nama Informasi, menyebutkan type}
x,y : integer
{suatu nilai yang bertype bilangan bulat}
NMax : real
{nilai maksimum yang bertype bilangan real}
Nama : string
{suatu nilai yang merupakan kumpulan character}
P : point
{suatu nilai pada bidang kartesian}
Cari : Boolean
{suatu nilai logika}
KP

44

{ Lanjutan Kamus }
{Nama fungsi, menyebutkan domain dan range}
function RealToInt (x:real) integer
{mengubah harga x yang bertype real menjadi harga ekivalen yang bertype
integer}
{Nama prosedur, menyebutkan IS initial state, FS final state dan proses}
procedure tukar (input/output x,y : real)
{ IS x dan y terdefinisi, x = a dan y = b
FS x = b dan y = a
Proses : menukar isi informasi bilangan x dan y }

KP

45

Algoritma
input (c,d) {menerima masukan 2 bilangan c dan d}
if c < d then {operasi kondisional}
ea+b
{e di assignment oleh nilai a dan b}
else
eab
output (e) {hasil keluaran berupa bilangan e}

Algoritma merupakan inti dari suatu algoritma yang berisi instruksi dan
pemanggilan aksi yang telah didefinisikan sebelumnya.
Komponen dasar (prosedural):
Instruksi dasar ex. I/O,assignment
Sequence (runtutan)
Analisa kasus
Perulangan
KP

46

Latihan Menentukan Nilai MAX ?


Program Nilai_Maksimal
{Menentukan nilai tertinggi yang dibaca dari piranti masukan dan hasilnya dicetak ke piranti
keluaran}
Kamus
hasil,x,y : integer {hasil merupakan variabel untuk menampung nilai keluaran}
{x,y adalah variabel untuk menampung nilai masukan}
Algoritma
input (x,y)
{membaca nilai x dan y dari piranti masukan}
if x < y then
hasil x
else
hasil y
output (hasil)
end

{operasi kondisional}
{hasil di assignment oleh nila terbesar}

(nilai didalam variabel hasil dicetak ke piranti keluaran}

KP

47

Pseudo Code
Kode atau tanda yang menyerupai (pseudo) program
atau merupakan pejelasan cara menyelesaikan suatu
masalah.
Pseudo-code sering digunakan oleh manusia untuk
menuliskan algoritma = representasi penulisan
algoritma
Digunakan dengan bahasa manusia

KP

48

Pseudocode Convention
Pernyataan yang ditulis dalam bahasa sederhana (ex
English)
Setiap instruksi tertulis pada baris terpisah
Kata kunci dan lekukan digunakan untuk menandakan
struktur kontrol tertentu.
Setiap set instruksi ditulis dari atas ke bawah, dengan
hanya satu entri dan satu exit.
Kelompok pernyataan dapat dibentuk menjadi modul,
dan kelompok yang diberi nama.
KP

49

Enam Operasi Dasar Komputer


1. Komputer dapat menerima informasi

Kata Kerja yang digunakan:


Read digunakan ketika algoritma menerima input dari sebuah record
pada sebuah file.
Get digunakan ketika algoritma menerima input dari keyboard.

Read student name


Get system date
Read number_1, number_2
Get tax_code

KP

50

2. Komputer dapat menampilkan informasi


Verb used:
Print digunakan ketika output dikirim ke printer
Write digunakan ketika output ditulis ke file
Put, Output, Display digunakan ketika output ditulis ke layar
Prompt dibutuhkan sebelum instruksi input get, menyebabkan
pesan dikirim ke layar yang mana membutuhkan respon pengguna,
biasanya dengan menyediakan input.
Print `Program Completed
Write customer record to master file
Put out name, address and postcode
Output total_tax
Display End of data
Prompt for student_mark
Get student_mark
KP

51

3. A computer can perform arithmetic


Verb used:
Compute
Calculate
Symbols used:
+, -, *, /, ()

Add number to total


Total = total + number

Divide total_marks by student_count


Sales_tax = cost_price * 0.10
Compute C = (F 32) * 5/9
KP

52

4.

Komputer dapat memberikan nilai ke sebuah


variable / lokasi memori

Tiga kasus :
1. Memberikan data, inisial nilai dalam pseudocode,
kata kerja yang digunakan: Initialise / Set.
2. Memberikan nilai sebagai hasil dari beberapa
proses., symbols =or
3. Untuk menyimpan variable yang akan digunakan.
Kata kerja yang digunakan : Save / Store.
Initialize total_price to zero
Set student_count to 0
Total_price = cost_price + sales_tax
Total_price cost_price + sales_tax
Store customer_num in last_customer_num

KP

53

5.

Komputer dapat membandingkan dua variable atau


lebih dan memilih salah satu dari alternatif tersebut.
Keyword used:
IF, THEN, ELSE

IF student_attendance_status is part_time THEN


add 1 to part_time_count
ELSE
Add 1 to full_time_count
ENDIF

KP

54

6. Komputer dapat mengulang sekumpulan aksi


Keyword used:
DOWHILE, ENDDO

DOWHILE student_total < 50


Read student record
Print student name, address to report
Add 1 to student_total
ENDDO

KP

55

Meaningful names
Ketika mendesain algoritma, programmer harus
mengenalkan nama unik, yang mana:

Merepresentasikan variable / objek di masalah


Mengandung arti
example: number1, number2, number3 lebih berarti
daripada A, B, C
- Menggunakan separator jika lebih dari satu kata
example: sales_tax, word_count
- Or Capital letter sebagai separator (camel case)
example: salesTax, wordCount

KP

56

The Structure Theorem


Memungkinkan untuk menulis program kompuer
dengan menggunakan tiga control struktur yang di
representasikan di pseudocode:
Sequence
Selection
Repetition

KP

57

Sequence
Ekseskusi proses langsung langkah demi langkah .
Statement a
Statement b
Statement c

Add 1 to pageCount
Print heading line 1
Print heading line 2
Set lineCount to zero
Read customer record
KP

58

Selection
Penyajian kondisi dan pilihan antar dua tindakan

IF condition p is true THEN


statement(s) in true case

ELSE
statement(s) in false case
ENDIF
Example:
IF student_attendance_status is part_time THEN
add 1 to part_time_count
ELSE
add 1 to full_time_count
ENDI>f
KP

59

Repetition
Merepresentasikan sekumpulan instruksi yang akan diulang-ulang selama kondisi benar

DOWHILE condition p is true


statement block
ENDDO
Example:
Set student_total to zero
DOWHILE student_total < 50
Read student record
Print student name, address to report
Add 1 to student_total
ENDDO

KP

60

DESIGNING A SOLUTION ALGORITHM


Tugas yang paling menantang dalam siklus hidup
progam
Usaha pertama biasanya tidak menghasilkan produk
jadi
Terus mengubah langkah dan algorita sampai hasil yang
memuaskan dicapai.

KP

61

Point to be considered in Solution Algorithm


1. Algoritma harus diberi nama yang menggambarkan
fungsi dari algoritma
2. END statement digunakan untuk mengindikasikan
Algoritma telah lengkap
3. Semua langkah proses diantara nama algoritman dan
statement END harus indent supaya mudah dibaca

KP

62

Solution Algorithm for example

A program is required to read three


numbers, add them together and
print their total.

KP

63

Defining diagram
Input

Processing

Number1
Number2
Number3

Output
total

KP

64

Solution Algorithm
Add_three_numbers
Read number1, number2, number3
Total = number1 + number2 + number3
Print total

END

KP

65

Find average temperature


A program is required to prompt the terminal operator
for the maximum and minimum temperature readings
on a particular day, accept those readings as integers,
and calculate and display to the screen the average
temperature, calculated by (maximum temperature +
minimum temperature)/2.

KP

66

Defining diagram
Input
Max_temp
Min_temp

Processing
Prompt for temperatures
Get temperatures
Calculate average temperature
Display average temperature

KP

Output
Avg_temp

67

Solution Algorithm
Find average_temperature
Prompt operator for max_temp, min_temp
Get max_temp, min_temp
Avg_temp= (max_Temp + min_temp)/2
Output avg_temp to the screen
END

KP

68

Jelaskan Output potongan code


berikut?
SET count 1
WHILE (count 6)
Print count
count count + 1
ENDWHILE

READ x
READ y
READ z
IF (x=y)
PRINT x
ELSE
IF(y<z)
PRINT y
ELSE
PRINT z
ENDIF
ENDIF

Output?
Berapa kali operasi count
count+1 dilakukan?

Apa outputnya jika


diinputkan :
X=5, Y=10, Z=15 ?
KP

X=15, Y=20, Z=5?

69

FLOW CHART
Definisi:
Bentuk gambar/diagram yang mempunyai aliran satu atau
dua arah secara sekuensial
Merupakan cara penyajian dari suatu algoritma.

Kegunaan:
Untuk mendesain program
Untuk merepresentasikan program

Maka, flowchart harus dapat merepresentasikan


komponen-komponen dalam bahasa pemrograman
KP

71

FLOW CHART
Ada 2 macam Flowchart :
1. System Flowchart : urutan proses dalam system dengan
menunjukkan alat media input, output serta jenis media
penyimpanan dalam prosespengolahan data.
2. Program Flowchart : urutan instruksi yang digambarkan
dengan symbol tertentu untuk memecahkan masalah dalam
suatu program.

Sebelum pembuatan program:


.Mempermudah programmer dalam menentukan alur logika
program

Sesudah pembuatan program:


KP

72

System
Flowchart

Program
Flowchart

KP

73

Simbol Simbol Flowchart


Flow Direction Symbols (Simbol
penghubung alur)
Processing Symbols (Simbol proses).
Input-output Symbols (Simbol inputoutput)

KP

74

Flow Direction Symbols

KP

75

Processing Symbols

KP

76

Processing Symbols cont..

KP

77

Input Output Symbols

KP

78

Input Output Symbols cont..

KP

79

Pembuatan Flowchart
Tidak ada kaidah yang baku.
Flowchart = gambaran hasil analisa suatu masalah. Flowchart
dapat bervariasi antara satu pemrogram dengan pemrogram
lainnya.
Secara garis besar ada 3 bagian utama:Input, Proses,Output
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.
KP

80

Contoh
Flowchart

Pencabangan

KP

81

Pengulan
gan

Contoh Flowchart
Genap Ganjil

KP

82

Menemukan bilangan terbesar dari


3 buah bilangan

KP

83

Latihan Soal
1. Menjumlahkan 2 buah bilangan dan mencetak hasilnya
2. Memberikan opsi menjumlahkan dan mengalikan 2 buah
bilangan dan menampilkan hasilnya
3. Menghitung luas lingkaran dan menampilkan hasilnya
4. Mengecek bilangan di antara 2 bilangan masukan,
apakah sama ataukah lebih besar salah satunya, dan
tampilkan hasilnya
5. Menghitung sigma (akumulasi) dari bilangan 1 sampai
dengan n, dan menampilkan hasilnya
KP

84

You might also like