3. 01/20/19
Definisi KomputerDefinisi Komputer
Komputer merupakan suatu perangkat elektronika yang
dapat menerima dan mengolah data menjadi informasi,
menjalankan program yang tersimpan dalam memori,
serta dapat bekerja secara otomatis dengan aturan
tertentu.
Sistem KomputerSistem Komputer
Sebuah sistem komputer tersusun atas tiga elemen, yaitu
1. Hardware (Perangkat Keras), merupakan rangkaian
elektronika
2. Software (Perangkat Lunak), merupakan program yang
dijalankan pada komputer
3. Brainware (SDM)
Komputer…
4. 01/20/19
1.1. ProcessorProcessor, merupakan bagian dari perangkat keras
komputer yang melakukan pemrosesan aritmatika dan
logika serta pengendalian operasi komputer secara
keseluruhan. Prosesor terdiri atas dua bagian utama, yaitu
ALU (Arithmetic Logic Unit) dan Control Unit.
2.2. MemoryMemory, dipergunakan untuk menyimpan data dan
instruksi dari program yang sedang dijalankan. Biasa
juga disebut sebagai RAM
3. Input-Output DeviceInput-Output Device, merupakan bagian yang berfungsi
sebagai penghubung antara komputer dengan lingkungan
di luarnya.
Hardware
Perangkat KerasPerangkat Keras (Hardware) Adalah perangkat keras
untuk mendukung beroperasinya komputer. Perangkat keras
komputer secara garis besar terdiri atas tiga komponen
utama, yaitu:
6. 01/20/19
Bahasa Pemprograman, merupakan perangkat lunak untuk
pembuatan atau pengembangan perangkat lunak lain.
Bahasa pemprograman dapat diklasifikasikan menjadi
tingkat rendah, tingkat sedang, dan tingkat tinggi.
Pergeseran dari tingkat rendah ke tinggi menunjukkan
kedekatan dengan ‘bahasa manusia’. Bahasa tingkat rendah
(atau biasa disebut bahasa assembly) merupakan bahasa
dengan pemetaan satu persatu terhadap instruksi komputer.
Contoh bahasa tingkat tinggi : Pascal, BASIC, Prolog,
Java,Delphi dll.
Contoh bahasa tingkat menengah : bahasa C.
Bahasa tingkat rendah : Assembler, binerisasi
Software
7. 80% DARI TUGAS PEMROGRAMAN ADALAH MEMELIHARA
PROGRAM, TERMASUK MEMODIFIKASI PROGRAM YANG ADA
AGAR SESUAI DENGAN YANG DIBUTUHKAN. JIKA LOGIKA DARI
PROGRAM SANGAT SUKAR UNTUK DIMENGERTI, MAKA
MEMELIHARA PROGRAM TERMASUK BAGIAN YANG SANGAT
SUKAR UNTUK DILAKSANAKAN.
JIKA PROGRAM ASLI TIDAK DAPAT DIGUNAKAN, SESEORANG
HARUS BENAR-BENAR MENGUASAI LOGIKA PROGRAM
TERSEBUT SEBELUM PERUBAHAN DAPAT DILAKUKAN.
INTRODUCTION PROGRAM TERSTRUKTUR
PADA MASA AWAL: PEMROGRAMAN (1950 – 1960), KEMAMPUAN
KOMPUTER MASIH SANGAT TERBATAS, BAIK KECEPATAN ATAU
KAPASITAS, DAN HARGA RELATIF MAHAL
PEMROGRAM MEMBUAT PROGRAM YANG MEMBUTUHKAN
MEMORI DAN WAKTU EKSEKUSI SESINGKATNYA.
PROGRAMMER HARUS MENGHASILKAN SEBUAH TEKNIK DAN
ALGORITMA YANG DAPAT MENGHEMAT PENGGUNAAN MEMORI
MAUPUN WAKTU EKSEKUSI SEPENDEK MUNGKIN.
8. Sistematika MateriSistematika Materi
• Konsep pemrograman secara umum :Konsep pemrograman secara umum :
• Perkembangan pemrograman komputer
• Sejarah bahasa pemrograman
• Jenis bahasa pemrograman
• Perbandingan bahasa pemrograman
• Ide Pemrograman terstruktur :Ide Pemrograman terstruktur :
Defenisi, Tujuan, Kriteria
• Metoda dasar pemrograman terstrukturMetoda dasar pemrograman terstruktur
GOTOLess : Sekuensial, Selection, Looping
• Perbandingan bahasa pemrogramanPerbandingan bahasa pemrograman
(Berdasarkan kriteria pemrograman terstruktur)
• Metoda desain pemrograman terstrukturMetoda desain pemrograman terstruktur
Modular, TopDown,…
• OOP, Pemrograman berorientasi objekOOP, Pemrograman berorientasi objek
(Lebih terstuktur dari ide pemrograman terstruktur ?)
• Struktur pemrograman visualStruktur pemrograman visual
9. Perkembangan (cara) mem-program komputer :Perkembangan (cara) mem-program komputer :
1. Pemrograman dengan mengatur / menyambung titik
jumper di rangkaian komputer
2. Pemrograman dengan langsung menulis kode biner ke
memory, direpresentasikan melalui kode hexa, kode
biner disebut juga bahasa mesin komputer
3. Pemrograman dengan bahasa assembler : Perintah-
perintahnya berkaitan langsung dengan struktur internal
hardware
4. Pemrograman dengan bahasa tingkat tinggi/menengah :
Perintah-perintahnya mirip dengan bahasa manusia/
english
Konsep Pemrograman
• Mem-program komputer, secara teknis bertujuan :Mem-program komputer, secara teknis bertujuan :
Memasukkan / menyusun sejumlah instruksi dan data ke
memory, yang selanjutnya akan diambil satu persatu oleh
CPU / Processor untuk dilaksanakan.
10. CPU
Programmer Instruksi A
Instruksi D
Data D
Instruksi B
Data A
Instruksi C
Sejumlah Instruksi dan data
00011100
00000101
00111101
00010010
00101101
……….
……….
……….
……….
……….
0002
0100
0101
……….0001
0102
0103
Susunan instruksi dan data
dalam memory
Mov A,05
Mov B,12
Add A,B
Assembly
A = 05 + 12
High/Medium Level
3C
05
3D
12
2D
Hexa
Tool
Ilustrasi Pemrograman KomputerIlustrasi Pemrograman Komputer
11. 01/20/19
Generasi dan Jenis Bahasa PemrogramanGenerasi dan Jenis Bahasa Pemrograman
Generasi bahasa pemrograman:
• Generasi I : machine language
• Generasi II : assembly language :
Asssembler
• Generasi III : high-level programming
language: C, PASCAL, dsb.
• Generasi IV : 4 GL (fourth-generation
language): Prolog, SQL, Visual tool,
dsb
Jenis bahasa pemrograman
berdasarkan metodanya :
• Pemrograman tidak terstruktur :
Basica, Fortran, …
• Pemrograman terstruktur : Pascal,
C/C++, …
• Pemrograman berorientasi objek :
C++, Java, …
• Pemrograman visual : VB, Delphi,
…
Jenis bahasa pemrograman
berdasarkan bentuknya :
• Pemrograman prosedural : Pascal, C,
• Pemrograman fungsional : Lisp
• Pemrograman deklaratif : Prolog
• Pemrograman berorientasi objek :
Java
• Pemrograman prosedural sekaligus
berorientasi objek : C++
Jenis bahasa pemrograman
berdasarkan tujuan (hasil) :
• Pemrograman stand-alone
• Pemrograman client/server
• Pemrograman web : HTML, Script
• Pemrograman jaringan
Jenis bahasa pemrograman berdasarkan
cara penterjemahan :
• Interpreter : Basica, Foxpro, Matlab,…
• Compiler : Turbo Basic, Pascal, C/C++,
…
12. Jenis Program Bahasa Terbaik Bahasa Terburuk
Data terstruktur ADA, C /C++, PASCAL Assembler, BASIC
Proyek cepat BASIC PASCAL, ADA, Assembler
Eksekusi cepat Assembler, C BASIC, Intrepreter Language
Kalkulasi matematika FORTRAN PASCAL
Menggunakan memori
dinamis PASCAL, C BASIC
Lingkungan bermemori
terbatas BASIC, Assembler, C FORTRAN
Program real-time ADA, Assembler, C BASIC, FORTRAN
Manipulasi string BASIC, PASCAL C
Program mudah dikelola PASCAL, ADA C, FORTRAN
Berdasarkan tujuan tertentu :
Perbandingan Bahasa PemrogramanPerbandingan Bahasa Pemrograman
(Umum)(Umum)
14. Ide Pemrograman terstrukturIde Pemrograman terstruktur
Pemrograman yaitu aktivitas membuat, menyusun sejumlah
perintah yang dikenal komputer (program).
Terstruktur dapat berarti terpola, sistematis atau bentuk yang
mengikuti aturan tertentu.
Pemrograman Terstruktur berarti :…………………...……???
Orang pertama yang mencetuskan ide pemrograman terstruktur
adalah Profesor Edsger W. Dijkstra dari University of
Eindhoven, Nederland. Ide utamanya adalah bahwa statemen
GOTO sebaiknya tidak digunakan di dalam pemrograman
terstruktur, sebab bisa membuat program menjadi ruwet.
Ide ini ditanggapi oleh HD Milis, yang beranggapan bahwa
pemrograman terstruktur semestinya tidak hanya dihubungkan
dengan tanpa penggunaan GOTO, tetapi yang lebih utama
adalah struktur program itulah yang menentukan apakah suatu
pemrograman terstruktur atau tidak
15. Kriteria pemrograman terstruktur :
- Struktur programnya;
- Fasilitas penulisan kode program;
- Statemen untuk kebutuhan Selection dan Looping;
- Fasilitas menyatakan berbagai type data (struktur data);
- Fasilitas pemberian komentar;
- Fasilitas instruksi yang tersedia (operasi arithmatik/matematik, string, );
- Fasilitas modular (baik internal maupun eksternal);
- Fasilitas debugging,
Ide pemrograman terstruktur muncul karena jumlah baris program
semakin lama semakin besar, tentu saja hal ini terjadi karena diinginkan
aplikasi yang lengkap dan lebih berkualitas
Dengan ide pemrograman terstruktur diharapkan dapat membantu
manajemen source code (kode program) sehingga program mudah
untuk dikelola bagi kepentingan selanjutnya
Tujuan utama pemrograman terstruktur adalah : agar program-program
besar menjadi lebih mudah ditelusuri alur logikanya, mudah untuk
dimodifikasi (dikembangkan) dan mudah pula untuk ditemukan bagian
yang salah ketika program sedang diuji.
16. Filosofis Terstruktur
a b c d
- Mana yang susunannya terstruktur (teratur, …)
- Mana yang lebih mudah anda hafalkan
- Jika akan ditambah satu batang lagi, dimana harus
diletakkan agar posisinya dapat dinilai benar
- Jika susunannya dirombak, mana yang lebih mudah untuk
disusun kembali
Prinsip utamanya adalah, program tidak
boleh melompat ke atas, kecuali untuk
keperluan pengulangan
17. Beberapa jenis teknik pemrograman yang telah
pernah ada :
unstructured programmingunstructured programming
procedural programming
Modular Programing
object-oriented programming
18. Unstructured programming
Teknik memrogram dengan cara menuliskan
program hanya pada satu program utama. Di dalam
program utama tersebut, keseluruhan baris
programnya berisi urut-urutan perintah atau
statemen untuk memodifikasi dan mengolah data.
19. procedural programming
Dengan teknik ini kita dapat mengatur urutan
statemen program, mengembalikan urutan
statemen program pada suatu tempat yang kita
inginkan . Suatu pemanggilan prosedur digunakan
untuk memohon prosedur tersebut berjalan,
setelah diproses, arus kendali urutan akan
dikembalikan pada urutan proses pemanggilnya.
20. Main program Procedure
procedural programming
Procedure akan dipanggil oleh baris program
di main program dan setelah selesai urutan dikembalikan
21. procedural programming
Jika suatu prosedur benar, setiap kali digunakan
pasti mengeluarkan hasil benar, dan begitu
sebaliknya jika prosedur itu salah juga akan
menghasilkan kesalahan jika dipanggil
berulangkali.
Tetapi dengan teknik ini kita dapat membatasi
tempat pencarian kesalahan, dan jika prosedur
yang salah, kita cukup memperbaiki satu kali di
baris program dalam prosedur tersebut.
22. procedural programming
Ada yang menggunakan teknik ini dengan cara
program utama hanya berisi baris-baris perintah
pemanggil prosedur dan menyediakan data yang
akan diolah di prosedur, setelah selesai proses
hasilnya akan di bawa ke program utama
Program utama mengkoordinir panggilan ke prosedur dan penyerahan data
sesuai parameter.
23. Modular programming
Pada teknik pemrograman modular ini kita
mengelompokkan beberapa procedure yang sama
fungsinya ke dalam suatu modul yang terpisah dari
program utama, modul yang dibuat mungkin lebih dari
satu. Dasar penciptaan modul ini, karena programer
menilai prosedur di dalam modul akan banyak
digunakan pada program-program yang berlainan.
24. Modular programming
Masing-masing Modul dapat mempunyai data sendiri
dan mengijinkan masing-masing modul untuk
mengatur suatu status internal untuk dimodifikasi oleh
prosedur yang ada didalamnya.
Jadi, paradigma baru yang ditawarkan pada teknik ini
adalah suatu program tidak lagi terdiri dari hanya satu
bagian tunggal, tetapi dibagi ke dalam beberapa bagian
yang lebih kecil saling berhubungan
26. object-oriented programming
Pada teknik OOP menjadikan kode lebih mudah
dipelihara dibandingkan dengan teknik yang lain.
OOP menawarkan keistimewaan reusebility,
kemampuan yang membuat kode mudah
digunakan kembali pada pengembangan aplikasi
yang lain, sehingga meningkatkan produktifitas
programmer. Pada OOP di program utama
terdapat kumpulan objek yang saling
berinteraksi.
27. object-oriented programming
Objek merupakan hal terpenting dalam OOP,
contoh mudah pada pemrograman Visual, form
dan kotak teks merupakan sebuah obyek yang
biasa dilibatkan dalam pembuatan program
aplikasi.
Suatu obyek dapat dimanipulasi melalui properti
(atribut) yang dimilikinya dan event (kejadian)
yang dikenali obyek (contoh : DblClick) serta
metode yang dijalankan jika tindakan kejadian
dilakukan.
28. Object di dalam program saling berhubungan dengan saling
mengirim pesan.
object-oriented programming
29. Istilah Pemrograman Terstruktur (Structured Programming)
mengacu dari suatu kumpulan tehnik yang dikemukan oleh
Edsger Dijkstra. Dengan tehnik ini akan meningkatkan
produktifitas programmer, dengan mengurangi waktu yang
dibutuhkan dalam penulisan (write), pengujian (test),
penelusuran kesalahan (debug) dan pemeliharan(maintain)
suatu program.
Pemrograman Secara Modular
Dalam pemrograman secara modular, suatu program akan
dipilah kedalam sejumlah modul, dimana setiap modul
menjalankan fungsinya sendiri. Tentunya fungsi yang
dijalankan oleh setiap modul sangat terbatas sesuai dengan
ruang lingkup yang akan dikerjakan. Dengan adanya
sejumlah modul program ini tentu saja kesalahan yang
timbul dapat dikurangi. Setiap program tentu akan memiliki
program utamanya, yang kemudian akan memanggil
sejumlah modul-modul yang ada.
30. Metoda dasar pemrograman terstrukturMetoda dasar pemrograman terstruktur
Ide awal penerapan pemrograman terstruktur yaitu dengan menghindari
penggunaan GOTO untuk melompat ke bagian program tertentu
Kegunaan GOTO untuk melompat ke baris program tertentu, secara umum
dapat dibagi ke dalam 2 kelompok :
1.Melompat ke bagian bawah program dari posisi program saat ini
2.Melompat ke bagian atas program dari posisi program saat ini
Dengan pemrograman terstruktur;
Jika ada kebutuhan melompat ke bagian bawah, dapat digantikan dengan
perintah Selection (If, Case, Select, Switch,…)
Jika ada kebutuhan melompat ke bagian atas, dapat digantikan dengan perintah
Looping (for, While, repeat-until,…)
Untuk itu dalam pemrograman terstruktur hanya dikenal 3 struktur :
1. Sekuensial, yaitu program yang tidak memiliki lompatan. Baris program
dijalankan secara normal (lurus) satu per-satu dari atas ke bawah
2. Selection, yaitu program yang memiliki pilihan apakah harus
menjalankan baris program sesuai dengan urutannya atau melompati
sejumlah baris program tersebut
3. Looping, yaitu program yang juga mengandung pilihan apakah akan
mengulangi program yang sudah pernah dijalankan sebelumnya atau tidak
31. •Teknik yang akan digunakan
•meningkatkan produktifitas programmer
mengurangi waktu yang dibutuhkan dalam penulisan
(write), pengujian (test), penelusuran kesalahan
(debug) dan pemeliharaan (maintain) suatu program
•Pendekatan yang dilakukan secara modular
32. • Suatu program akan dipilah ke dalam sejumlah modul, setiap modul
menjalankan fungsinya sendiri
• Setiap program akan memiliki program utamanya, yang kemudian
akan memanggil sejumlah modul-modul yang ada
• Dapat diimplementasikan dengan penggunaan subroutine suatu
kelompok instruksi yang menjalankan suatu pengolahan yang
sifatknya terbatas seperti pencetakan, pembacaan untuk proses inpu
atau untuk proses penghitungan
33.
34. 01/20/19
Gambaran proses transfer ke dan dari suatu
subroutine
………………………………..
………………………………..
………………………………..
…………………………………
CALL SUB
…………………………………
………………………………..
………………………………..
CALL SUB
………………………………..
………………………………..
…………………………………
SUB
………………………………..
………………………………
………………………………..
………………………………..
…………………………………
RETURN
Path dari pemanggilan pertama
Path dari pemanggilan kedua
36. 01/20/19
Pemrograman terstruktur
• Salah satu sasaran dalam mendesain program
terstruktur adalah mengurangi kebingungan
yang dihasilkan dari penggunaan percabangan
atau perintah go-to
• Dalam pemrograman terstruktur tidak
digunakan lagi perintah go-to
• Ada tiga bentuk yang digunakan yaitu :
sequence structure, loop structure, selection
structure
37. 01/20/19
Sequence structure
• Dalam sequence structuer, instruksi dieksekusi
berdasarkan urutannya
• Tidak diperkenankan penggunaan kotak
keputusan
Instruksi 1
Instruksi 2
Instruksi 3
39. 01/20/19
Selection structure
• Terdapat sejumlah perintah yang dikerjakan
tergantung dari kondisi yang dipenuhinya
• Seperti juga pada sequence dan loop structure,
terdapat single entry point dan single exit point
Instruksi 1
Instruksi 2 Disarikan dari
catatan
43. Simbol-simbol untuk menggambarkan Flow ChartSimbol-simbol untuk menggambarkan Flow Chart
Digunakan untuk
menunjukkan awal dan
akhir program
Digunakan untuk
memberikan nilai awal
(inisial) pada suatu
variabel atau counter
Digunakan untuk proses,
pengolahan arithmatik,
dan pemindahan data
Digunakan untuk
mewakili operasi
perbandingan logika
yang dibutuhkan pada
Selection dan Looping
Digunakan untuk
proses yang detailnya
dijelaskan terpisah,
misalkan untuk
menyatakan prosedur,
atau sub program
Digunakan untuk
hubungan arus proses
yang terputus masih di
halaman yang sama
Digunakan untuk
hubungan arus proses
yang terputus di halaman
yang berbeda
Digunakan untuk
menghubungan antar
simbol/elemen yang lain
dan sekaligus
menyatakan arah aliran
Digunakan untuk
menyatakan operasi
memasukkan data/input dan
menampilkan data/output
44. Contoh Flow Chart :Contoh Flow Chart :
Start
Masukkan data jumlah apel ke var A
Masukkan data jumlah anak ke var N
C = A / N
Tampilkan : Setiap anak mendapat C apel
end
Start
Masukkan nilai koefisien A ke var A
Masukkan nilai koefisien B ke var B
Masukkan nilai koefisien C ke var C
A=0
Menanyakan apakah ingin
menghitung lagi ? LG
end
D = b2 –
4AC
D>0
D=0
Hitung penyelesaian real
Dengan akar berbeda
Hitung penyelesaian real
Dengan akar sama
Hitung penyelesaian
Bilangan imajiner
Permasalahan 1 :
Permasalahan 2 :
LG=Ya
50. Beberapa bentuk logika terstruktur dengan flow chartBeberapa bentuk logika terstruktur dengan flow chart
1. Struktur urut sederhana (Simple sequence)
2. Struktur 1 pilihan dengan IF-THEN
3. Struktur 2 pilihan dengan IF-THEN-ELSE
51.
52. 4a. Struktur banyak pilihan dengan
IF-THEN-ELSEIF
4b. Struktur banyak pilihan dengan
CASE
54. Statemen kontrol terstruktur :Statemen kontrol terstruktur : menyembunyikanmenyembunyikan gotogoto
Kondisi
Proses 1a
IF-
THEN
true
false
Proses 1
Proses 2
Proses1
If {kondisi } then
Proses1a
End if
Proses2
Proses1
If {kondisi=false } then goto lompat
Proses1a
Lompat:
Proses2
Jika kondisi=true,
urutan pelaksanaan :
Proses1
Proses1a
Proses2
Jika kondisi=false,
urutan pelaksanaan :
Proses1
Proses2
Analisa :
55. Kondisi
Proses 1b
IF-THEN-
ELSE
true
false
Proses 1
Proses 2
Proses1
If {kondisi=true } then
Proses1b
else
proses1a
end if
Proses2
Proses1
If {kondisi=true } then goto lompat1 else goto lompat2
Lompat1:
Proses1b
goto lompat3
Lompat2:
Proses1a
Lompat3:
Proses2
Jika kondisi=true,
urutan pelaksanaan :
Proses1
Proses1b
Proses2
Jika kondisi=false,
urutan pelaksanaan :
Proses1
Proses1a
Proses2
Analisa :
Proses 1a
56. Kondisi1
Proses 2a
IF-THEN-ELSE-
IF
true
fals
e
Proses 1
Proses 2d
Proses1
If {kondisi1=true } then
Proses2a
else
if {kondisi2=true } then
Proses2b
else
if {kondisi3=true } then
Proses2c
else
Proses2d
end if
Proses3
Kondisi2
Kondisi3
Proses 2b
Proses 2c
Proses 3
Proses1
If {kondisi1=true } then goto lompat1
If {kondisi2=true } then goto lompat2
If {kondisi3=true } then goto lompat3
Goto lompat4
Lompat1:
Proses2a
goto habis
Lompat2:
Proses2b
goto habis
Lompat3:
Proses2c
goto habis
Lompat4:
proses2d
Habis:
proses3
57. Looping : FOR
I=1
Ulang :
Proses1
Proses2
I=I+1
If I<=5 then goto Ulang
Proses3
For I=1 to 5
Proses 1
Proses 2
Next I
Proses 3
Proses1
Proses2
FOR I=1 to 5
Proses3
58. Looping : WHILE
Ulang :
If {kondisi=true} then
Proses1
Proses2
goto Ulang
Proses3
While {kondisi=true}
Proses 1
Proses 2
Wend
Proses 3
While {kondisi}
Proses1
Proses2
Proses3
59. Looping : UNTIL
Ulang :
Proses1
Proses2
If {kondisi=true} then goto Ulang
Proses3
do
Proses 1
Proses 2
Loop Until {kondisi=true}
Proses 3
Proses1
Proses1
Until {kondisi}
Proses3
61. Contoh flow chart dengan beberapa lompatan tidak terstruktur :
end
start Lompatan tidak terstruktur :
a. Melompat ke bagian yang belum tentu
dilewati
b. Melompat keluar dari daerah induknya
62. Struktur Data dan Pemrograman terstrukturStruktur Data dan Pemrograman terstruktur
•Bahasa pemrograman dengan kemampuan meng-ekspresi-kan semua
kebutuhan struktur data akan lebih mendukung pencapaian tujuan dari
pemrograman terstruktur
•Bahasa pemrograman yang tidak memiliki fasilitas untuk
mengungkapkan struktur data tertentu cendrung mengarahkan kode
program ke bentuk yang kurang teratur
•Kemampuan struktur data suatu bahasa pemrograman ditentukan oleh
kemampuan fasilitas type data yang dimilikinya
•Type data secara umum terdiri dari :
- Type data dasar standar : Integer, real, string, charakter, dan logic
- Type data dasar tidak standar : sub range, enumerate
- Type data majemuk : set, array, record, file
- Type data dinamis : pointer
63. Metoda Desain Pemrograman TerstrukturMetoda Desain Pemrograman Terstruktur
Metode Perancangan Top-down
Metada Perancangan Modular
Implementasi internal : Procedure/Subprogram, Function
Implementasi eksternal : file Unit/Header/Modul
Diagram Nassi-Schneiderman
Tabel Decision
Untuk membantu dan menjamin dihasilkannya program yang
terstruktur, dapat digunakan beberapa metoda/alat berikut :
64. Mahasiswa Dosen Perkuliahan
Sistem Informasi Akademis
Entry data
Hapus data
Laporan data
Entry data
Hapus data
Laporan data
Entry data
Hapus data
Laporan data
Contoh Top-down :
65. Metode Modular : Implementasi Top-down
……..
Call A
……..
Call B
……..
Call C
……..
…….
Call A1
…….
Call A2
……..
…….
…….
…….
…….
…….
…….
…….
…….
A
B
C
A1
A2
Bagian Utama
Dapat diterapkan secara :
- Internal : sub program,
procedure, function
- Eksternal : file unit,
header, modul
66. 01/20/19
Konsep
Pemecahan masalah
Menganalisa dan memahami permasalahan dan
membuat algoritma (pola berfikir terstruktur
berisi tahap-tahap penyelesaian masalah)
Membuat kode dari algoritma dalam pernyataan
sesuai dengan bahasa pemrograman
Testing (menjalankan program) dan debugging
(menemukan kesalahan)
Melakukan dokumentasi terhadap setiap langkah
67. 01/20/19
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
68. 01/20/19
Langkah-langkah
Pembuatan Program
Mendefinisikan masalah
Mencari solusi untuk masalah
Memilih teknik pemecahan masalah dan
algoritma
Menulis program
Melakukan testing dan debugging
Melakukan dokumentasi
Melakukan pemeliharaan
69. 01/20/19
Definisi Algoritma
Pola pikir yang terstruktur yang berisi
tahap-tahap penyelesaian masalah untuk
diimplementasikan dalam pemrograman
Biasanya dalam program terdapat tiga
struktur program:
– Struktur Urut
– Struktur Keputusan
– Struktur Perulangan
70. 01/20/19
Struktur Penulisan Program C
main()
{
statemen-statemen; //fungsi utama
}
fungsi_fungsi-_lain()
{
statemen-statemen; // fungsi-fungsi lain
}
71. 01/20/19
Pengenalan Fungsi Dasar
stdio.h, header standard input output karena ada
printf
main(), program utama
{}, awal program dan akhir program
printf(“HALLO C”); mencetak tulisan Hallo C
di monitor
#include<stdio.h>
main()
{
printf(“HALLO C”);
}
72. 01/20/19
Penentu Format
%d : untuk menampilkan bilangan bulat (int)
%f : untuk menampilkan bilangan pecahan (float)
%c : untuk menampilkan sebuah karakter (char)
%s : untuk menampilkan sebuah string (char [ ])
#include <stdio.h>
main( )
{
printf(“No : %dn”, 10);
printf(“Nama : %sn”, “Ali”);
printf(“Nilai : %fn”,80.5);
printf(“Huruf : %cn”,‘A’);
}
73. 01/20/19
Komentar
Untuk keperluan dokumentasi dengan
maksud agar program mudah dipahami
/* Tanda ini adalah komentar */
#include <stdio.h>
main()
{
printf(“Coban”); /* Ini adl program
pertama */
}
74. 01/20/19
Praprosesor #include
#include merupakan satu jenis pengarah
praprosesor yang dipakai untuk membaca file
yang dinamakan file judul (header file), yaitu
file yang berisi deklarasi fungsi dan definisi
konstanta
Contoh:
– #include <stdio.h>
– #include <conio.h>
– #include <math.h>