SlideShare a Scribd company logo
Bagaimana Anda menulis sebuah program komputer? Bagian I menjawab
pertanyaan ini, tetapi mengambil semua dari Bagian Ito menjawabnya sepenuhnya.
Belajar sintaks Pascal, meskipun penting, bukan Tujuan utama dari kursus pertama
dalam pemrograman. Sebuah bahasa komputer dapat dengan mudah belajar, serta
laporan dan aturan Turbo Pascal secara menyeluruh dijelaskan dalam Bagian H. Apa
siswa pemrograman awal harus menekankan adalah cukup sederhana how dari
pemrograman: bagaimana mengembangkan solusi tersebut ke masalah yang
diberikan, bagaimana mengatur sebuah program, dan bagaimana untuk membuat
penggunaan efektif dari teknik-teknik standar yang mewakili "trik" of perdagangan.
SEJARAH DAN DASAR PEMIKIRAN
Sebuah program komputer hanyalah sebuah set instruksi yang mengarahkan
komputer di perusahaan perhitungan dan pergerakan data. Selama tahun 1950 dan
1960-an, bagaimanapun, sedikit orang benar-benar berpikir tentang pertanyaan
mengembangkan metode umum untuk mengorganisir Program. Sebaliknya, program
ditulis banyak seperti Anda mungkin, dari atas Anda kepala, memberikan instruksi
seseorang tentang cara mengganti ban atau, lebih buruk, membangun rumah. Ketika
sebuah program tidak bekerja, itu hanya "ditambal" (tetap), kesalahan dengan
kesalahan, sampai programmer merasa bahwa ia telah menemukan mereka semua.
Biasanya, bagaimanapun, kesalahan terus muncul bahkan setelah program ini dirilis
untuk digunakan.
Seperti pendekatan untuk pemrograman ditoleransi pada generasi pertama dan
kedua komputer (sampai sekitar 1964). Namun, dengan munculnya generasi ketiga
selama tahun 1960 tengah dan akhir, perangkat keras menjadi lebih kuat daripada
perangkat lunak yang berlari itu. "Hit-and-miss" pendekatan untuk pemrograman
tidak bisa mengimbangi. Untuk mendapatkan manfaat penuh dari seperti komputer
generasi ketiga sebagai IBM System/360, sistem operasi dan, untuk beberapa
aplikasi, bahkan program individu harus berisi ribuan instruksi, sering ditulis oleh
banyak orang yang berbeda. Tidak ada pendekatan sistematis untuk organisasi
program yang telah dikembangkan untuk menangani tugas-tugas sebesar itu.
Hasilnya disebut "krisis perangkat lunak" dalam konferensi NATO bersidang untuk
mengatasi masalah ini. 'Dua "cerita horor" menggambarkan hal ini.
Salah satu contohnya adalah sistem operasi yang dikembangkan IBM untuk
System/360. Disebut OS/360, biaya ratusan juta dolar untuk mengembangkan,
adalah lebih dari satu tahun terlambat, dan berisi ribuan kesalahan. Setelah banyak
rilis, ratusan kesalahan mungkin masih tetap ketika System/370 diperkenalkan.
Dalam seluruh sistem, hanya 21 kesalahan yang ditemukan selama lima minggu
pengujian penerimaan, dan hanya 25 kesalahan tambahan ditemukan selama tahun
pertama operasi sistem. Selain itu, disampaikan di bawah anggaran dan lebih cepat
dari jadwal. " Kontras statistik ini dengan yang disebutkan sebelumnya untuk
pengembangan sistem operasi IBM OS/360 dan output rata-rata keseluruhan per
programmer per hari.
Hasil ini mengejutkan komunitas pemrograman. Pengembang perangkat lunak
mulai memperhatikan apa yang dikatakan Dijkstra dan menulis. Pada pertengahan
sampai akhir-1970, pemrograman terstruktur telah digunakan untuk segala sesuatu
dari komputer rumah untuk proyek pertahanan jutaan dolar. IBM tentu menjadi
percaya. Mills, IBM Kepala programmer pada proyek New York Times,
mengatakan, "Saya terkejut diriku seberapa besar dampak proyek dibuat. Itu seolaholah dunia sedang menunggu sesuatu seperti itu terjadi. Kami [sekarang]
menggunakannya [pemrograman terstruktur] di IBM di seluruh perusahaan. Hampir
tidak ada yang dapat bertahan hidup tanpa itu. "' Memang, pemrograman terstruktur
telah disebut "revolusi dalam programmingi ' dan "salah satu kemajuan yang paling
penting dalam perangkat lunak komputer dari dua terakhir Desember-ades. "'Ini
bukan untuk mengatakan, bagaimanapun, bahwa kebiasaan lama dengan mudah.
Banyak yang belajar Program sebelum bekerja Dijkstra sepakan konsep bahkan hari
ini. Jim Horning, computer ilmuwan di Xerox Palo Alto Research Center
menjelaskan, "Ada beberapa orang
di laboratorium ini yang membaca segala sesuatu yang dia [Dijkstra] menulis dan
sangat berterima kasih untuk itu, dan ada orang lain yang tidak akan bersedia untuk
memiliki dia datang mengunjungi kami. Dia cenderung polarisasi people.s10 Namun
demikian, kedua akademisi dan industri yang beralih lebih dan lebih ke philosophy
dan teknik pemrograman terstruktur. "Hari ini adalah aman untuk mengatakan bahwa
virtually semua praktisi [dari seni pemrograman] setidaknya mengakui manfaat
disiplin [pemrograman terstruktur], dan sebagian besar prakteknya secara eksklusif.
""Siswa menggunakan buku ini akan baik-disarankan untuk berkomitmen untuk
pendekatan ini, belajar dengan baik, dan menerapkannya secara konsisten dalam
setiap program yang mereka tulis.

