• Tidak ada hasil yang ditemukan

172917070 Menyiapkan Dan Melakukan Survey Untuk Menentukan Kebutuhan d

N/A
N/A
Protected

Academic year: 2018

Membagikan "172917070 Menyiapkan Dan Melakukan Survey Untuk Menentukan Kebutuhan d"

Copied!
55
0
0

Teks penuh

(1)
(2)

SEKOLAH MENENGAH KEJURUAN

BI DANG KEAHLI AN TEKNOLOGI I NFORMASI DAN KOMUNI KASI PROGRAM KEAHLI AN REKAYASA PERANGKAT LUNAK

M

M

e

e

n

n

y

y

i

i

a

a

p

p

k

k

a

a

n

n

d

d

a

a

n

n

M

M

e

e

l

l

a

a

k

k

u

u

k

k

a

a

n

n

S

S

u

u

r

r

v

v

e

e

y

y

u

u

n

n

t

t

u

u

k

k

M

M

e

e

n

n

e

e

n

n

t

t

u

u

k

k

a

a

n

n

K

K

e

e

b

b

u

u

t

t

u

u

h

h

a

a

n

n

D

D

a

a

t

t

a

a

KODE MODUL

(3)

SEKOLAH MENENGAH KEJURUAN

BI DANG KEAHLI AN TEKNOLOGI I NFORMASI DAN KOMUNI KASI PROGRAM KEAHLI AN REKAYASA PERANGKAT LUNAK

M

M

e

e

n

n

y

y

i

i

a

a

p

p

k

k

a

a

n

n

d

d

a

a

n

n

M

M

e

e

l

l

a

a

k

k

u

u

k

k

a

a

n

n

S

S

u

u

r

r

v

v

e

e

y

y

u

u

n

n

t

t

u

u

k

k

M

M

e

e

n

n

e

e

n

n

t

t

u

u

k

k

a

a

n

n

K

K

e

e

b

b

u

u

t

t

u

u

h

h

a

a

n

n

D

D

a

a

t

t

a

a

BAGI AN PROYEK PENGEMBANGAN KURI KULUM

DI REKTORAT PENDI DI KAN MENENGAH KEJURUAN

DI REKTORAT JENDERAL PENDI DI KAN DASAR DAN MENENGAH

KODE MODUL

(4)

SEKOLAH MENENGAH KEJURUAN

BI DANG KEAHLI AN TEKNOLOGI I NFORMASI DAN KOMUNI KASI PROGRAM KEAHLI AN REKAYASA PERANGKAT LUNAK

M

M

e

e

n

n

y

y

i

i

a

a

p

p

k

k

a

a

n

n

d

d

a

a

n

n

M

M

e

e

l

l

a

a

k

k

u

u

k

k

a

a

n

n

S

S

u

u

r

r

v

v

e

e

y

y

u

u

n

n

t

t

u

u

k

k

M

M

e

e

n

n

e

e

n

n

t

t

u

u

k

k

a

a

n

n

K

K

e

e

b

b

u

u

t

t

u

u

h

h

a

a

n

n

D

D

a

a

t

t

a

a

PENYUSUN TI M FAKULTAS TEKNI K

UNI VERSI TAS NEGERI YOGYAKARTA

BAGI AN PROYEK PENGEMBANGAN KURI KULUM

DI REKTORAT PENDI DI KAN MENENGAH KEJURUAN

DI REKTORAT JENDERAL PENDI DI KAN DASAR DAN MENENGAH

KODE MODUL

(5)

KATA PENGANTAR

Modul dengan judul “

M

M

e

e

n

n

y

y

i

i

a

a

p

p

k

k

a

a

n

n

d

d

a

a

n

n

M

M

e

e

l

l

a

a

k

k

u

u

k

k

a

a

n

n

S

S

u

u

r

r

v

v

e

e

y

y

u

u

n

n

t

t

u

u

k

k

M

M

e

e

n

n

e

e

n

n

t

t

u

u

k

k

a

a

n

n

K

K

e

e

b

b

u

u

t

t

u

u

h

h

a

a

n

n

D

D

a

a

t

t

a

a

“ merupakan bahan ajar yang digunakan sebagai panduan praktikum peserta diklat Sekolah Menengah Kejuruan

(SMK) untuk membentuk salah satu bagian dari kompetensi bidang keahlian

Teknologi I nformasi dan Komunikasi pada Program Keahlian Rekayasa

Perangkat Lunak.

Modul ini menguraikan tentang cara atau proses pembuatan algoritma dan

diagram alur pemrograman sebagai sarana untuk survay dan menentukan

kebutuhan data. Pembuatan algoritma dan diagram alir pemrograman ini

untuk berbagai macam kasus yang sering terjadi di lapangan. Kegiatan

Belajar 1 membahas tentang konsep algoritma dan diagram alir

pemrograman, Kegiatan Belaj ar 2 membahas tentang Algoritma dan Diagram

Alir untuk Proses Pengulangan (Loop), dan Kegiatan Belajar 3 membahas

tentang Operasi Pada Struktur Data Larik 1 Dimensi.

Modul ini terkait dengan modul-modul lain yang membahas tentang

Mengoperasikan Sistem Operasi, Menginstall Software, dan Mengubah

Konfigurasi software. Oleh karena itu, sebelum menggunakan modul ini

peserta diklat diwajibkan telah mengambil modul-modul tersebut.

Yogyakarta, Desember 2004

(6)

DAFTAR I SI MODUL

Halaman

HALAMAN DEPAN ... i

HALAMAN DALAM ... ii

KATA PENGANTAR ... iii

DAFTAR ISI MODUL ... iv

PETA KEDUDUKAN MODUL ... vi

PERI STI LAHAN / GLOSSARY ... viii

I . PENDAHULUAN

... 1

A. DESKRI PSI JUDUL ... 1

B. PRASYARAT ... 1

C. PETUNJUK PENGGUNAAN MODUL ... 2

1. Petunjuk Bagi Siswa ... 2

2. Peran Guru ... 3

D. TUJUAN AKHI R ... 3

E. KOMPETENSI ... 4

F. CEK KEMAMPUAN ... 6

I I . PEMELAJARAN

... 7

A. RENCANA PEMELAJARAN SI SWA ... 7

B. KEGI ATAN BELAJAR ... 8

1. Kegiatan Belajar 1 : Konsep Algoritma dan Diagram Alir .. 8

a. Tujuan Kegiatan Pemelajaran ... 8

b. Uraian Materi 1 ... 8

c. Rangkuman 1... 15

d. Tugas 1 ... 16

(7)

2. Kegiatan Belajar 2 : Algoritma dan Diagram Alir Untuk Proses

Pengulangan ... 19

a. Tujuan Kegiatan Pemelajaran ... 19

b. Uraian Materi 2 ... 19

c. Rangkuman 2... 22

d. Tugas 2 ... 22

e. Tes Formatif 2... 22

f. Kunci Jawaban Formatif 2 ... 23

g. Lembar Kerja 2 ... 26

3. Kegiatan Belajar 3 : Operasi Pada Strukt ur Data Larik 1 Dimensi... 28

a. Tujuan Kegiatan Pemelajaran ... 28

b. Uraian Materi 3 ... 28

c. Rangkuman 3... 33

d. Tugas 3 ... 33

e. Tes Formatif 3... 33

f. Kunci Jawaban Formatif 3 ... 34

