Top Banner
STRUKTUR DASAR ALGORITMA DAN PEMROGRAMAN STMIK AMIKOM YOGYAKARTA Khusnawi, S.Kom , M.Eng 2010
25

STRUKTUR DASAR ALGORITMA DAN PEMROGRAMANelearning.amikom.ac.id/index.php/download/materi/...Saat membuat suatu program setiap instruksi bisa dimulai dari yang pertama sampai dengan

May 12, 2019

Download

Documents

TranAnh
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: STRUKTUR DASAR ALGORITMA DAN PEMROGRAMANelearning.amikom.ac.id/index.php/download/materi/...Saat membuat suatu program setiap instruksi bisa dimulai dari yang pertama sampai dengan

STRUKTUR DASAR ALGORITMA

DAN PEMROGRAMAN

STMIK AMIKOM YOGYAKARTA

Khusnawi, S.Kom , M.Eng 2010

Page 2: STRUKTUR DASAR ALGORITMA DAN PEMROGRAMANelearning.amikom.ac.id/index.php/download/materi/...Saat membuat suatu program setiap instruksi bisa dimulai dari yang pertama sampai dengan

RePetiTion Structure(pErulanGan)‏

Pendahuluan

Saat membuat suatu program setiap instruksi bisa dimulai dari

yang pertama sampai dengan instruksi terakhir, kemudian setiap

instruksi yang dikerjakan juga membutuhkan suatu pilihan

berdasarkan kondisi syarat tertentu dan juga instruksi yang bersifat

mengulang sesuai dengan kondisi yang di definisikan.

Struktur perulangan digunakan untuk mengulang

sekumpulan perintah sesuai dengan kondisi yang

diberikan. Proses perulangan biasanya digunakan untuk

mengulang proses pemasukan data, mengulang proses

perhitungan dan mengulang untuk proses penampilan

hasil pengolahan data.

Page 3: STRUKTUR DASAR ALGORITMA DAN PEMROGRAMANelearning.amikom.ac.id/index.php/download/materi/...Saat membuat suatu program setiap instruksi bisa dimulai dari yang pertama sampai dengan

StrUktUr Perulangan:

• Secara Umum Struktur Perulangan dibagi

Menjadi 4 bagian:

• Kondisi perulangan, yaitu suatu ekspresi boolean yang

harus dipenuhi untuk melakukan proses perulangan.

• Badan perulangan, yaitu satu atau lebih instruksi yang

akan di ulang.

• Inisialisasi, yaitu aksi yang dilakukan sebelum

perulangan dilakukan pertama kali.(nilai awal utk

melakukan perulangan)

• Terminasi, yaitu aksi yang mengakibatkan perulangan

dihentikan.

Page 4: STRUKTUR DASAR ALGORITMA DAN PEMROGRAMANelearning.amikom.ac.id/index.php/download/materi/...Saat membuat suatu program setiap instruksi bisa dimulai dari yang pertama sampai dengan

TeKnik Counter:

• Teknik counter dipakai untuk mengontrol

pengulangan proses.

• Pengontrolan dilakukan dengan memeriksa isi

variable yang digunakan sebagai counter,

sehingga jumlah pengulangan dapat diketahui.

Page 5: STRUKTUR DASAR ALGORITMA DAN PEMROGRAMANelearning.amikom.ac.id/index.php/download/materi/...Saat membuat suatu program setiap instruksi bisa dimulai dari yang pertama sampai dengan

• Contoh:Algoritma proses perhitungan deret

penjumlahan 1+2+3+4+5

Mulai

N=0

T=0

N= N + 1

T = T + N

N=5 ? T Selasai T

F

Ketika kita membuat suatu variable

yang fungsinya khusus sebagai

kantong penghitung, biasanya harga

awal dari variable tersebut nol.

Setiap kali pemutaran harga variable

selalu bertambah atau berkurang,

variabel yang menunjukan nilai

counter adalah variabel N.

Page 6: STRUKTUR DASAR ALGORITMA DAN PEMROGRAMANelearning.amikom.ac.id/index.php/download/materi/...Saat membuat suatu program setiap instruksi bisa dimulai dari yang pertama sampai dengan

Instruksi/Notasi Algoritmik

Saat Melakukan proses perulangan seperti halnya