KEUNTUNGAN TERSTRUKTUR PEMROGRAMAN
Secara umum, alamat pemrograman terstruktur dan untuk sebagian besar
memecahkan masalah kompleksitas dalam pemrograman komputer. Namun, dalam
pandangan sebelumnya, bukan diskusi panjang tentang beberapa masalah spesifik
yang telah terjadi di masa lalu, menguntungkan pada saat ini untuk daftar ringkasan
yang lebih rinci dari keuntungan yang didapat oleh teknik pemrograman terstruktur.
Mereka semua merupakan akibat langsung dari konsep keseluruhan subdivisi atau
modularitas baik dalam analisis masalah dan struktur program.
1. Program lebih mudah dan lebih cepat ditulis. Tugas pemrograman besar tidak
tetap tugas pemrograman besar. Mereka dipecah cukup jauh bahwa setiap
subtask mudah untuk program sebagai unit terpisah.
2. Program memiliki keandalan yang lebih besar. Kesalahan jauh lebih sedikit
organisasi dan logis terjadi pada tahap awal pengembangan program dan
menulis.
3. Program membutuhkan sedikit waktu untuk debug dan menguji. Hal ini benar,
pertama, karena kesalahan sedikit dibuat dalam menulis program. Namun,
modularitas juga membuat lebih cepat untuk melokalisasi dan memperbaiki
kesalahan-kesalahan yang memang terjadi. Sulitnya debugging program
meningkat jauh lebih cepat daripada ukurannya. Artinya, jika salah satu Program
ini dua kali ukuran yang lain, maka akan cenderung tidak mengambil dua kali
lebih lama untuk debug, tapi mungkin empat kali lebih lama. Banyak program
yang sangat besar (seperti sistem operasi) yang mulai digunakan masih
mengandung bug yang programer telah putus asa untuk menemukan. bemenyebabkan kesulitan tampak tidak dapat teratasi. Kadang-kadang proyekproyek yang telah dikonsumsi tahun usaha harus dibuang karena tidak mungkin
untuk menemukan mengapa mereka tidak akan bekerja. Prinsip-prinsip
pemrograman terstruktur menghilangkan banyak kesulitan dalam program
debugging, sehingga menghindari bencana tersebut.
4. Program lebih mudah untuk mempertahankan. Sebagai program dan sistem
yang digunakan, sering perlu muncul untuk mengubah mereka, baik dengan
membuat perubahan atau penambahan fitur baru. Informal survei menunjukkan
bahwa menulis, debugging, dan pengujian program mengkonsumsi kurang dari
setengah dari upaya pemrograman keseluruhan diinvestasikan dalam proyek
tersebut. Lebih dari setengah dari ini upaya menyeluruh masuk ke dalam
program maintenance. Dengan program terstruktur, tugas ini menjadi lebih
mudah, terutama untuk orang lain selain programmer aslinya. Ada beberapa
alasan untuk ini: Pertama, program ini lebih mudah dibaca, yaitu, logika
terorganisir dengan baik, program modular jauh lebih mudah untuk mengikuti.
Oleh karena itu, salah satu lebih cepat dapat menemukan bagaimana dan di
mana untuk membuat perubahan yang dibutuhkan. Sejak mod- ules terpisah,
unit-unit independen, modul lama hanya diganti dengan yang baru modul. Tidak
ada lagi satu perubahan memerlukan banyak perubahan lain melalui-keluar
seluruh program. Kedua, menambahkan fitur baru atau kemampuan untuk
program menjadi semudah menambahkan modul baru ke suprastruktur sudah
tersedia.
Hasil kumulatif dari semua keuntungan ini lebih besar secara keseluruhan
programmer pro-produktivitas. Pada hari-hari awal pemrograman komputer, itu
perlu untuk menggunakan banyak trik pintar mungkin untuk meminimalkan
penggunaan memori dan mengoptimalkan waktu CPU. Demikian coding
umumnya jelas dan sekarang disebut kode pintar. Namun, program efisiensiefisiensi biasanya berbanding terbalik dengan pembacaan Program. Untuk
mendapatkan program yang digunakan "kode pintar" untuk bekerja tepat di
tempat pertama adalah cukup sulit dan waktu-consum-ing, untuk membaca atau
memodifikasi program orang lain hampir mustahil. Tapi dalam hari-hari awal,
waktu programmer lebih murah daripada waktu CPU. Namun, dengan hardware
kemajuan, ruang memori tidak lagi masalah, dan waktu telah menjadi
programmer jauh lebih mahal daripada waktu CPU. Penekanan hari ini, oleh
karena itu, harus di-max.

STRUKTUR KONTROL tidak berulang
Setiap struktur kontrol yang tersedia dalam Pascal sekarang dijelaskan secara
rinci. Flowchart dan contoh Pascal disertakan. Namun, karena loop agak rumit,
mereka diperlakukan secara terpisah di bagian berikutnya. Tiga item yang termasuk
dalam presentasi dari setiap struktur pengendalian: flowchart umum atau generik,
suatu diagram alir untuk contoh aktual, dan kode Pascal misalnya bahwa. Ingat
bahwa bab ini terutama berkaitan dengan sifat umum dari struktur kontrol, tidak
dengan sintaks Pascal. Baca pasal 18 di Bagian II bersamaan dengan bab ini. Ini
berisi diskusi penuh sintaks dari pernyataan kontrol terstruktur yang digunakan untuk
menerapkan struktur kontrol dalam kode Pascal.
The URUTAN Struktur Kontrol
Struktur pengendalian URUTAN adalah yang paling mudah untuk memahami.
Ini merupakan eksekusi sekuensial dan diimplementasikan dalam Pascal melalui
pernyataan majemuk. Eksekusi jalur dijelaskan oleh struktur pengendalian ini adalah
garis lurus. Flowchart umum diberikan pada contoh khusus, yang dikodekan dalam
Pascal sebagai berikut:
PROGRAM EXAMPLE_SEQUENCE (INPUT, OUTPUT);
VAR A, B, C, D: REAL;
BEGIN
Readln (A, B, C);
D - A + (B + C);
Writeln (D)
END.