g. Lembar Kerja 3 ... 36

I I I . EVALUASI

... 38

A. PERTANYAAN ... 38

B. KUNCI JAWABAN EVALUASI ... 38

C. KRI TERI A KELULUSAN ... 43

I V. PENUTUP

... 44

(8)

PETA KEDUDUKAN MODUL

A 1 2 3

Stand Alone Programmer I

Multi User Programm er

B

C

G N

F M

E D

O H

I

J

K

L

R

S

T

U

P

Q

SLTP & yang sederajat

(9)

Keterangan :

Kode

Kode

Kompetensi

Kompetensi

A SWR.OPR.200.(1).A Mengoperasikan Sistem Operasi

B SWR.OPR.100.(1).A Menginstalasi software

C SWR.MNT.100.(1).A Mengubah konfigurasi software

D SWR.DEV.100.(1).A Menyiapkan dan melakukan survey untuk menentukan kebutuhan data

E SWR.OPR.309.(1).A Mengoperasikan software bahasa pemograman level 1

F DTA.OPR.115.(1).A Konversi data level 1

G SWR.DEV.500.(1).A Menguji program level 1

H HDW.OPR.103.(1).A Mengoperasikan sistem operasi jaringan komput er berbasis teks

I HDW.OPR.104.(1).A Mengoperasikan sistem operasi jaringan komput er berbasis GUI

J DTA.DEV.101.(3).A Melakukan perancangan pengumpulan data

K SWR.DEV.300.(2).A Melakukan desain dan perancangan software

L SWR.DEV.400.(2).A Melakukan pengkodean program

M DTA.MNT.101.(2).A Melakukan back up data

N DTA.MNT.102.(2).A Melakukan restore data

O SWR.OPR.303.(2).A Mengoperasikan software aplikasi basis data

P DTA.OPR.119.(2).A Membuat query data Q SWR.DEV.500.(2).A Menguji program

R SWR.DEV.401.(2).A Membangun interface dengan bahasa pemograman berorientasi objek

S SWR.DEV.402.(3).A Melakukan pengkodean program

T SWR.OPR.304.(3).A Mengoperasikan bahasa pemograman berbasis web

(10)

PERI STI LAHAN/ GLOSSARY

Algoritma : urut-urutan langkah pekerjaan yang ditulis dalam notasi

diskriptif yang logis untuk pencapaian suatu solusi atau untuk

menuju ke suatu tujuan tertentu.

Algoritma pemrograman : adalah urut-urutan instruksi yang disusun

sedemikian rupa sehingga mempunyai urutan nalar yang

tepat unt uk menyelesaikan suatu persoalan.

Buble sort : Salah satu metoda atau teknik pengurutan data yang tidak

efisien.

Goto... : Instruksi pada bahasa pemrograman pascal untuk melakukan

proses percabangan tak bersyarat.

Loop : Kalang, iterasi atau pengulangan suatu proses.

Mod : Salah satu operator aritmatika pada bahasa Pascal untuk

mendapatkan sisa hasil bagi.

Operator : Tanda yang digunakan dalam proses operasi aritmatik

misalnya operasi perkalian dengan ‘* ’, penjumlahan dengan

‘+ ’, pengurangan dengan ‘-‘, dll.

Pseudocode : cuplikan dari kode-kode program yang dianggap penting.

RPL : singkatan dari Rekayasa Perangkat Lunak.

User : Pengguna, pemakai yakni seseorang yang menggunakan,

mengoperasionalkan program kita.

(11)

BAB I

PENDAHULUAN

A. DESKRI PSI JUDUL

Menyiapkan dan Melakukan Survey untuk Menentukan

Kebutuhan Data

merupakan modul teori dan atau praktikum yang

membahas tentang langkah-langkah awal dalam melakukan

pemrograman komputer bagi pemula.

Modul ini terdiri dari 3 (tiga) kegiatan belajar, yaitu Konsep Algoritma

dan Diagram Alir, Algoritma dan Diagram Alir Untuk Proses

Pengulangan, Operasi Pada Struktur Data Larik Satu Dimensi. Dengan

menguasai modul ini diharapkan peserta diklat mampu menggunakan

algoritma pemrograman, mengidentifikasi kebutuhan data, dan

membuat diagram alir data dan program untuk berbagai kasus yang

sering terjadi di lapangan.

B. PRASYARAT

Kemampuan awal yang dipersyaratkan untuk mempelajari modul ini

adalah :

1) Peserta diklat telah lulus modul / materi diklat Mengoperasikan

Sistem Operasi berbasis GUI .

2) Peserta diklat telah lulus modul / materi Menginstalasi Software.

3) Peserta diklat telah lulus modul / materi Mengubah konfigurasi

software.

4) Peserta diklat mampu mengoperasikan piranti-piranti periferal

(12)

C. PETUNJUK PENGGUNAAN MODUL

1. Petunjuk Bagi Sisw a

Siswa diharapkan mampu berperan aktif dan berinteraksi dengan

sumber belajar yang mendukungnya, karena itu harus diperhatikan

beberapa hal sebagai berikut :

a. Langkah – langkah Belajar

Modul ini berisi materi mengenai kompetensi menyiapkan dan

melakukan survey untuk menentukan kebutuhan data, oleh sebab itu

perlu diperhatikan beberapa hal agar peserta diklat lebih berkompeten

dan profesional, yaitu :

1) Apa yang harus diketahui tentang sistem operasi berbasis GUI ?

2) Apa yang harus dikerjakan dalam proses menginstall suatu

software aplikasi?

3) Apa yang harus dikerjakan pertama kali dalam persiapan dan

survey untuk menentukan kebutuhan data?

4) Bagaimana mengetahui bahwa kita telah berhasil atau belum

dalam menyiapkan dan melakukan survey untuk menentukan

kebutuhan data?

5) Apa yang harus dilakukan jika kita belum berhasil?

6) Apa yang harus dilakukan jika kita telah berhasil?

7) Apakah kita sudah sesuai aturan dalam menyiapkan dan

melakukan survey untuk menentukan kebutuhan data?

b. Perlengkapan yang Harus Dipersiapkan

Untuk menunjang keselamatan kerja dan kelancaran tugas yang akan

(13)

c. Hasil Pelatihan

Anda akan mampu melakukan tugas/ pekerjaan menyiapkan dan

melakukan survey untuk menentukan kebut uhan data yang sesuai

dengan program aplikasi yang akan kita bangun.

2. Peran Guru

Guru yang akan mengajarkan modul ini hendaknya mempersiapkan diri

sebaik-baiknya yaitu mencakup aspek strategi pemelajaran,

penguasaan materi, pemilihan metode, alat bantu media pemelajaran,

dan perangkat evaluasinya.

D. TUJUAN AKHI R

1. Peserta diklat mampu menggunakan fungsi dan operator algoritma

pemrograman.

2. Peserta diklat mampu mengidentifikasi dan menentukan kebutuhan

data.

3. Peserta diklat mampu menyusun hasil survey di lapangan menjadi

suatu acuan pembuatan program.

4. Peserta diklat mampu mempraktekkan pembuatan alur data dan

(14)

E. KOMPETENSI

MATERI POKOK PEMELAJARAN SUB

BELAJAR SIKAP PENGETAHU

(15)

MATERI POKOK PEMELAJARAN

BELAJAR SIKAP PENGETAHU

AN KETRAMPILAN

3. Melakukan survey di lapangan