struktur selection membutuhkan instruksi atau notasi

Algoritmik untuk memproses.

Instruksi untuk setiap bahasa pemrograman pada

prinsipnya sama yaitu melakukan proses perulangan

sesuai dengan kondisi yang ditentukan.

Perbedaannya adalah tergantung dari struktur program

(syntax) dan perintahnya.

Page 7: STRUKTUR DASAR ALGORITMA DAN PEMROGRAMANelearning.amikom.ac.id/index.php/download/materi/...Saat membuat suatu program setiap instruksi bisa dimulai dari yang pertama sampai dengan

Instruksi/Notasi Algoritmik C/C++

INSTRUKSI FOR

DO - WHILE

WHILE

Page 8: STRUKTUR DASAR ALGORITMA DAN PEMROGRAMANelearning.amikom.ac.id/index.php/download/materi/...Saat membuat suatu program setiap instruksi bisa dimulai dari yang pertama sampai dengan

STRUCTURE:

for (inisialisasi; kondisi; counter) pernyataan;

Ket:

Inisialisasi: akan dieksekusi, variable yang akan dipakai sebagai

counter atau pencacah.

Kondisi: akan diperiksa, jika bernilai true maka perulangan akan

dilanjutkan dan jika bernilai false maka perulangan akan dilewati.

Pernyataan: akan dieksekusi, terdiri dari sebuah instruksi atau blok

instruksi yang berada di antara { dan }.

INSTRUKSI FOR

Digunakan untuk menghasilkan pengulangan sejumlah kali yang dispesifikasikan.

Jumlah pengulangan diketahui atau dapat ditentukan sebelum eksekusi.

Page 9: STRUKTUR DASAR ALGORITMA DAN PEMROGRAMANelearning.amikom.ac.id/index.php/download/materi/...Saat membuat suatu program setiap instruksi bisa dimulai dari yang pertama sampai dengan

Contoh

Algortima mencetak sebanyak 5 kali suatu kalimat

C++ dan Pascal :

for( n=1; n<=5;n++)‏

Output(‘C++ dan Pascal’);

Statement (‘C++ dan Pascal’) akan diulang sebanyak 5 kali,

yaitu dengan penghitung I dari nilai awal 1 sampai dengan nilai akhir 5

Page 10: STRUKTUR DASAR ALGORITMA DAN PEMROGRAMANelearning.amikom.ac.id/index.php/download/materi/...Saat membuat suatu program setiap instruksi bisa dimulai dari yang pertama sampai dengan

Contoh Flowchart

Page 11: STRUKTUR DASAR ALGORITMA DAN PEMROGRAMANelearning.amikom.ac.id/index.php/download/materi/...Saat membuat suatu program setiap instruksi bisa dimulai dari yang pertama sampai dengan
Page 12: STRUKTUR DASAR ALGORITMA DAN PEMROGRAMANelearning.amikom.ac.id/index.php/download/materi/...Saat membuat suatu program setiap instruksi bisa dimulai dari yang pertama sampai dengan

Algoritma untuk menentukan nilai Faktorial berdasarkan N masukan:

Contoh Lainya:

Deklarasi:

N, k, Faktorial:Integer;

Deskripsi (Urutan Algoritma):

1. Input (n)‏

2. Faktorial1 // Inisialisasi

3. IF n=0 THEN

Faktorial 1

ELSE

FOR k 1 TO n // for (k=1 ; k<=n; k++)

Faktorial Faktorial *k

EndFor

ENDIF

4. Output (Faktorial)

Page 13: STRUKTUR DASAR ALGORITMA DAN PEMROGRAMANelearning.amikom.ac.id/index.php/download/materi/...Saat membuat suatu program setiap instruksi bisa dimulai dari yang pertama sampai dengan

Contoh Implementasi C/C++:

#include <iostream.h>

#include <conio.h>

int main()‏

{

int k, n, faktorial;

faktorial=1;

cout << " Inputkan nilai Ke N:"; cin >> n;

if (n==0)‏

faktorial=1;

else

{ for(k=1;k<=n;k++)‏

faktorial= faktorial * k; }

cout << " Faktorial dari "<< n <<"! adalah : "<< faktorial;

getch();

return 0;

}