KARAKTERISTIK KONTROL STRUKTUR
Sebelum membahas setiap struktur pengendalian secara rinci, dua karakteristik
yang sangat penting dari semua struktur kontrol harus diamati. Masing-masing sifat
ini memainkan peran penting dalam.
PENGENDALIAN NAMA STRUKTUR
Tujuan dari bagian ini adalah untuk nama berbagai struktur kontrol yang tersedia
dalam Pascal dan laporan kontrol terstruktur dengan yang mereka
diimplementasikan. Setelah bagian ini, sisa bab ini menggambarkan setiap struktur
kontrol dalam detail.
Seperti yang Anda pelajari pada bagian sebelumnya, struktur kontrol bahasatergantung. Dengan demikian, setiap struktur pengendalian memiliki nama generik
yang, secara umum, juga bahasa independen. Oleh karena itu, jika struktur
pengendalian tertentu diimplementasikan dalam mengingat bahasa, nama pernyataan
dalam bahasa yang mungkin tidak sama dengan ge-Nama neric. Ini tidak ada
masalah, meskipun, karena mereka biasanya cukup dekat, dan kadang-kadang
bahkan sama. Sebagai contoh, FOR-DO struktur pengendalian adalah negara-DO
pemerintah dalam FORTRAN dan FOR pernyataan dalam BASIC dan Pascal. Juga,
DO-WHILE struktur pengendalian diimplementasikan dalam Pascal melalui
pernyataan WHILE.
Sekarang, lalu, apa berbagai struktur kontrol? Nama generik untuk struktur
pengendalian belum sepenuhnya standar, tetapi enam struktur yang telah
dilaksanakan di Pascal biasanya bernama, sebagai berikut: (1) URUTAN, (2)
SELEKSI (juga disebut IF-THEN-ELSE, IF-THEN Struktur adalah kasus khusus
dari struktur pengendalian SELECTION), (3) DO-WHILE, (4) DO-UNTIL (juga
disebut PERFORM-UNTIL atau REPEAT-UNTIL), (5) FOR-DO (juga disebut
ITERATIF-DO) , dan (6) SELECT-CASE (juga disebut ON-A-PERFORM).
Struktur lain ada, tetapi mereka tidak secara langsung dilaksanakan oleh pernyataan
Pascal '.
Jika enam struktur kontrol diimplementasikan dalam Pascal, mengapa Pascal
memiliki tujuh pernyataan kontrol terstruktur? Jawabannya adalah bahwa DENGAN
pernyataan adalah sedikit dari sebuah anomali. Ini adalah pernyataan kontrol
terstruktur, tetapi seperti lebih mudah pernyataan majemuk, Ini juga merupakan
struktur pengendalian URUTAN. Satu-satunya perbedaan antara dua pernyataan
adalah bahwa pernyataan DENGAN memungkinkan komponen-nya laporan menetap
untuk menjatuhkan nama variabel rekaman ketika mengakses bidang dalam yang
record. Ini secara efektif bentuk khusus dari pernyataan majemuk dan dibahas lebih
lanjut dalam.
Nama-nama Pernyataan Pascal untuk struktur kontrol sebelumnya adalah
sebagai berikut:
Generik Nama Pascal Pernyataan
Pernyataan Senyawa URUTAN
SELEKSI JIKA pernyataan
FOR-DO UNTUK pernyataan
DO-WHILE WHILE pernyataan
DO-UNTIL Pernyataan REPEAT
Pernyataan KASUS SELECT-CASE
Menurut definisi, masing-masing struktur kontrol merupakan salah satu
tiga jenis dasar eksekusi. Oleh karena itu, mereka dapat dikelompokkan sebagai
berikut:
Arus Sequential Bersyarat Arus berulang Arus
URUTAN SELEKSI-DO
SELECT-CASE-DO WHILE
DO-UNTIL
Semakin banyak struktur kontrol yang tersedia dalam bahasa pemrograman
tertentu, semakin
kuat bahwa bahasa adalah untuk menulis program. Pascal adalah salah satu lebih
kuat bahasa dalam hal ini.
Sifat Laporan Terstruktur
Menurut definisi yang diberikan di awal bab ini, pernyataan terstruktur adalah
con-structed dengan menggunakan pernyataan lain sebagai kulit hitam
bangunan. Selain itu, terstruktur negara-pemerintah menentukan cara di mana
laporan komponen dijalankan.
A Pernyataan terstruktur, oleh karena itu, mengatur dua hal. Pertama, mengatur
laporan
yang itu terdiri. Ini jelas: karena setiap pernyataan terstruktur terdiri dari
pernyataan lain, itu merupakan cara tertentu untuk menempatkan laporan
keuangan tersebut bersama-sama. Sec-ond, karena menentukan cara di mana
mereka dieksekusi (berurutan, kondisi-tionally, atau berulang-ulang), pernyataan
terstruktur juga mengatur aliran kontrol dalam program.
Dua kesimpulan sekarang dapat ditarik sehubungan dengan laporan terstruktur:
1. Sebuah pernyataan terstruktur juga harus menjadi pernyataan kontrol, tidak
ada hal seperti itu sebagai pernyataan non-kontrol terstruktur.
Alasannya cukup sederhana. Karena pernyataan terstruktur menentukan cara di
mana laporan komponen dijalankan, itu tentu mempengaruhi aliran kontrol
melalui laporan keuangan tersebut dan karena itu adalah pernyataan kontrol.
2. Sebuah pernyataan terstruktur adalah cara untuk menerapkan struktur
pengendalian di tingkat tinggi bahasa.
bagan loop harus diterjemahkan ideomatik daripada harfiah. Dengan kata lain,
lakukan tidak membangun loop dengan pernyataan IF dan GOTO pernyataanpernyataan yang menggunakan telah dirancang untuk kontrol loop otomatis dan
dengan pemrograman terstruktur dalam pikiran.
Sekarang perhatikan pseudocode. Menerjemahkan pseudocode ke Pascal tidak
menimbulkan masalah apa pun. Pseudocode dirancang dengan pernyataan kontrol
terstruktur dalam pikiran. Program sebelumnya akan ditulis dalam pseudocode
sebagai berikut:
BEGIN bagian kontrol utama
SetK = 1
DOWHILE K s 5
Baca A
Cetak (A * A)
SetK = K +1 EndDo
END bagian kontrol utama
Meskipun masalah menerjemahkan diagram alur ke dalam kode Pascal, mereka
memberikan demonstrasi sangat grafis dari struktur kontrol dipelajari dalam bab ini.
Oleh karena itu, dalam penjelasan struktur kontrol pada umumnya dan statments
kontrol terstruktur Pascal pada khususnya, diagram alur secara rutin digunakan.