§ Prinsip kerja 4 struktur , pilihan, dan pengulangan / iterasi)

§ Prinsip kerja algoritma file berurutan

§ Prinsip kerja struktur data array dan matrik

§ Prinsip kerja metode pencarian (searching)

§ Prinsip kerja metode pengurutan (sorting)

§ Prinsip kerja penggabung an (merging)

§ Prinsip kerja metode

§ Teliti dan cermat

(16)

F. CEK KEMAMPUAN

Untuk mengetahui kemampuan awal yang telah Anda miliki, maka

isilah cek lis (

) seperti pada tabel di bawah ini dengan sikap jujur dan

dapat dipertanggungjawabkan.

1. Menggunakan fungsi dan operator

algoritma

pemrograman dan atau diagram alir

Tes Formatif 1 1. Memahami

prosedur survey penentuan kebutuhan

data 2. Menjelaskan prosedur operasi fungsi dan operator pada algoritma

pemrograman dan atau diagram alir

Tes Formatif 2

1. Menjelaskan fungsi berbagai macam jenis data.

2. Mengidentifikasi kebutuhan data sesuai dengan yang diinginkan

Tes Formatif 4

1. Menjelaskan berbagai metode pada

2. Menjelaskan dan menggunakan struktur data

Tes Formatif 6

3. Mengisi log sheet/ report sheet

Pembuatan diagram alur data dan diagram alir program

Tes Formatif 7

Apabila anda menjawab

TI DAK

pada salah satu pernyataan di atas,

(17)

BAB I I

PEMELAJARAN

A. RENCANA PEMELAJARAN SI SWA

Kompetensi : Menyiapkan dan melakukan survey untuk

menentukan kebutuhan data

Jenis Kegiatan Tanggal Waktu Tempat Belajar

Alasan Perubahan

Tanda Tangan

Guru

Konsep Algoritma dan Diagram Alir Algoritma dan Diagram Alir untuk Proses Pengulangan (Loop)

(18)

B. KEGI ATAN BELAJAR

1. Kegiatan Belajar 1 : Konsep Algoritma dan Diagram Alir

a. Tujuan Kegiatan Pemelajaran

1) Peserta diklat mampu menerangkan konsep algoritma

2) Peserta diklat mampu menerangkan konsep diagram alir.

3) Peserta diklat mampu menggunakan konsep algoritma dan diagram

alir untuk suatu kasus tertentu yang sederhana dalam kehidupan

sehari-hari.

b. Uraian Materi 1

Dalam proses rekayasa perangkat lunak (RPL) dapat dipakai beberapa

model pendekatan. Salah satu model rekayasa perangkat lunak yang

paling tua (konvensional) dan sudah populer adalah model sekuensial

linear yang sering disebut dengan “siklus kehidupan klasik” atau

“model air terjun”.

Gambar 1. Model Sekuensial Linier

Tahap paling awal pada proses RPL dengan pendekatan model

sekuensial linier ini adalah tahapan analisis. Keberhasilan pada tahap

ketiga kode (implementasi) sangat ditentukan oleh keberhasilan pada

tahapan analisis dan desain.

Dalam tahap analisis yang dilakukan diantaranya adalah melakukan

(19)

mencakup penentuan tipe data, struktur data, antarmuka input output

dan penentuan bahasa pemrograman yang dipakai.

Untuk lingkup pekerjaan yang sederhana tahapan analisis dan desain

ini bisa dilakukan dengan pendekatan algoritma pemrograman dan

diagram alir data (program).

Konsep Algoritma

Algoritma dalam kont ek umum adalah suatu urut-urutan langkah

pekerjaan yang ditulis dalam notasi diskriptif yang logis untuk

pencapaian suatu solusi atau untuk menuju ke suatu tujuan tertentu.

Untuk memudahkan pemahaman tentang algoritma ini dipakai suatu

contoh kasus, misalnya diinginkan untuk membuat secangkir kopi

manis, maka algoritmanya adalah:

1) Mulai

2) Siapkan kopi dan gula pasir

3) Siapkan satu cangkir bersih dan satu sendok makan

4) Masukkan sepucuk sendok makan kopi ke dalam cangkir

5) Masukkan satu setengah sendok makan gula pasir ke dalam

cangkir

6) Tuangkan air panas ke dalam cangkir hingga hampir penuh

7) Aduk-aduk hingga semua gula larut dan tercampur

8) Selesai

Hal penting selanjutnya yang harus dipikirkan adalah menentukan

kebutuhan data. Jika dipandang ketujuh langkah algoritma di atas

adalah membangun suatu sistem sederhana, maka dapat diidentifikasi

kebutuhan data untuk masukan ke sistem (input) adalah : kopi, gula,

(20)

Gambar 2. Gambaran Suatu Sistem Sederhana

Dari satu contoh sederhana di atas dapat dikembangkan sendiri

algoritma-algoritma untuk cont oh kasus yang lain.

Sementara itu yang disebut dengan program secara umum, adalah

kumpulan instruksi atau perintah yang disusun sedemikian rupa

sehingga mempunyai urutan nalar yang tepat untuk menyelesaikan

suatu persoalan. Jadi algoritma pemrograman bisa dijelaskan sebagai

urut-urut an instruksi atau perintah yang disusun sedemikian rupa

sehingga mempunyai urutan nalar yang tepat dan harus dipatuhi untuk

menyelesaikan suatu persoalan.

Contoh suatu algoritma pemrograman yang sederhana adalah

algoritma untuk menentukan kuadrat dari suatu sembarang bilangan

yang diberikan. Di sini kita harus menentukan tujuan akhir program

nanti apa?

Langkah 1 : Mulai.

Langkah 2 : Masukkan atau berikan sembarang bilangan.

Simpan dalam variabel

X

.

Langkah 3 : Kalikan bilangan itu (

X

) dengan dirinya

sendirinya, dan simpan hasilnya di variabel

Y

atau

Y=X*X

.

Langkah 4 : Tampilkan hasilnya (

Y

).

PROSES

Input:

Kopi, gula, air panas

Output:

(21)

Sampai disini, langkah selanjutnya adalah mengidentifikasi dan

menentukan kebutuhan dan atau jenis dat a yang dapat ditampung

oleh variabel

X

(data masukan) dan variabel

Y

(data keluaran),

sehingga nantinya akan menentukan jenis variabel

X

dan

Y

tersebut.

Jelas bahwa jenis variabel

Y

tergantung dari jenis variabel

X

karena

Y

menampung hasil operasi perkalian dari variabel

X

, apabila

X

dapat

menampung bilangan pecahan (real) maka

Y

juga harus dapat

menampung bilangan real, dengan kata lain jika

X

bertipe real

(integer) maka

Y

juga harus bertipe real. Tet api jika

X

adalah bilangan

bulat (integer) maka hasil kuadratnya pasti bilangan bulat juga,

sehingga

Y

bisa bertipe integer atau real.

Disamping untuk keperluan proses analisis dan desain, algoritma

pemrograman juga berfungsi untuk memberikan kerangka berpikir

yang lebih konkrit dan jelas kepada programmer sehingga dapat

mempermudah pekerjaan pada proses koding.

Diagram Alir ( Flow Chart)

Sementara itu untuk konsep tentang diagram alir, hampir sama

dengan konsep algoritma, hanya saja di sini penulisannya lebih

disederhanakan yakni tidak dideskripsikan dengan kalimat-kalimat