Page 14: STRUKTUR DASAR ALGORITMA DAN PEMROGRAMANelearning.amikom.ac.id/index.php/download/materi/...Saat membuat suatu program setiap instruksi bisa dimulai dari yang pertama sampai dengan

INSTRUKSI WHILE

Pernyataan while adalah

pernyataan yang berguna

untuk memproses suatu

pernyataan atau

pernyataan beberapa kali.

Pernyataan atau aksi akan

di ulang jika kondisi

bernilai benar dan jika

salah maka keuar dari blok

perulangan (loop)

Page 15: STRUKTUR DASAR ALGORITMA DAN PEMROGRAMANelearning.amikom.ac.id/index.php/download/materi/...Saat membuat suatu program setiap instruksi bisa dimulai dari yang pertama sampai dengan

Struktur C/C++:

<Inisialisasi>

while (kondisi)‏

{

Pernyataan ;

}

Page 16: STRUKTUR DASAR ALGORITMA DAN PEMROGRAMANelearning.amikom.ac.id/index.php/download/materi/...Saat membuat suatu program setiap instruksi bisa dimulai dari yang pertama sampai dengan

Contoh 01:

Algoritma Cetak_Angka {mencetak 1, 2, .., 10 ke piranti

keluaran }

Deklarasi :

K: integer

Deskripsi :

1. K 1 {inisialisasi}

2. while (k <= 10)

output (k)‏

3. k k + 1

4. endwhile

Page 17: STRUKTUR DASAR ALGORITMA DAN PEMROGRAMANelearning.amikom.ac.id/index.php/download/materi/...Saat membuat suatu program setiap instruksi bisa dimulai dari yang pertama sampai dengan

Contoh 02:

Algoritma Mengitung rata-rata N buah bilangan bulat yang dibaca

dari piranti masukan

DEKLARASI :

N, X, K, jumlah, rerata: integer

DESKRIPSI ALGORTIMA :

read (N)‏

Jumlah 0

K 1 ----> inisialisasi

while (k <= N) -----> kondisi

input (x)‏

jumlah jumlah + x

k k + 1

endwhile

rerata jumlah/N

write (rerata)‏

Body looping

Page 18: STRUKTUR DASAR ALGORITMA DAN PEMROGRAMANelearning.amikom.ac.id/index.php/download/materi/...Saat membuat suatu program setiap instruksi bisa dimulai dari yang pertama sampai dengan

Contoh Implementasi C/C++: #include <iostream.h>

#include <conio.h>

int main()‏

{

int n,x,k,jumlah;

double rerata;

cout << " Masukan jumlah data sebanyak N = "; cin >> n;

k=1;

jumlah=0;

while( k<= n)‏

{

cout << " inputkan data bilangan bulat ke - "<< k<<"="; cin >> x;

jumlah=jumlah + x;

k=k+1;

}

rerata=(jumlah / n);

cout << " rata rata bilangan yang dihasilkan:"<< rerata;

getch();

return 0; }

Page 19: STRUKTUR DASAR ALGORITMA DAN PEMROGRAMANelearning.amikom.ac.id/index.php/download/materi/...Saat membuat suatu program setiap instruksi bisa dimulai dari yang pertama sampai dengan

INSTRUKSI DO - WHILE

<inisialisasi>

do

{

pernyatan ;

} while(kondisi);

Perulangan akan dilakukan minimal 1x terlebih dahulu, kemudian

baru dilakukan pengecekan terhadap kondisi, jika kondisi benar

maka perulangan masih akan tetap dilakukan.

Perulangan dengan do...while() akan dilakukan sampai kondisi

false.

Page 20: STRUKTUR DASAR ALGORITMA DAN PEMROGRAMANelearning.amikom.ac.id/index.php/download/materi/...Saat membuat suatu program setiap instruksi bisa dimulai dari yang pertama sampai dengan

Contoh :

Algoritma Mengitung rata-rata N buah bilangan bulat yang dibaca

dari piranti masukan

DEKLARASI :

N, X, K, jumlah, rerata: integer

DESKRIPSI ALGORTIMA :

read (N)‏

Jumlah 0

do

read (x)‏

jumlah jumlah + x

k k + 1

while (k <= N)‏

rerata jumlah/N

write (rerata)‏

DEKLARASI :

N, X, K, jumlah, rerata: integer