DEFINISI DARI STRUKTUR PENGENDALIAN
Kita telah melihat bahwa blok bangunan dari sebuah modul dan, karena itu,
sebuah program adalah
pernyataan individu tersedia dalam bahasa tingkat tinggi yang digunakan. Apa
cara yang berbeda blok bangunan ini dapat disatukan untuk membentuk modul?
Ada beberapa aspek untuk pertanyaan ini, dan yang terbaik adalah memperlakukan
mereka secara terpisah.

More Related Content

Similar to Tugas 1

Pengenalan RPL
Pengenalan RPLPengenalan RPL
Pengenalan RPL
Rangga Dwi Sri Nardi
 
Algoritma pemrograman terstruktur
Algoritma pemrograman terstrukturAlgoritma pemrograman terstruktur
Algoritma pemrograman terstruktur
Raden Maulana
 
1 pengenalanrpl
1 pengenalanrpl1 pengenalanrpl
1 pengenalanrpl
mamas12
 
Pemodelan perangkat lunak
Pemodelan perangkat lunakPemodelan perangkat lunak
Pemodelan perangkat lunak
AdityaSaputra83
 
Pengantar algoritma & pemrograman komputer
Pengantar algoritma & pemrograman komputerPengantar algoritma & pemrograman komputer
Pengantar algoritma & pemrograman komputerMateri Kuliah Online
 
1 ADP Algoritma
1   ADP Algoritma1   ADP Algoritma
1 ADP Algoritma
Avenzz Venzz
 
RPL
RPLRPL
1.adp dasar-dasar algoritma
1.adp dasar-dasar algoritma1.adp dasar-dasar algoritma
1.adp dasar-dasar algoritma
Hardini_HD
 
1 adp dasar-dasar algoritma
1   adp dasar-dasar algoritma1   adp dasar-dasar algoritma
1 adp dasar-dasar algoritma
Avenzz Venzz
 
1 adp dasar-dasar algoritma
1   adp dasar-dasar algoritma1   adp dasar-dasar algoritma
1 adp dasar-dasar algoritma
Chabil_Juniar
 
1 adp dasar-dasar algoritma
1   adp dasar-dasar algoritma1   adp dasar-dasar algoritma
1 adp dasar-dasar algoritma
Fisma Ananda
 
Dasar Algoritma
Dasar Algoritma Dasar Algoritma
Dasar Algoritma
casnadi
 
1 adp dasar-dasar pemrograman
1   adp dasar-dasar pemrograman1   adp dasar-dasar pemrograman
1 adp dasar-dasar pemrograman
Muhammad Salihin
 
Modul pemrograman-osn-20092
Modul pemrograman-osn-20092Modul pemrograman-osn-20092
Modul pemrograman-osn-20092
Sejahtera Affif
 
Diktat penuntun praktikum fortran
Diktat penuntun praktikum fortranDiktat penuntun praktikum fortran
Diktat penuntun praktikum fortran
radikaljakas
 
Perkuliahan 02 Model software engginer
Perkuliahan 02 Model software engginerPerkuliahan 02 Model software engginer
Perkuliahan 02 Model software engginer
Rakhmi Khalida, M.M.S.I
 
Sekilas tentang c
Sekilas tentang cSekilas tentang c
Sekilas tentang c
Dyes Wirok
 
Implementasi perangkat-lunak
Implementasi perangkat-lunakImplementasi perangkat-lunak
Implementasi perangkat-lunak
benzy swaroes
 
TD-666-01-teknik-pemrograman
TD-666-01-teknik-pemrogramanTD-666-01-teknik-pemrograman
TD-666-01-teknik-pemrograman
Tino Dwiantoro
 

Similar to Tugas 1 (20)

Pengenalan RPL
Pengenalan RPLPengenalan RPL
Pengenalan RPL
 
Algoritma pemrograman terstruktur
Algoritma pemrograman terstrukturAlgoritma pemrograman terstruktur
Algoritma pemrograman terstruktur
 
1 pengenalanrpl
1 pengenalanrpl1 pengenalanrpl
1 pengenalanrpl
 
Pemodelan perangkat lunak
Pemodelan perangkat lunakPemodelan perangkat lunak
Pemodelan perangkat lunak
 
Pengantar algoritma & pemrograman komputer
Pengantar algoritma & pemrograman komputerPengantar algoritma & pemrograman komputer
Pengantar algoritma & pemrograman komputer
 
1 ADP Algoritma
1   ADP Algoritma1   ADP Algoritma
1 ADP Algoritma
 
RPL
RPLRPL
RPL
 
1.adp dasar-dasar algoritma
1.adp dasar-dasar algoritma1.adp dasar-dasar algoritma
1.adp dasar-dasar algoritma
 