yang panjang tetapi dengan memakai simbol-simbol fungsi dan

operator. Adapun simbol-simbol yang sering digunakan dalam

(22)

: untuk mulai atau selesai program.

: untuk masukan (input) atau keluaran (output) data

: untuk pemrosesan data, misalnya:

perhitungan dengan operator aritmatik, relasi atau logika

: percabangan bersyarat, atau pengambilan keputusan

: arah aliran data dan atau proses

: persambungan aliran (ke A dan dari A)

Gambar 3. Simbol-simbol yang Digunakan dalam Diagram Alir

Ada beberapa operator yang digunakan yakni operator aritmatika dan

operator relasi (himpunan). Diagram alir bisa merupakan representasi

dari aliran data atau aliran program (urut-urutan instruksi). Tetapi

biasanya suatu gambar diagram alir merupakan representasi

kedua-duanya, artinya suatu diagram alir bisa dipandang sebagai diagram

aliran data sekaligus sebagai diagram aliran instruksi-instruksi

A

(23)

Dalam contoh kasus algoritma pemrograman di atas dapat dibuat

diagram alir-nya sebagai berikut.

X : real

Y : real

Gambar 4. Diagram Alir Menentukan Kuadrat dari Sembarang Nilai X

Dari Gambar 4 di atas t erlihat semakin jelas alur berpikir kita dan

semakin mudah untuk menuangkannya dalam bentuk kode program.

Kapan kita harus mulai proses pemasukkan data, lalu kapan harus

melakukan proses pengolahan, dan kapan harus menampilkan hasil

pengolahan tersebut, sudah terbayang dengan jelas.

Di sini juga dapat dilihat bahwa diagram alir di atas disamping

merupakan diagram alir dari instruksi-instruksi program, juga sekaligus

menunjukkan diagram alir data.

mulai

Masukkan X

Y = X * X

Tampilkan Y

(24)

Proses Percabangan

Algoritma dan diagram alir yang telah dibahas di atas adalah

menggunakan struktur data berurutan, artinya dari langkah pertama

sampai dengan langkah terakhir tidak ada proses percabangan

(pengambilan keputusan), pilihan ataupun pengulangan.

Sementara itu untuk proses percabangan, digunakan apabila di dalam

prosesnya, urut-urutan aliran program diharuskan untuk melompat

atau pergi ke suatu langkah tertentu yang tidak berurutan, hal ini

sering juga disebut dengan percabangan. Proses percabangan ini bisa

dengan syarat (percabangan bersyarat) ataupun t idak (percabangan

tidak bersyarat).

Untuk percabangan bersyarat, urut-urutan instruksi program akan

melompat ke suatu langkah tertentu yang dituju, jika syarat yang

diberikan telah terpenuhi. Biasanya dalam implementasinya nanti

menggunakan instruksi I F (jika).... . Kemudian untuk percabangan

yang tidak bersyarat urut-urutan program akan langsung melompat ke

suatu langkah tertentu yang dituju, apabila pengerjaan urut-urut an

instruksi telah sampai pada instruksi pergi ke label... (goto label)

Contoh kasus penggunaan simbol percabangan bersyarat atau

pengambilan keputusan, misalnya dalam kasus di atas, tujuan program

tidak untuk menghitung Y = X* X (atau X2), tetapi untuk mengetahui

apakah nilai X (nilai yang kita masukkan) itu bilangan positif atau

negatif. Jika demikian berarti ada suatu instruksi pengetesan yang

digunakan untuk persyaratan melompat atau pengambilan keputusan,

jika X > = 0 (nol atau positif) maka program akan menampilkan pesan

(25)

Gambar 5. Contoh Diagram Alir Percabangan Bersyarat

c. Rangkuman 1

1) Algoritma pemrograman adalah urut-urutan perintah yang disusun

sedemikian rupa sehingga mempunyai urutan nalar yang tepat dan

harus dipatuhi untuk menyelesaikan suatu persoalan.

2) Sedangkan diagram alir adalah penulisan algoritma pemrograman

dengan menggunakan simbol-simbol, yang dapat memudahkan

dalam memahami alur program secara menyeluruh.

3) Algoritma pemrograman dan diagram alir keduanya dapat

digunakan unt uk tahapan analisis dan desain dalam proses RPL

yang sederhana. mulai

Masukkan X

X < 0 ?

Tampilkan pesan “X bilangan negatif”

selesai

Ya

(26)

d. Tugas 1

1) Pelajarilah uraian materi tentang algoritma pemrograman dan

diagram alir ini!

2) Ada berapa macam jenis percabangan yang anda ketahui, jelaskan

perbedaan masing-masing.

3) Buatlah algoritma pemrograman untuk diagram alir Gambar 4 di

atas.

4) I dentifikasi jenis data masukan dan data keluaran dari program

yang dihasilkan dari diagram alir Gambar 5 di atas.

e. Tes Formatif 1

1) Gambarkan dan jelaskan fungsi simbol-simbol yang dipakai untuk

membangun diagram alir!

2) Buatlah algoritma pemrograman untuk diagram alir dalam Gambar

5 di atas!

3) Diinginkan suatu program aplikasi yang bertujuan untuk

mengetahui apakah suatu bilangan X yang dimasukkan oleh

pengguna (user) dapat dibagi 3 atau tidak. Buatlah algoritma

pemrograman dan diagram alirnya!

f. Kunci Jaw aban Tes Formatif 1

1) Lihat Gambar 3 tentang simbol-simbol yang digunakan dalam

diagram alir, halaman 12.

2) Langkah 1: Mulai.

Langkah 2: Masukkan atau berikan sembarang bilangan. Simpan

(27)

Langkah 4: Tampilkan pesan “X bilangan negatif”, pergi langkah

6.

Langkah 5: Tampilkan pesan “X bilangan positif atau nol”.

Langkah 6: Selesai.

3) Langkah 1: Mulai.

Langkah 2: Masukkan atau berikan sembarang bilangan. Simpan

dalam variabel X.

Langkah 3: Apakah X mod 3 = 0 ?, jika ya : pergi ke langkah 4,

jika tidak : pergi ke langkah 5.

Langkah 4: Tampilkan pesan “X dapat dibagi 3”, pergi langkah

6.

Langkah 5: Tampilkan pesan “X tidak dapat dibagi 3”.

Langkah 6: Selesai.

Diagram alirnya:

Masukkan X

X mod 3 = 0

?

Tampilkan pesan “X dapat dibagi 3”

selesai Ya

(28)

g. Lembar Kerja 1

Alat dan bahan :

Penggaris, alat tulis lengkap, dan kertas putih kosong 5 lembar.

Kesehatan dan Keselamatan Kerja

1) Gunakan peralatan sesuai dengan fungsinya.

2) Bekerjalah sesuai dengan cara kerja atau petunjuk yang telah

ditentukan.

Langkah Kerja

1) Siapkan alat dan bahan yang digunakan.

2) Salinlah gambar 2 di atas kertas kosong.

3) Buatlah diagram alir di atas kertas kosong untuk contoh-contoh

kasus di atas (Gambar 3, 4 dan 5)

4) Tuliskan langkah-langkah algoritma pemrogramannya di dekat

(boleh di samping atau di bawah langsung) dari gambar

simbol-simbol pada diagram alir tersebut.

5) Tuliskan nama dan nomor urut peserta diklat di pojok kanan