DESKRIPSI ALGORTIMA :

read (N)‏

Jumlah 0

while (k <= N)‏

read (x)‏

jumlah jumlah + x

k k + 1

endwhile

rerata jumlah/N

write (rerata)‏

Page 21: STRUKTUR DASAR ALGORITMA DAN PEMROGRAMANelearning.amikom.ac.id/index.php/download/materi/...Saat membuat suatu program setiap instruksi bisa dimulai dari yang pertama sampai dengan

Contoh Implementasi C/C++: #include <iostream.h>

#include <conio.h>

#include <iomanip.h>

void main()‏

{

float n,x,k,jumlah;

float rerata;

cout << " Inputkan data masukan sejumlah N "; cin >> n;

k=1; jumlah=0;

do {

cout << " masukan data bilangan ke - " << k << ":" ; cin >> x;

jumlah=jumlah+x;

k=k+1; }

while( k <= n);

rerata=jumlah/n;

cout<<setiosflags(ios::fixed);

cout<<setprecision(2);

cout << " nilai rata-rata yang di perolehnya adalah:"<<rerata;

getch(); }

Page 22: STRUKTUR DASAR ALGORITMA DAN PEMROGRAMANelearning.amikom.ac.id/index.php/download/materi/...Saat membuat suatu program setiap instruksi bisa dimulai dari yang pertama sampai dengan

Latihan:

1. Algoritma untuk menentukan nilai maksimal dan minimal dari

sejumlah nilai masukan N.

2. Algoritma penjumlahan deret ke N, tetapi yang dijumlahkan adalah

bilangan yang genap saja.

3. Algortima menampilkan angka diantara 2 nilai yang dimasukan, misal

nilai yang di masukan adalah 2 dan 10, maka outputnya adalah : 2 3 4

5 6 7 8 9 10

4. Algoritma untuk menentukan validasi username dan password, dimana

akan di ulang maksimal 3 kali, jika benar akan muncul komentar ”

anda berhasil masuk” tapi jika tidak muncul komentar ” maaf user

name dan password anda salah”

5. Algoritma untuk menentukan sisa hasil pembagian antara bilangan

yang dimasukan dengan bilangan pembagi, apabila sisa hasil baginya=0

maka outputnya ” tidak ada ”, kalau ada cetak outputnya hasil

sisanya. Lakukan berulang dengan memasukan sebuah karakter Y atau

T, jika pilih Y maka akan diulang, jika pilih T program selesai.

Page 23: STRUKTUR DASAR ALGORITMA DAN PEMROGRAMANelearning.amikom.ac.id/index.php/download/materi/...Saat membuat suatu program setiap instruksi bisa dimulai dari yang pertama sampai dengan

6. Algortima untuk menghtung banyaknya bilangan genap dan ganjil serta

total dari bilangan-bilangan genap dan ganjil yang ada dari n buah

bilangan yang di inputkan.

7. Algoritma menampilkan Menampilkan deret bilangan 1 – 100 yang

habis dibagi dengan 2 dan habis dibagi dengan 3.

8. Algoritma untuk menampilkan data mahasiswa sejumlah N, yang di

inputkan adalah NPM, Nama, IPK, kemudian jika IPK >=3 keterangan

memuaskan, jika IPK >=2.5 s.d IPK <3 keterangan: Cukup dan jika IPK <

2.5 keterangan : Memprihatinkan. Tampilkan semua data mahasiswa

yang di inputkan beserta keterangn IPK nya.

9. Algortima untuk menampilkan deret bilangan prima sejumlah antara 1

sampai dengan 100.

10. Algoritma untuk menampilkan nilai dari suatu input dan akan ber akhir

jika nilai dari input bernilai 0

11. Analisa hasil dari flowchart dibawah ini:

Page 24: STRUKTUR DASAR ALGORITMA DAN PEMROGRAMANelearning.amikom.ac.id/index.php/download/materi/...Saat membuat suatu program setiap instruksi bisa dimulai dari yang pertama sampai dengan
Page 25: STRUKTUR DASAR ALGORITMA DAN PEMROGRAMANelearning.amikom.ac.id/index.php/download/materi/...Saat membuat suatu program setiap instruksi bisa dimulai dari yang pertama sampai dengan

More Information

TO BE CONTINUE