1 adp dasar-dasar algoritma
1   adp dasar-dasar algoritma1   adp dasar-dasar algoritma
1 adp dasar-dasar algoritma
 
1 adp dasar-dasar algoritma
1   adp dasar-dasar algoritma1   adp dasar-dasar algoritma
1 adp dasar-dasar algoritma
 
1 adp dasar-dasar algoritma
1   adp dasar-dasar algoritma1   adp dasar-dasar algoritma
1 adp dasar-dasar algoritma
 
Dasar Algoritma
Dasar Algoritma Dasar Algoritma
Dasar Algoritma
 
1 adp dasar-dasar pemrograman
1   adp dasar-dasar pemrograman1   adp dasar-dasar pemrograman
1 adp dasar-dasar pemrograman
 
Modul pemrograman-osn-20092
Modul pemrograman-osn-20092Modul pemrograman-osn-20092
Modul pemrograman-osn-20092
 
Diktat penuntun praktikum fortran
Diktat penuntun praktikum fortranDiktat penuntun praktikum fortran
Diktat penuntun praktikum fortran
 
Perkuliahan 02 Model software engginer
Perkuliahan 02 Model software engginerPerkuliahan 02 Model software engginer
Perkuliahan 02 Model software engginer
 
Makalah java
Makalah javaMakalah java
Makalah java
 
Sekilas tentang c
Sekilas tentang cSekilas tentang c
Sekilas tentang c
 
Implementasi perangkat-lunak
Implementasi perangkat-lunakImplementasi perangkat-lunak
Implementasi perangkat-lunak
 
TD-666-01-teknik-pemrograman
TD-666-01-teknik-pemrogramanTD-666-01-teknik-pemrograman
TD-666-01-teknik-pemrograman
 

More from Av Ri

Ocd 3.0
Ocd 3.0Ocd 3.0
Ocd 3.0
Av Ri
 
Ocd
OcdOcd
Ocd
Av Ri
 
Ocd 3.5
Ocd 3.5Ocd 3.5
Ocd 3.5
Av Ri
 
Tugas simbad
Tugas simbadTugas simbad
Tugas simbad
Av Ri
 
Tugas1
Tugas1Tugas1
Tugas1
Av Ri
 
Tugas 1
Tugas 1Tugas 1
Tugas 1
Av Ri
 
Tugas2
Tugas2Tugas2
Tugas2
Av Ri
 
Tugas1
Tugas1Tugas1
Tugas1
Av Ri
 
Tugas3
Tugas3Tugas3
Tugas3
Av Ri
 
Tugas p kn
Tugas p knTugas p kn
Tugas p kn
Av Ri
 
Tugas3
Tugas3Tugas3
Tugas3
Av Ri
 
Tugas2
Tugas2Tugas2
Tugas2
Av Ri
 
Tugas1
Tugas1Tugas1
Tugas1
Av Ri
 
Tugas4
Tugas4Tugas4
Tugas4
Av Ri
 
Logika
LogikaLogika
Logika
Av Ri
 
Logika
LogikaLogika
Logika
Av Ri
 
Tugas 3
Tugas 3Tugas 3
Tugas 3
Av Ri
 
Tugas 2
Tugas 2Tugas 2
Tugas 2
Av Ri
 
Tugas 1
Tugas 1Tugas 1
Tugas 1
Av Ri
 
Tugas 1
Tugas 1Tugas 1
Tugas 1
Av Ri
 

More from Av Ri (20)

Ocd 3.0
Ocd 3.0Ocd 3.0
Ocd 3.0
 
Ocd
OcdOcd
Ocd
 
Ocd 3.5
Ocd 3.5Ocd 3.5
Ocd 3.5
 
Tugas simbad
Tugas simbadTugas simbad
Tugas simbad
 
Tugas1
Tugas1Tugas1
Tugas1
 
Tugas 1
Tugas 1Tugas 1
Tugas 1
 
Tugas2
Tugas2Tugas2
Tugas2
 
Tugas1
Tugas1Tugas1
Tugas1
 
Tugas3
Tugas3Tugas3
Tugas3
 
Tugas p kn
Tugas p knTugas p kn
Tugas p kn
 
Tugas3
Tugas3Tugas3
Tugas3
 
Tugas2
Tugas2Tugas2
Tugas2
 
Tugas1
Tugas1Tugas1
Tugas1
 
Tugas4
Tugas4Tugas4
Tugas4
 
Logika
LogikaLogika
Logika
 
Logika
LogikaLogika
Logika
 
Tugas 3
Tugas 3Tugas 3
Tugas 3
 
Tugas 2
Tugas 2Tugas 2
Tugas 2
 
Tugas 1
Tugas 1Tugas 1
Tugas 1
 
Tugas 1
Tugas 1Tugas 1
Tugas 1
 