bawah di setiap kertas kerja.

6) Periksa dan perbaiki gambar atau tulisan yang kurang sempurna

atau salah.

7) Laporkan hasil pekerjaan anda pada guru pembimbing (pengajar).

8) Jika semua telah selesai rapikan alat dan bahan kemudian

(29)

2. Kegiatan Belajar 2: Algoritma dan Diagram Alir untuk Proses

Pengulangan ( Looping)

a. Tujuan Kegiatan Pemelajaran

1) Peserta diklat mampu mengidentifikasi suatu permasalahan di

lapangan yang mana permasalahan tersebut harus diselesaikan

dengan cara perulangan (looping).

2) Peserta diklat mampu mengidentifikasi dan menentukan jenis dari

semua kebutuhan data (baik data untuk masukan ataupun data

keluaran).

3) Peserta diklat dapat membuat algoritma dan diagram alir untuk

memecahkan masalah tersebut.

b. Uraian Materi 2

Dalam Kegiatan Belajar 1 telah dipelaj ari tentang konsep algoritma dan

diagram alir pemrograman. Dalam Kegiatan Belajar 2 ini akan dipelajari

lebih lanjut t entang penggunaan algoritma dan diagram alir

pemrograman untuk mendesain program yang menggunakan proses

pengulangan atau looping.

Loop adalah istilah tidak resmi untuk menyatakan segala jenis strukt ur

kendali yang mengalami pengulangan (iterasi); yaitu, setiap struktur

yang menyebabkan program berulang kali melaksanakan suatu blok

kode. Memakai loop adalah salah satu aspek pemrograman yang

paling komplek dalam bahasa dengan aturan tertentu. Mengetahui

cara dan kapan setiap loop itu dipakai sangat menentukan pembuatan

software berkualitas tinggi.

(30)

setiap kali diulangi selalu diperiksa apakah itu adalah loop terakhir. Ada

juga jenis loop yang tidak pernah berakhir.

Macam loop juga dibedakan oleh lokasi di mana pengujian

kesempurnaan itu dilaksanakan. Pengujian dapat dilaksanakan di awal,

tengah atau akhir loop. Karakteristik ini memberitahukan bahwa

apakah sedikitnya loop itu dieksekusi sat u kali. Jika pengujian

dilakukan di awal, maka bagian utama loop tidak perlu dieksekusi. Jika

loop diuji di akhir, bagian badan loop harus dieksekusi sedikitnya satu

kali. Jika loop diuji ditengah, maka bagian loop yang mendahului

bagian yang diuji, dieksekusi sedikitnya satu kali. Tapi bagian loop

sesudahnya, yaitu yang menyusul bagian yang sudah diuji tidak perlu

dieksekusi sama sekali.

Untuk mempermudah penjelasan dan pemelajaran t entang proses loop

ini akan digunakan studi kasus, sebagai berikut. Diinginkan untuk

membuat program yang dapat menampilkan semua bilangan genap

antara 0 sampai dengan 100. Untuk menyelesaikan permasalahan itu

maka harus dilakukan identifikasi masalah t erlebih dahulu. Bilangan

genap adalah bilangan yang habis dibagi dua, sehingga untuk bilangan

genap antara 1 –100 adalah 2,4,6,8, .. dst. Hal ini akan lebih efektif

jika dipecahkan dengan memakai loop. Adapun algoritmanya adalah

sebagai berikut:

Langkah 1 : Mulai

Langkah 2 : Tentukan i= 1

Langkah 3 : Apakah

i mod 2 = 0

, jika ya (i bilangan

genap), maka pergi ke langkah 4, tetapi jika

tidak, maka pergi ke langkah 5

(31)

Langkah 6 : Apakah

i > 100

jika ya, pergi ke langkah 7,

jika tidak maka kembali ke langkah 3

Langkah 7 : Selesai

Dalam langkah 3 algoritma di atas terdapat operator

Mod. Mod

adalah suatu operator aritmatika yang digunakan untuk menghitung

sisa hasil bagi antara dua buah bilangan bulat atau integer. Hasil dari

operasi

mod

ini adalah suatu bilangan integer juga.

Kemudian untuk diagram alir programnya adalah sebagai berikut:

mulai

i = 1

i mod 2 = 0

?

Tulis/ tampilkan nilai i Ke layar monitor

Ya

Tidak

i = i + 1

i > 100 ?

Ya

Tidak Pengujian di akhir looping

(32)

Di sini terlihat bahwa loop yang dipakai adalah jenis loop dengan

pengujian di akhir, artinya bagian badan loop harus dieksekusi

sedikitnya satu kali.

c. Rangkuman 2

1) Loop yang biasa digunakan berdasarkan letak pengujiannya ada

tiga macam: loop dengan pengujian di awal, di akhir dan di tengah.

2) Sangat penting untuk diketahui cara dan kapan suatu jenis loop itu

dipakai, karena hal ini sangat menentukan pembuatan software

yang berkualitas tinggi.

d. Tugas 2

1) Buatlah algoritma dan diagram alir untuk kasus di atas, tetapi

dengan menggunakan loop pengujian di awal.

2) Buatlah algoritma dan diagram alir unt uk kasus diatas, tetapi

dengan menggunakan loop pengujian di tengah.

3) Berikan komentar dan kesimpulan dari hasil pekerjaan item 1 dan 2

di atas.

e. Tes Formatif 2

1) Sebutkan dan jelaskan macam-macam loop berdasarkan letak

pengujiannya!

2) Buatlah algoritma dan diagram alir program untuk menampilkan

seluruh bilangan yang habis dibagi 3 dan juga habis dibagi 5,

antara 1-100!

3) Buatlah algoritma dan diagram alir program untuk menghitung

jumlah bilangan ganjil antara 1-100!

(33)

f. Kunci Jaw aban Tes Formatif 2

1) Sudah dijelaskan dalam seksi Uraian Materi 2 di atas.

2) Algoritma untuk menampilkan seluruh bilangan antara 1-100 yang

habis dibagi 3 dan juga habis dibagi 5.

Langkah 1 : Mulai

Langkah 2 : Tentukan

i=1

Langkah 3 : Apakah

i mod 3 = 0

, jika ya (i habis dibagi

3), maka teruskan ke langkah 4 berikut, tetapi

jika tidak, maka lompat ke langkah 6

Langkah 4 : Apakah

i mod 5=0

, jika ya (i juga habis

dibagi 5), maka terus ke langkah 5, tetapi jika

tidak, maka lompat ke langkah 6

Langkah 5 : Tampilkan

i

Langkah 6 : Tentukan

i = i + 1

Langkah 7 : Apakah

i > 100

jika ya, pergi ke langkah 8,

jika tidak, maka kembali ke langkah 3

(34)

Diagram alirnya adalah seperti gambar berikut ini.

Gambar 8. Diagram alir jawaban tes formatif-2 nomor 2

3) Algoritma menghitung jumlah bilangan ganjil antara 1-100.

Langkah 1 : Mulai

mulai

i = 1

i mod 3 = 0

?

Tulis/ tampilkan nilai i Ke layar monitor

selesai

Ya

Tidak

i = i + 1

i > 100 ?

Ya Tidak

loop

i mod 5 = 0

?

Ya

(35)

Langkah 3 : Apakah

i mod 2 = 1

, jika ya (i bilangan

ganjil), maka terus ke langkah 4 berikut, tetapi

jika tidak, maka lompat ke langkah 5

Langkah 4 : Tentukan

jumlah := jumlah + i;

Langkah 5 : Tentukan

i = i + 1

Langkah 6 : Apakah

i > 100

jika ya, langsung ke langkah

7, jika tidak, maka kembali ke langkah 3 (loop).

Langkah 7 : Tampilkan pesan”Jumlah bilangan ganjil antara

1-100 = “, Tampilkan isi peubah

jumlah.

Langkah 8 : Selesai

Diagram alirnya:

mulai

i = 1, jumlah= 0

i mod 2 = 1

?

Tulis/ tampilkan nilai jumlah Ke layar monitor

Ya

Tidak

i = i + 1

i > 100 ?

Ya Tidak

loop

(36)

4) Untuk soal nomor 2 dan 3, kebut uhan datanya adalah: data

bilangan bulat antara 1-100. Bilangan ini tidak disimpan dalam

suatu variabel namun, dibangkitkan dan diproses langsung ketika

program berjalan. Data output, untuk yang nomor 2: bilangan

antara 1-100 yang habis dibagi 3 dan habis pula dibagi 5 yakni:

15, 30, 45, 60, 75, dan 90.

Sementara itu unt uk nomor 3 data output nya adalah sebuah

bilangan bulat ( integer) yang merupakan hasil penjumlahan seluruh

bilangan ganjil antara 1-100 = 1 + 3 + 5 + 7 + 8 + ... + 95 + 97

+ 99.

g. Lembar Kerja 2

Alat dan bahan :

Penggaris, alat tulis lengkap, dan kertas putih kosong 5 lembar.

Kesehatan dan Keselamatan Kerja

1) Gunakan peralatan sesuai dengan fungsinya.

2) Bekerjalah sesuai dengan cara kerja atau petunjuk yang telah

ditentukan.

Langkah Kerja

1) Siapkan alat dan bahan yang digunakan.

2) Kerjakan tugas 2 dan tes formatif 2 di atas dengan kertas kosong

yang telah disediakan.

3) Pada kasus tes formatif-2 nomor 3 di at as mengunakan loop

pengujian akhir, bagaimanakah gambar diagram alir dan

algoritmanya apabila menggunakan jenis loop pengujian awal dan

(37)

5) Periksa dan perbaiki gambar atau tulisan yang kurang sempurna

atau salah.

6) Laporkan hasil pekerjaan anda pada guru pembimbing (pengajar).

7) Jika semua telah selesai rapikan alat dan bahan kemudian

(38)

3.

Kegiatan Belajar 3 : Operasi Pada Struktur Data Larik 1

Dimensi

a.

Tujuan Kegiatan Pemelajaran

1) Peserta diklat dapat mengidentifikasi berbagai macam

permasalahan yang ada di lapangan yang berkaitan dengan

operasi larik.

2) Peserta diklat mampu mengidentifikasi dan membuat algoritma

dan diagram alir suatu permasalahan unt uk menentukan

pencarian (searching) dan pengurutan (sorting).

b.

Uraian Materi 3

Selama ini kita hanya mempelajari struktur data tunggal artinya data

masukan yang akan diproses oleh program dan data keluaran

sebagai hasil proses program bersifat tunggal (tidak berkelompok).

Padahal permasalahan yang dijumpai di lapangan banyak jenis data

yang ternyata teridentifikasi tepat apabila disimpan dengan peubah

(variabel) dengan strukt ur data larik (array). Larik adalah kumpulan

data yang sejenis dengan masing-masing elemen anggotanya

memiliki sebuah nomor indek elemen yang unik. Contoh data yang

tepat disimpan dengan struktur data larik ini adalah daftar nilai

siswa. Apabila t idak disimpan dalam struktur data larik maka bila ada

30 siswa, diperlukan deklarasi 30 peubah unik untuk menyimpan

masing-masing nilai siswa tersebut. Tetapi apabila dengan struktur

data larik cukup dideklarasikan satu peubah jenis larik dengan indek

1 sampai dengan 30, sebagai berikut :

(39)

nilai[1] :=67.5;

(nilai untuk siswa ke-1)

nilai[2] :=80;

(nilai untuk siswa ke-2) .

. .

nilai[30]:=75,5;

(nilai untuk siswa ke-30)

Sampai di sini struktur data larik yang telah kita pelajari di atas

adalah larik satu dimensi. Struktur data larik yang lebih komplek lagi

adalah struktur data larik 2 dimensi. Larik 2 dimensi biasanya dipakai

untuk menyimpan data dari suatu matrik atau tabel, yang mana

diperlukan informasi nomor baris dan kolom unt uk menunjuk tiap

elemennya. Sehingga dalam struktur data larik 2 dimensi tiap elemen

mempunyai 2 buah indek, satu untuk indek nomor baris dan satu lagi

untuk indek nomor kolom. Misalnya untuk menyimpan data dari

semua elemen matrik berukuran 3x4, maka deklarasi peubahnya

adalah sebagai berikut:

Var matrik : array[1..3][1..4] of real;

matrik adalah nama peubah bertipe larik 2 dimensi. Untuk pengisian

nilai ke variabel larik 2 dimensi ini sama dengan larik 1 dimensi,

misalnya : matrik[ 1] [ 3] : = 5,75;

Pencarian Dat a ( Searching)

Mencari suatu data atau searching pada sekelompok data yang

sejenis adalah suatu proses yang sering dijumpai dilapangan.

Misalnya dalam contoh kasus larik 1 dimensi yang digunakan untuk

menyimpan nilai dari 30 siswa di atas, diinginkan mencari siswa yang

nilainya sama dengan 80, atau mencari semua siswa yang nilainya >

(40)

hingga data (indek) terakhir pada peubah larik tersebut dengan data

yang dicari, jika ada yang sama berarti proses pencarian sukses atau

ketemu, tetapi jika sampai data yang terakhir tidak ada yang sama

berarti proses pencarian gagal atau t idak ditemukan data yang

dimaksud.

Dalam contoh larik nilai dari 30 siswa di atas, algoritma untuk proses

searching ini adalah sebagai berikut.

Langkah 1: Mulai.

Langkah 2: Masukkan data yang akan dicari, simpan dalam

variabel X.

Langkah 3: Ketemu: = 0; i: = 1. (inisialisasi variabel ketemu dan

penghitung jumlah loop)

Langkah 4: Apakah nilai[ i] = X, jika ya: set variabel Ketemu: = 1 lalu

pergi ke langkah 7; jika tidak, pergi ke langkah 5

berikut.

Langkah 5: Apakah i= 30, jika ya pergi ke langkah 7, jika tidak

pergi ke langkah 6 berikut.

Langkah 6: i= i+ 1; kembali ke langkah 4.

Langkah 7: Apakah ketemu= 1? Jika ya langsung ke langkah 8

berikut ini, jika tidak, pergi ke langkah 9.

Langkah 8: Tampilkan pesan “Proses pencarian berhasil. Data X

ditemukan, yakni pada elemen nilai ke i”. Lalu pergi ke

langkah 10.

Langkah 9: Tampilkan pesan “Proses pencarian gagal (data tidak

ditemukan)”

Langkah 10: Selesai.

(41)

awalnya diasumsikan data tidak ketemu sehingga ketemu diset nol,

jika ditemukan data yang dicari maka variabel ketemu ini langsung

diubah statusnya menjadi 1, baru pergi ke langkah selanjutnya.