Tugas 1

  • 1. Bagaimana Anda menulis sebuah program komputer? Bagian I menjawab pertanyaan ini, tetapi mengambil semua dari Bagian Ito menjawabnya sepenuhnya. Belajar sintaks Pascal, meskipun penting, bukan Tujuan utama dari kursus pertama dalam pemrograman. Sebuah bahasa komputer dapat dengan mudah belajar, serta laporan dan aturan Turbo Pascal secara menyeluruh dijelaskan dalam Bagian H. Apa siswa pemrograman awal harus menekankan adalah cukup sederhana how dari pemrograman: bagaimana mengembangkan solusi tersebut ke masalah yang diberikan, bagaimana mengatur sebuah program, dan bagaimana untuk membuat penggunaan efektif dari teknik-teknik standar yang mewakili "trik" of perdagangan. SEJARAH DAN DASAR PEMIKIRAN Sebuah program komputer hanyalah sebuah set instruksi yang mengarahkan komputer di perusahaan perhitungan dan pergerakan data. Selama tahun 1950 dan 1960-an, bagaimanapun, sedikit orang benar-benar berpikir tentang pertanyaan mengembangkan metode umum untuk mengorganisir Program. Sebaliknya, program ditulis banyak seperti Anda mungkin, dari atas Anda kepala, memberikan instruksi seseorang tentang cara mengganti ban atau, lebih buruk, membangun rumah. Ketika sebuah program tidak bekerja, itu hanya "ditambal" (tetap), kesalahan dengan kesalahan, sampai programmer merasa bahwa ia telah menemukan mereka semua. Biasanya, bagaimanapun, kesalahan terus muncul bahkan setelah program ini dirilis untuk digunakan. Seperti pendekatan untuk pemrograman ditoleransi pada generasi pertama dan kedua komputer (sampai sekitar 1964). Namun, dengan munculnya generasi ketiga selama tahun 1960 tengah dan akhir, perangkat keras menjadi lebih kuat daripada perangkat lunak yang berlari itu. "Hit-and-miss" pendekatan untuk pemrograman tidak bisa mengimbangi. Untuk mendapatkan manfaat penuh dari seperti komputer generasi ketiga sebagai IBM System/360, sistem operasi dan, untuk beberapa aplikasi, bahkan program individu harus berisi ribuan instruksi, sering ditulis oleh banyak orang yang berbeda. Tidak ada pendekatan sistematis untuk organisasi program yang telah dikembangkan untuk menangani tugas-tugas sebesar itu. Hasilnya disebut "krisis perangkat lunak" dalam konferensi NATO bersidang untuk mengatasi masalah ini. 'Dua "cerita horor" menggambarkan hal ini. Salah satu contohnya adalah sistem operasi yang dikembangkan IBM untuk System/360. Disebut OS/360, biaya ratusan juta dolar untuk mengembangkan, adalah lebih dari satu tahun terlambat, dan berisi ribuan kesalahan. Setelah banyak rilis, ratusan kesalahan mungkin masih tetap ketika System/370 diperkenalkan. Dalam seluruh sistem, hanya 21 kesalahan yang ditemukan selama lima minggu pengujian penerimaan, dan hanya 25 kesalahan tambahan ditemukan selama tahun pertama operasi sistem. Selain itu, disampaikan di bawah anggaran dan lebih cepat dari jadwal. " Kontras statistik ini dengan yang disebutkan sebelumnya untuk pengembangan sistem operasi IBM OS/360 dan output rata-rata keseluruhan per programmer per hari. Hasil ini mengejutkan komunitas pemrograman. Pengembang perangkat lunak mulai memperhatikan apa yang dikatakan Dijkstra dan menulis. Pada pertengahan sampai akhir-1970, pemrograman terstruktur telah digunakan untuk segala sesuatu dari komputer rumah untuk proyek pertahanan jutaan dolar. IBM tentu menjadi percaya. Mills, IBM Kepala programmer pada proyek New York Times, mengatakan, "Saya terkejut diriku seberapa besar dampak proyek dibuat. Itu seolaholah dunia sedang menunggu sesuatu seperti itu terjadi. Kami [sekarang] menggunakannya [pemrograman terstruktur] di IBM di seluruh perusahaan. Hampir tidak ada yang dapat bertahan hidup tanpa itu. "' Memang, pemrograman terstruktur telah disebut "revolusi dalam programmingi ' dan "salah satu kemajuan yang paling penting dalam perangkat lunak komputer dari dua terakhir Desember-ades. "'Ini bukan untuk mengatakan, bagaimanapun, bahwa kebiasaan lama dengan mudah. Banyak yang belajar Program sebelum bekerja Dijkstra sepakan konsep bahkan hari ini. Jim Horning, computer ilmuwan di Xerox Palo Alto Research Center menjelaskan, "Ada beberapa orang
  • 2. di laboratorium ini yang membaca segala sesuatu yang dia [Dijkstra] menulis dan sangat berterima kasih untuk itu, dan ada orang lain yang tidak akan bersedia untuk memiliki dia datang mengunjungi kami. Dia cenderung polarisasi people.s10 Namun demikian, kedua akademisi dan industri yang beralih lebih dan lebih ke philosophy dan teknik pemrograman terstruktur. "Hari ini adalah aman untuk mengatakan bahwa virtually semua praktisi [dari seni pemrograman] setidaknya mengakui manfaat disiplin [pemrograman terstruktur], dan sebagian besar prakteknya secara eksklusif. ""Siswa menggunakan buku ini akan baik-disarankan untuk berkomitmen untuk pendekatan ini, belajar dengan baik, dan menerapkannya secara konsisten dalam setiap program yang mereka tulis. KEUNTUNGAN TERSTRUKTUR PEMROGRAMAN Secara umum, alamat pemrograman terstruktur dan untuk sebagian besar memecahkan masalah kompleksitas dalam pemrograman komputer. Namun, dalam pandangan sebelumnya, bukan diskusi panjang tentang beberapa masalah spesifik yang telah terjadi di masa lalu, menguntungkan pada saat ini untuk daftar ringkasan yang lebih rinci dari keuntungan yang didapat oleh teknik pemrograman terstruktur. Mereka semua merupakan akibat langsung dari konsep keseluruhan subdivisi atau modularitas baik dalam analisis masalah dan struktur program. 1. Program lebih mudah dan lebih cepat ditulis. Tugas pemrograman besar tidak tetap tugas pemrograman besar. Mereka dipecah cukup jauh bahwa setiap subtask mudah untuk program sebagai unit terpisah. 2. Program memiliki keandalan yang lebih besar. Kesalahan jauh lebih sedikit organisasi dan logis terjadi pada tahap awal pengembangan program dan menulis. 3. Program membutuhkan sedikit waktu untuk debug dan menguji. Hal ini benar, pertama, karena kesalahan sedikit dibuat dalam menulis program. Namun, modularitas juga membuat lebih cepat untuk melokalisasi dan memperbaiki kesalahan-kesalahan yang memang terjadi. Sulitnya debugging program meningkat jauh lebih cepat daripada ukurannya. Artinya, jika salah satu Program ini dua kali ukuran yang lain, maka akan cenderung tidak mengambil dua kali lebih lama untuk debug, tapi mungkin empat kali lebih lama. Banyak program yang sangat besar (seperti sistem operasi) yang mulai digunakan masih mengandung bug yang programer telah putus asa untuk menemukan. bemenyebabkan kesulitan tampak tidak dapat teratasi. Kadang-kadang proyekproyek yang telah dikonsumsi tahun usaha harus dibuang karena tidak mungkin untuk menemukan mengapa mereka tidak akan bekerja. Prinsip-prinsip pemrograman terstruktur menghilangkan banyak kesulitan dalam program debugging, sehingga menghindari bencana tersebut. 4. Program lebih mudah untuk mempertahankan. Sebagai program dan sistem yang digunakan, sering perlu muncul untuk mengubah mereka, baik dengan membuat perubahan atau penambahan fitur baru. Informal survei menunjukkan bahwa menulis, debugging, dan pengujian program mengkonsumsi kurang dari setengah dari upaya pemrograman keseluruhan diinvestasikan dalam proyek tersebut. Lebih dari setengah dari ini upaya menyeluruh masuk ke dalam program maintenance. Dengan program terstruktur, tugas ini menjadi lebih mudah, terutama untuk orang lain selain programmer aslinya. Ada beberapa alasan untuk ini: Pertama, program ini lebih mudah dibaca, yaitu, logika terorganisir dengan baik, program modular jauh lebih mudah untuk mengikuti. Oleh karena itu, salah satu lebih cepat dapat menemukan bagaimana dan di mana untuk membuat perubahan yang dibutuhkan. Sejak mod- ules terpisah, unit-unit independen, modul lama hanya diganti dengan yang baru modul. Tidak ada lagi satu perubahan memerlukan banyak perubahan lain melalui-keluar seluruh program. Kedua, menambahkan fitur baru atau kemampuan untuk program menjadi semudah menambahkan modul baru ke suprastruktur sudah tersedia. Hasil kumulatif dari semua keuntungan ini lebih besar secara keseluruhan programmer pro-produktivitas. Pada hari-hari awal pemrograman komputer, itu perlu untuk menggunakan banyak trik pintar mungkin untuk meminimalkan penggunaan memori dan mengoptimalkan waktu CPU. Demikian coding
  • 3. umumnya jelas dan sekarang disebut kode pintar. Namun, program efisiensiefisiensi biasanya berbanding terbalik dengan pembacaan Program. Untuk mendapatkan program yang digunakan "kode pintar" untuk bekerja tepat di tempat pertama adalah cukup sulit dan waktu-consum-ing, untuk membaca atau memodifikasi program orang lain hampir mustahil. Tapi dalam hari-hari awal, waktu programmer lebih murah daripada waktu CPU. Namun, dengan hardware kemajuan, ruang memori tidak lagi masalah, dan waktu telah menjadi programmer jauh lebih mahal daripada waktu CPU. Penekanan hari ini, oleh karena itu, harus di-max. STRUKTUR KONTROL tidak berulang Setiap struktur kontrol yang tersedia dalam Pascal sekarang dijelaskan secara rinci. Flowchart dan contoh Pascal disertakan. Namun, karena loop agak rumit, mereka diperlakukan secara terpisah di bagian berikutnya. Tiga item yang termasuk dalam presentasi dari setiap struktur pengendalian: flowchart umum atau generik, suatu diagram alir untuk contoh aktual, dan kode Pascal misalnya bahwa. Ingat bahwa bab ini terutama berkaitan dengan sifat umum dari struktur kontrol, tidak dengan sintaks Pascal. Baca pasal 18 di Bagian II bersamaan dengan bab ini. Ini berisi diskusi penuh sintaks dari pernyataan kontrol terstruktur yang digunakan untuk menerapkan struktur kontrol dalam kode Pascal. The URUTAN Struktur Kontrol Struktur pengendalian URUTAN adalah yang paling mudah untuk memahami. Ini merupakan eksekusi sekuensial dan diimplementasikan dalam Pascal melalui pernyataan majemuk. Eksekusi jalur dijelaskan oleh struktur pengendalian ini adalah garis lurus. Flowchart umum diberikan pada contoh khusus, yang dikodekan dalam Pascal sebagai berikut: PROGRAM EXAMPLE_SEQUENCE (INPUT, OUTPUT); VAR A, B, C, D: REAL; BEGIN Readln (A, B, C); D - A + (B + C); Writeln (D) END. KARAKTERISTIK KONTROL STRUKTUR Sebelum membahas setiap struktur pengendalian secara rinci, dua karakteristik yang sangat penting dari semua struktur kontrol harus diamati. Masing-masing sifat ini memainkan peran penting dalam. PENGENDALIAN NAMA STRUKTUR Tujuan dari bagian ini adalah untuk nama berbagai struktur kontrol yang tersedia dalam Pascal dan laporan kontrol terstruktur dengan yang mereka diimplementasikan. Setelah bagian ini, sisa bab ini menggambarkan setiap struktur kontrol dalam detail. Seperti yang Anda pelajari pada bagian sebelumnya, struktur kontrol bahasatergantung. Dengan demikian, setiap struktur pengendalian memiliki nama generik yang, secara umum, juga bahasa independen. Oleh karena itu, jika struktur pengendalian tertentu diimplementasikan dalam mengingat bahasa, nama pernyataan dalam bahasa yang mungkin tidak sama dengan ge-Nama neric. Ini tidak ada masalah, meskipun, karena mereka biasanya cukup dekat, dan kadang-kadang bahkan sama. Sebagai contoh, FOR-DO struktur pengendalian adalah negara-DO pemerintah dalam FORTRAN dan FOR pernyataan dalam BASIC dan Pascal. Juga,
  • 4. DO-WHILE struktur pengendalian diimplementasikan dalam Pascal melalui pernyataan WHILE. Sekarang, lalu, apa berbagai struktur kontrol? Nama generik untuk struktur pengendalian belum sepenuhnya standar, tetapi enam struktur yang telah dilaksanakan di Pascal biasanya bernama, sebagai berikut: (1) URUTAN, (2) SELEKSI (juga disebut IF-THEN-ELSE, IF-THEN Struktur adalah kasus khusus dari struktur pengendalian SELECTION), (3) DO-WHILE, (4) DO-UNTIL (juga disebut PERFORM-UNTIL atau REPEAT-UNTIL), (5) FOR-DO (juga disebut ITERATIF-DO) , dan (6) SELECT-CASE (juga disebut ON-A-PERFORM). Struktur lain ada, tetapi mereka tidak secara langsung dilaksanakan oleh pernyataan Pascal '. Jika enam struktur kontrol diimplementasikan dalam Pascal, mengapa Pascal memiliki tujuh pernyataan kontrol terstruktur? Jawabannya adalah bahwa DENGAN pernyataan adalah sedikit dari sebuah anomali. Ini adalah pernyataan kontrol terstruktur, tetapi seperti lebih mudah pernyataan majemuk, Ini juga merupakan struktur pengendalian URUTAN. Satu-satunya perbedaan antara dua pernyataan adalah bahwa pernyataan DENGAN memungkinkan komponen-nya laporan menetap untuk menjatuhkan nama variabel rekaman ketika mengakses bidang dalam yang record. Ini secara efektif bentuk khusus dari pernyataan majemuk dan dibahas lebih lanjut dalam. Nama-nama Pernyataan Pascal untuk struktur kontrol sebelumnya adalah sebagai berikut: Generik Nama Pascal Pernyataan Pernyataan Senyawa URUTAN SELEKSI JIKA pernyataan FOR-DO UNTUK pernyataan DO-WHILE WHILE pernyataan DO-UNTIL Pernyataan REPEAT Pernyataan KASUS SELECT-CASE Menurut definisi, masing-masing struktur kontrol merupakan salah satu tiga jenis dasar eksekusi. Oleh karena itu, mereka dapat dikelompokkan sebagai berikut: Arus Sequential Bersyarat Arus berulang Arus URUTAN SELEKSI-DO SELECT-CASE-DO WHILE DO-UNTIL Semakin banyak struktur kontrol yang tersedia dalam bahasa pemrograman tertentu, semakin kuat bahwa bahasa adalah untuk menulis program. Pascal adalah salah satu lebih kuat bahasa dalam hal ini. Sifat Laporan Terstruktur Menurut definisi yang diberikan di awal bab ini, pernyataan terstruktur adalah con-structed dengan menggunakan pernyataan lain sebagai kulit hitam bangunan. Selain itu, terstruktur negara-pemerintah menentukan cara di mana laporan komponen dijalankan. A Pernyataan terstruktur, oleh karena itu, mengatur dua hal. Pertama, mengatur laporan yang itu terdiri. Ini jelas: karena setiap pernyataan terstruktur terdiri dari pernyataan lain, itu merupakan cara tertentu untuk menempatkan laporan keuangan tersebut bersama-sama. Sec-ond, karena menentukan cara di mana mereka dieksekusi (berurutan, kondisi-tionally, atau berulang-ulang), pernyataan terstruktur juga mengatur aliran kontrol dalam program. Dua kesimpulan sekarang dapat ditarik sehubungan dengan laporan terstruktur: 1. Sebuah pernyataan terstruktur juga harus menjadi pernyataan kontrol, tidak ada hal seperti itu sebagai pernyataan non-kontrol terstruktur. Alasannya cukup sederhana. Karena pernyataan terstruktur menentukan cara di mana laporan komponen dijalankan, itu tentu mempengaruhi aliran kontrol melalui laporan keuangan tersebut dan karena itu adalah pernyataan kontrol. 2. Sebuah pernyataan terstruktur adalah cara untuk menerapkan struktur pengendalian di tingkat tinggi bahasa.
  • 5. bagan loop harus diterjemahkan ideomatik daripada harfiah. Dengan kata lain, lakukan tidak membangun loop dengan pernyataan IF dan GOTO pernyataanpernyataan yang menggunakan telah dirancang untuk kontrol loop otomatis dan dengan pemrograman terstruktur dalam pikiran. Sekarang perhatikan pseudocode. Menerjemahkan pseudocode ke Pascal tidak menimbulkan masalah apa pun. Pseudocode dirancang dengan pernyataan kontrol terstruktur dalam pikiran. Program sebelumnya akan ditulis dalam pseudocode sebagai berikut: BEGIN bagian kontrol utama SetK = 1 DOWHILE K s 5 Baca A Cetak (A * A) SetK = K +1 EndDo END bagian kontrol utama Meskipun masalah menerjemahkan diagram alur ke dalam kode Pascal, mereka memberikan demonstrasi sangat grafis dari struktur kontrol dipelajari dalam bab ini. Oleh karena itu, dalam penjelasan struktur kontrol pada umumnya dan statments kontrol terstruktur Pascal pada khususnya, diagram alur secara rutin digunakan. DEFINISI DARI STRUKTUR PENGENDALIAN Kita telah melihat bahwa blok bangunan dari sebuah modul dan, karena itu, sebuah program adalah pernyataan individu tersedia dalam bahasa tingkat tinggi yang digunakan. Apa cara yang berbeda blok bangunan ini dapat disatukan untuk membentuk modul? Ada beberapa aspek untuk pertanyaan ini, dan yang terbaik adalah memperlakukan mereka secara terpisah.