Apabila sampai akhir proses pembandingan status ketemu masih

sama dengan nol, berarti tidak ditemukan data yang dicari dalam

variabel larik tersebut.

Pengurutan Dat a ( Sorting)

Proses lain yang tak kalah pentingnya dan sering dijumpai dilapangan

adalah proses mengurutkan data dalam suatu variabel larik (dalam

hal ini larik 1 dimensi).

Pengurutan data ada dua macam yakni urut naik (ascending) dan

urut t urun (decending). Dalam urut naik, data dalam larik akan ditata

ulang dengan elemen yang nilainya terkecil akan ditempatkan pada

posisi nomor indek yang pertama dan elemen dengan nilai terbesar

akan ditempatkan pada posisi nomor indek yang terakhir.

Ada beberapa metode pengurutan yang dikenal saat ini, tetapi yang

sederhana dan relatif mudah diimplementasikan adalah metoda

Buble Sort termodifikasi. Menurut I nsap Santosa (1992), Metoda

Buble Sort ini metoda yang paling tidak efisien karena banyak sekali

langkah-langkah pembandingan data dan penukaran. Namun dengan

memperhatikan algoritma metode pengurut an Seleksi, maka metoda

Buble Sort dapat dimodifikasi sehingga langkah-langkahnya menjadi

lebih efisien.

Prinsip dari metoda ini adalah sebagai berikut (pada urut

turun/ decending): dimulai dari data pertama (elemen larik pada

(42)

kedua data tersebut dipertukarkan sehingga data kedua menjadi data

pertama dan data pertama menjadi data kedua, selanjutnya data

pertama dibandingkan lagi dengan data ketiga (elemen larik pada

nomor indek yang ketiga), apabila data ketiga > data pertama maka

keduanya ditukarkan, demikian seterusnya hingga data terakhir

(elemen larik pada nomor indek yang terakhir) dibandingkan dengan

data pertama. Perbandingan dilanjutkan dengan data kedua sebagai

patokannya, dan dibandingkan dengan data ketiga dan seterusnya

hingga data terakhir. Demikian algoritma berulang terus hingga data

n-1 (dimana n adalah jumlah elemen larik seluruhnya, yang mana

dalam contoh ini n= 30) dipakai sebagai patokannya.

Dalam contoh larik nilai dari 30 siswa di atas, algoritma untuk proses

pengurut an (ascending) adalah sebagai berikut.

Langkah 1: Mulai

Langkah 2: Tentukan

i := 1;

Langkah 3: Tentukan

j := i + 1;

Langkah 4: Apakah

nilai[i]>nilai[j]

? Jika tidak, pergi ke

langkah 6, Jika ya lanjutkan ke langkah 5 berikut ini.

Langkah 5: Pertukarkan nilai dari

nilai[i]

dengan

nilai[j]

.

Pseudocode-nya adalah sebagai berikut :

titip := nilai[i];

nilai[i]:= nilai[j];

nilai[j]:= titip;

Langkah 6: Tentukan

j:=j+1;

Apakah

j>

n

(dalam kasus ini

j>30

)? Jika tidak, pergi ke langkah 4, Jika ya langsung

ke langkah 7 berikut.

(43)

c.

Rangkuman 3

1) Larik (array) adalah struktur data yang terdiri atas sekumpulan

data yang sejenis. Larik ada yang 1 dimensi dan 2 dimensi.

2) Beberapa operasi penting pada struktur data larik adalah

pencarian data dalam larik, serta pengurutan data dalam larik.

3) Pengurutan (sorting) ada dua macam: urut naik (ascending)

dan urut turun (decending).

4) Salah satu metoda sorting yang mudah untuk

diimplementasikan adalah metoda buble sort termodifikasi.

d.

Tugas 3

1) Bacalah dan pelajari sekali lagi keseluruhan uraian materi di

atas, terutama untuk prinsip kerja pengurutan data dengan

metode buble sort termodifikasi di atas.

2) Carilah sumber bahan bacaan atau buku referensi yang

menjelaskan tentang metode pengurutan buble sort (yang

belum termodifikasi) dan metode seleksi, seperti telah

disinggung dalam uraian materi 3 di atas.

e.

Tes Formatif 3

1) Buatlah diagram alir untuk algoritma pencarian data di atas!

2) Buatlah diagram alir untuk algoritma pengurutan data di atas!

3) Bagaimana caranya mengubah algoritma pengurutan ascending

(urut naik) di atas menjadi algoritma pengurutan decending

(urut turun)?

4) Buatlah algoritma pemrograman untuk menghitung nilai

(44)

f.

Kunci Jaw aban Tes Formatif 3

1). mulai

Variabel nilai[ 1..30] berisi nilai 30 siswa. Masukkan data yang akan

dicari, X

Nilai[ i] = X

?

Tampilkan pesan ke layar monitor: “Proses pencarian berhasil. Data X dit emukan, yakni pada elemen nilai[ i] ”

Ya

Tidak

i = i + 1

Ya Tidak

loop

ketemu = 0 i = 1

Tampilkan pesan ke layar monitor: “Proses pencarian gagal (tidak ditemukan

data X dalam larik nilai[ i] ” ket emu = 1

(45)

2).

mulai

nilai[ i] > nilai[ j]

?

selesai

Ya

Tidak

j = j + 1

j > 30 ?

Ya

Tidak loop

i = 1

Tukarkan isi nilai[ i] dengan nilai[ j]

i > 30-1

?

Variabel nilai[ 1..30] berisi nilai 30 siswa

j = i + 1

Tidak

(46)

3). Pada langkah 4 gantilah tanda lebih besar(“> ”) dengan lebih kecil

(“< ”) sehingga menjadi: Apakah

nilai[i]< nilai[j]

? Jika

tidak, pergi ke langkah 6, Jika ya lanjutkan ke langkah 5 berikut

ini.

4). Algoritma pemrograman untuk menghitung nilai rata-rata:

Langkah 1: Mulai

Langkah 2: Tentukan

titip:=0; i:=1;

Langkah 3:

titip := titip + i;

Langkah 4: Tentukan

i := i + 1;

Langkah 5: Apakah

i>30

? Jika tidak, pergi ke langkah 3,

Jika ya lanjutkan ke langkah 6.

Langkah 6: Selesai.

g.

Lembar Kerja 3

Alat dan bahan :

Penggaris, alat tulis lengkap, dan kertas putih kosong 5 lembar.

Kesehatan dan Keselamatan Kerja

1) Gunakan peralatan sesuai dengan fungsinya.

2) Bekerjalah sesuai dengan cara kerja atau petunjuk yang telah

ditentukan.

Langkah Kerja

1) Siapkan alat dan bahan yang digunakan.

2) Kerjakan tugas 3 dan tes formatif 3 di at as dengan kertas

kosong yang telah disediakan.

(47)

menjumlahkan nilai dari 2 variabel tersebut buatlah algoritma

dan diagram alir pemrogramannya!

4) Tuliskan nama dan nomor urut peserta diklat di pojok kanan

bawah di setiap kertas kerja.

5) Periksa dan perbaiki gambar atau tulisan yang kurang sempurna

atau salah.

6) Laporkan hasil pekerjaan anda pada guru pembimbing

(pengajar).

7) Jika semua telah selesai rapikan alat dan bahan kemudian

(48)

BAB I I I

EVALUASI

A. PERTANYAAN

1) Jelaskan apa yang dimaksud dengan algoritma dan diagram alir itu?

2) Apakah yang disebut dengan program itu?

3) Sebutkan dan jelaskan tahap-tahap yang harus dilalui dalam

rekayasa perangkat lunak dengan pendekatan metode konvensional

(model air terjun)!

4) Buatlah algoritma dan diagram alir pemrograman untuk

menghitung dan atau menemukan bilangan prima antara 2 sampai

50.

5) Buatlah algoritma dan diagram alir pemrograman untuk proses

mencari data maksimum dan minimum dari suatu larik 1 dimensi.

Gunakan larik data seperti kegiatan belajar di atas.

B. KUNCI JAWABAN EVALUASI

1. Lihat pada seksi Uraian Materi 1 hal. 7 –10.

2. Urut-urut an instruksi yang dimengerti oleh komputer untuk tujuan

tertentu.

3. Lihat pada seksi Uraian Materi 1 hal. 7 –10.

4. Algoritma menghitung/ menemukan bilangan prima antara 1 –50

Langkah 1: Mulai

Langkah 2: Tentukan i: = 2;

Langkah 3: Tentukan (diasumsikan) bilangan i adalah prima,

sehingga set awal variabel

prima:=True

(49)

Langkah 6: berarti bukan bilangan prima, set prima: = False;

Langkah 7: j: = j-1; Apakah j= 2? jika tidak kembali ke langkah

5, jika ya terus ke langkah 8 berikut.

Langkah 8: Cek apakah prima= True? Jika ya, tampilkan i, jika

tidak terus ke langkah 9.

Langkah 9: i : = i + 1, Apakah i = 50? jika tidak kembali ke

langkah 3, jika ya pergi ke langkah 9.

Langkah 10: Selesai.

Untuk memperjelas keterangan di atas, berikut diberikan

pseudocode untuk algoritma menemukan bilangan prima 2-50

diatas.

for i:=2 to 50 do

begin

prima:=True;

for j:=i-1 downto 2 do

if ( (i mod j)=0 ) then prima:=False;

if (prima) then writeln(i);

end;

keterangan:

mod

adalah fungsi untuk menemukan hasil bagi dari suatu operasi

(50)

Diagram alirnya sebagai berikut.

i = 2

mulai

Prima : = True

j = i -1

Cek i habis dibagi j

? tidak

ya

j = j -1

prima := False

j = 2 ? tidak

ya

i = 50 ? i = i+ 1

ya

tidak

(51)

5. Algoritma untuk mencari data maksimum (atau minimum) dalam

suatu larik 1 dimensi.

Langkah 1: Mulai

Langkah 2: Tentukan

max:= nilai[1];

(asumsikan elemen-1

adalah nilai maksimum).

Langkah 3: Tentukan

i := 2;

Langkah 4: Cek apakah

nilai[i]>max

? Jika tidak, pergi ke

langkah 6, Jika ya lanjutkan ke langkah 5 berikut ini.

Langkah 5: Ganti isi

max

dengan

nilai[i]

,

max:=nilai[i];

Langkah 6:

i:=i+1;

Apakah

i>

n

? (n banyaknya elemen larik)

Jika tidak, pergi ke langkah 4, Jika ya pergi ke langkah

7 berikut.

Langkah 7: Nilai maksimum ketemu, yakni

max

, lalu tampilkan

max

.

(52)

Diagram alirnya sebagai berikut.

Gambar 13. Diagram alir untuk jawaban soal evaluasi nomor 5 nilai[ i] > max

?

selesai

Ya

Tidak

Ya loop

Max = nilai[ 1]

Max= nilai[ i]

i > n

?

Variabel nilai[ 1..30] berisi nilai 30 siswa

i = 2

Tidak

(53)

C. KRI TERI A KELULUSAN

Aspek Skor

( 1-10) Bobot Nilai Keterangan

Kognitif (soal no 1 s/ d 3) 4

Kebenaran logika dan

penggambaran simbol diagram alir

3

Kerapian, kebersihan, ketelitian 2

Ketepatan waktu 1

Nilai Akhir

Syarat lulus nilai minimal 70 dan skor setiap aspek minimal 7

Kategori kelulusan:

70 – 79 : Memenuhi kriteria mininal. Dapat bekerja dengan bimbingan.

80 – 89 : Memenuhi kriteria minimal. Dapat bekerja tanpa bimbingan.

(54)

BAB I V

PENUTUP

Demikianlah modul pemelajaran tentang menyiapkan dan melakukan

survey untuk menentukan kebutuhan data. Materi yang telah dibahas

dalam modul ini masih sangat sedikit. Hanya sebagai dasar saj a bagi

peserta diklat untuk belajar lebih lanjut . Diharapkan peserta diklat

memanfaatkan modul ini sebagai motivasi untuk menguasai teknik analisis

dan design pemrograman lebih jauh sehingga peserta diklat dapat

merancang berbagai macam program komputer yang lebih berkualitas.

Setelah menyelesaikan modul ini dan mengerjakan semua tugas serta

evaluasi maka berdasarkan kriteria penilaian, peserta diklat dapat

dinyatakan lulus/ tidak lulus. Apabila dinyatakan lulus maka dapat

melanjutkan ke modul berikutnya sesuai dengan alur peta kududukan

modul, sedangkan apabila dinyatakan tidak lulus maka peserta diklat

harus mengulang modul ini dan tidak diperkenankan mengambil modul

(55)

DAFTAR PUSTAKA

I nsap Santoso, 1995. Struktur Data Dengan Turbo Pascal, Andi Offset Yogyakarta

Gambar

Gambar 1. Model Sekuensial Linier
Gambar 2. Gambaran Suatu Sistem Sederhana
Gambar 3.  Simbol-simbol yang Digunakan dalam Diagram Alir
Gambar 5.  Contoh Diagram Alir Percabangan Bersyarat
+7

Referensi

Dokumen terkait

Buku ensiklopedia tentang alat transportasi Jakarta ini dibuat dengan menggunakan software libraryARToolkit.Untuk membuat alat transportasi Jakarta secara tiga dimensi

Kegagalan pengecoran poros engkol ini ditandai adanya cacat berbentuk penyusutan yang berlokasi pada daerah ukuran dimensi yang paling besar Pemeriksaan visual

Hasil penelitian ini dapat digunakan sebagai masukan kepada pihak Indonesian Holistic Tourist Hospital Purwakarta Jawa Barat agar memiliki bidang yang spesifik mengelola

- Pengembangan dan peningkatan sistem pembuangan air limbah rumah tangga komunal diarahkan pada kawasan perumahan kepadatan tinggi Kecamatan Semarang Barat

Maka dapat disimpulkan bahwa guru setuju buku cerita bergambar yang telah dikembangkan layak dan sangat sesuai untuk digunakan sebagai media pembelajaran buku

Jika anda telah selesai mencuci lubang hidung sebanyak tiga kali, lalu anda diwajibkan untuk mencuci muka sebanyak 3x , mulai dari tempat tumbuhnya rambut atau

Kartono (2011: 136) menjelaskan bahwa fobia adalah ketakutan atau kecemasan khas neurotik dan merupakan simbol dari konflik-konflik neurotik yang menimbulkan

Dalam penjelasan lain, kesatuan koherensi antara pembelajaran IPA dengan al quran hadits teraplikasi dalam bentuk: science matter integratedwith religious matter