ALGORITMA DAN PEMOGRAMAN
BAB I
PENDAHULUAN
1.1 Latar
Belakang
Bahasa program
merupakan suatu wahana untuk menuangkan pikiran manusia yang dapat
dimengerti oleh mesin komputer sehingga
bernilai guna. Suatu bahasa program akan terikat aturan dari paradigma bahasa. Ada berbagai macam
paradigma bahasa : Prosedural,
Fungsional, Deklaratif, Object Oriented, Konkuren.
Perlu diperhatikan perbedaan antara belajar bahasa
program dengan belajar memprogram!!! Belajar bahasa program
hanya belajar tentang sintak (aturan) dari bahasa sedangkan belajar memprogram
akan tercakup beberapa hal yang didalamnya terkandung tentang belajar bahasa
program itu sendiri. Yang harus
diperhatikan oleh mahasiswa yang sedang belajar memprogram, yaitu :
- Simulasi , sensibilitas terhadap masalah dan kemungkinan solusi. Kegiatan dilakukan di kelas, melalui permainan. Contoh : Mengurutkan tinggi badan mahasiswa dari tinggi ke pendek atau sebaliknya. Permainan dapat dilakukan secara manual maupun dengan komputer.
- Analisis masalah secara lebih formal dan membuat spesifikasi dan algoritma dalam notasi yang ditetapkan. Mahasiswa harus menuliskan solusi algoritmiknya dalam notasi standar di kelas. Penulisan notasi algoritmik bertujuan untuk menyeragamkan pemahaman tentang algoritma program yang terbebas dari sintak (aturan) penulisan bahasa program .
- Menulis program, yaitu menterjemahkan notasi algoritmik ke dalam sintak bahasa program.
- Debugging dan menguji coba program. Hal ini bertujuan untuk mendapatkan program yang benar. Program dikatakan benar jika terbebas dari salah lojik dan sintak bahasa. Secara ideal mahasiswa hanya diberi kesempatan untuk me-run program sebanyak 2 kali : pertama untuk membersihkan program dari kesalahan sintak dan kedua untuk mendapatkan program benar. Pada tahap ini diharapkan tidak terjadi kesalahan lojik jika analisa benar.
- Mengamati peristiwa eksekusi, perlu dilakukan untuk meningkatkan kepercayaan bahwa jika analisa benar maka sisa pekerjaan menjadi mudah. Pada pemrograman prosedural, aspek ini penting untuk memahami fenomena eksekusi dan perubahaan nilai suatu struktur data.
- Membaca program : orang akan dapat menulis dengan baik kalau sering membaca. Hal ini juga berlaku dalam memprogram. Kegiatan yang dapat dilakukan di kelas adalah dengan saling tukar menukar teks algoritma, dan saling mengkritik algoritma teman. Mahasiswa harus berlatih sendiri pada kegiatan belajar bersama.
·
Membuktikan kebenaran program secara formal , satu-satunya hal yang menjamin kebenaran,
tetapi kontradiktif dan sulit diterapkan dalam kehidupan sehari-hari. Program
yang hanya lima baris pembuktiannya bisa sehalaman, sehingga seringkali tidak
pernah diterapkan dalam aplikasi nyata.
1.2 Rumusan Masalah
·
Menganalisis bagaimana menyelesaikan
masalah dengan menggunakan program?
·
Apa itu algotrima dan pemrograman?
·
Mengetahui pemrograman C++?
1.3 Tujuan
Penulisan
Tujuan di buat atau disusunya
Makalah ini yaitu untuk menyelesaikan salah satu tugas mata pelajaran yang
khususnya mata pelajaran C++. agar mendapat nilai tambahan yang khususnya mata
pelajaran Pemograman C++.
Selain itu, penulis berharap di
buatnya makalah ini bukan hanya untuk tugas yang di berikan semata, akan tetapi
bias membantu kita semua dalam hal mempelajari ilmu pengetahuan yang khususnya
Pemograman C++ ini. Harapan penulis yaitu semoga makalah ini tidak hanya
bermanfaat bagi penulis akan tetapi sangat-sangat bermanfaat khususnya juga
bagi para pembaca atau kita semua yang membutuhkan untuk referensi ataupun
salah satu sarana untuk menambah wawasan dalam hal ilmu pengetahuan yang
khususnya Pemograman C++. Semoga makalah ini bisa bermanfaat bagi penulis
khsususnya dan kita semua amiin.
BAB II
ALGORITMA DAN PEMROGRAMAN
2.1 PENGERTIAN ALGORITMA DAN PEMROGRAMAN
Ditinjau dari
asal usul katanya kata Algoritma sendiri mempunyai sejarah yang aneh.
Oranghanya menemukan kata Algorism yang berarti proses menghitung
dengan angka arab. Andadikatakan Algorist jika anda menghitung
menggunakan Angka Arab. Para ahli bahasaberusaha menemukan asal kata ini namun
hasilnya kurang memuaskan. Akhirnya para ahlisejarah matematika menemukan asal
kata tersebut yang berasal dari nama penulis bukuarab yang terkenal yaitu Abu
Ja’far Muhammad Ibnu Musa Al-Khuwarizmi.
Al-Khuwarizmi
dibaca orang barat menjadi Algorism. Al-Khuwarizmi menulis buku
yangberjudul Kitab Al Jabar Wal-Muqabala yang artinya “Buku pemugaran
dan pengurangan”(The book of restoration and reduction). Dari judul
buku itu kita juga memperoleh akarkata “Aljabar” (Algebra). Perubahan
kata dari Algorism menjadi Algorithm muncul karenakata Algorism
sering dikelirukan dengan Arithmetic, sehingga akhiran –sm berubah
menjadi–thm. Karena perhitungan dengan angka Arab sudah menjadi hal
yang biasa. Maka lambatlaun kata Algorithm berangsur-angsur dipakai
sebagai metode perhitungan (komputasi)secara umum, sehingga kehilangan makna
kata aslinya. Dalam Bahasa Indonesia, kataAlgorithm diserap menjadi Algoritma.
Bahasa
Pemrograman merupakan notasi yang dipergunakan untuk
mendeskripsikan proses komputasi dalam format yang dapat
dibaca oleh komputer dan manusia. Proses komputasi umumnya didefinisikan secara
formal menggunakan konsep matematika dari Mesin
Turing. Pada dasarnya bahasa Pemrograman dirancang untuk memfasilitasi
komunikasi antara manusia dengan komputer.
Sebuah bahasa
pemrograman disebut Turing Complete jika dapat dipergunakan
untuk mendeskripsikan semua komputasi yang dapat dilakukan Mesin Turing, yaitu
memiliki variableinteger
dan operator aritmatik, pernyataan penugasan, pernyataan sekuensial, pernyataan seleksi, dan pernyataan iterasi.
2.2. DEFINISI ALGORITMA
“Algoritma adalah urutan langkah-langkah logis
penyelesaian masalah yang disusunsecara sistematis dan logis”.Kata Logis
merupakan kata kunci dalam Algoritma. Langkah-langkah dalam Algoritmaharus
logis dan harus dapat ditentukan bernilai salah atau benar.
berapa contoh sederhana mengenai algoritma yang dapat
kita ditemui dalam kehidupan sehari – hari misalnya:
1.
Memasak mie
instant.
Prosesnya adalah sebagai berikut:
1.
Memanaskan air.
2.
Membuka
pembungkus mie instant.
3.
Memasukkan mie
ke dalam air mendidih.
4.
Taruh bumbu di
piring.
5.
Angkat mie jika
sudah masak.
6.
Campurkan mie
dengan bumbu yang sudah ada di piring.
7.
Mie siap
disajikan.
2. Menelepon.
Prosesnya adalah sebagai berikut:
1.
Angkat telepon.
2.
Tekan nomor
teleponnya yang dituju.
3 . Jika diangkat
maka mulai berbicara setelah selesai tutup teleponnya.
4. Jika tidak
diangkat, maka tutup teleponnya.
2.3
PEMROGRAMAN
Pemograman berasal dari kata program
yang berarti serangkaian instruksi yang ditulis untuk melakukan suatu fungsi
spesifik pada komputer, sedangkan
pemograman adalah segala kegiatan pembuatan program menggunakan komputer.
Komputer membutuhkan keberadaan program agar bisa menjalankan fungsinya sebagai
komputer. Selain itu terdapat istilah bahasa pemograman yang
berarti bahasa yang digunakan dalam pembuatan program komputer.
Oleh sebab itu berdasarkan pengertian algoritma dan pemograman maka
dapat disimpulkan bahwa program merupakan hasil dari penerapan-penerapan
algoritma.
Bahasa Pemrograman merupakan notasi yang
dipergunakan untuk mendeskripsikan proses komputasi dalam format
yang dapat dibaca oleh komputer dan juga manusia. Proses komputasi pada umumnya
didefinisikan secara formal menggunakan konsep matematika dari Mesin Turing (model komputasi teoritis yang
ditemukan oleh Alan Turing). Sebenarnya bahasa pemrograman dirancang
sebagai media untuk memfasilitasi komunikasi antara manusia dengan komputer.
Sebuah bahasa pemrograman disebut Turing Complete jika dapat dipergunakan untuk
mendeskripsikan semua komputasi yang dapat dilakukan Mesin Turing, yaitu
memiliki variable integer dan operator aritmatik, pernyataan penugasan, pernyataan sekuensial, pernyataan seleksi, dan pernyataan iterasi didefinisikan
secara formal menggunakan konsep matematika dari Mesin Turing.
2.4 TIPE-TIPE ALGORITMA
BERDASARKAN FORMAT PENULISAN
Penulisan
algoritma tidak ter-ikat pada suatu aturan
tertentu, tetapi harus jelas maksudnya dari suatu penulisan algoritma untuk
tiap langkah algoritmanya. Notasi algoritma bukan merupakan notasi bahasa
pemograman, namun notasi ini dapat diterjemahkan kedalam berbagai bahasa
pemograman. Algoritma dapat dinotasikan dalam beberapa
cara, yaitu:
1. Untaian Kalimat Deskriptif (Natural)
Algoritma
bertipe deskriptif maksudnya ialah algoritma yang ditulis
dalam bahasa manusia seperti bahasa Indonesia atau bahasa Ingris dan
dalam bentuk kalimat. Notasi ini cocok digunakan untuk algoritma yang
pendek, namun untuk notasinya yang panjang, notasi ini kurang efektif
digunakan dan juga pengkonversian notasi algoritma ke notasi bahasa pemrograman
menjadi cenderung relatif sukar.
2. Pseudocode
Pseudocode berasal dari
kata pseudo dan code . Pseudo berarti imitasi dan code ber-arti
kode yang dihubungkan dengan instruksi yang ditulis dalam bahasa komputer
atau kode bahasa pemograman. Pseudocode digunakan untuk
menggambarkan logika urut-urutan dari program tanpa memandang bagaimana bahasa
pemrogramannya.
3. Flow
Chart (Diagram Alir)
Diagram alir
atau flow chart adalah bagan menggambarkan urutan langkah-langkah kegiatan atau program mulai dari awal sampai akhir
dengan menggunakan simbol atau gambar tertentu dan dan garis
alir. Simbol-simbol yang mewakili fungsi-fungsi langkah program dan garis alir
(flow lines) yang menunjukkan urutan dari simbol-simbol yang akan
dikerjakan. Flowchart lebih baik digunakan dibandingkan
dengan menggunakan pseudocode. Jumlah simbol yang digunakan dalam flowchart
sedikit, karena itu lebih sederhana dan lebih mudah dipelajari.
Dalam pembuatan flowchart program tidak
ada rumus atau patokan yang bersifat
mutlak, karena flowchart merupakan gambaran
hasil pemikiran dalam menganalisis suatu masalah dengan komputer sehingga flowchart yang dihasilkan
dapat bervariasi antara satu pemrogram dengan yang lainnya.
2.5 STRUKTUR ALGORITMA
Teks algoritma merupakan
penjelasan atau deskripsi langkah-langkah dari penyelesaian masalah yang
tersusun secara sistematis. Langkah-langkah tersebut tidak memiliki standar
yang baku seperti pada bahasa pemrograman tetapi langkah-langkah tersebut
mudah di mengerti oleh si pembacanya. Agar teks algoritma yang dibuat mudah di translasikan ke bahasa pemrograman tertentu maka
sebaiknya langkah-langkah dari teks algoritma yang dibuat berkoresponden dengan
perintah-perintah bahasa pemrograman. Teks algoritma disusun atas tiga bagian
atau blok yaitu; bagian judul agoritma (header), bagian deklarasi, dan bagian
deskripsi. Setiap bagian dapat diberi komentar yang biasanya dituliskan
menggunakan kurung kurawal.
·
Judul Algoritma
Judul
algoritma merupakan bagian dari teks algoritma yang terdiri atas nama algoritma
dan penjelasan
tentang algoritma tersebut. Nama algoritma sebaiknya singkat, namun cukup
menggambarkan apa yang akandilakukan oleh algoritma tersebut. Di bawah nama
algoritma disertai dengan penjelasan singkat atau tentang apa yang
dilakukan oleh algoritma. Penjelasan di bawah nama algoritma sering dinamakan
juga spesifikasi algoritma. Algoritma harus ditulis sesuai dengan spesifikasi
yang didefinisikan.
Contoh :
Program
Luas_Kubus
←
{Judul Algoritma}
{ Menghitung
luas kubus untuk ukuran sisi yang dibaca dari piranti masukan lalu
mencetak hasilnya kepiranti
keluaran} ← {Spesifikasi Algoritma}
·
Deklarasi
Deklarasi atau disebut juga Kamus, deklarasi adalah
bagian teks algoritma sebagai tempat untuk mendefinisikan semua nama yang
dipakai di dalam algoritma. Nama tersebut dapat berupa nama type, nama
konstanta, nama variabel, nama fungsi, dan nama prosedur. Semua nama tersebut
baru dapat dipakai di dalam algoritma jika telah didefinisikan terlebih dahulu
didalam kamus. Penulisan sekumpulan nama dalam kamus sebaiknya dikelompokan
menurut jenis nama tersebut. Nama variabel belum terdefinisi nilainya ketika
didefinisikan. Pendefinisian nama konstanta sekaligus memberikan harga
konstanta tersebut, pendefinisian nama fungsi dilakukan sekaligus dengan domain
atau range serta spesifikasinya. Pendefinisian nama prosedur sekaligus dengan
pendefinisian parameter (jika ada) dan spesifikasi prosedur (kondisi awal
“Initial State”, Kondisi akhir “ Final State” dan proses yang dilakukan).
·
Deskripsi/Badan Program
Deskripsi atau sering disebut juga algoritma. Deskripsi
adalah bagian inti dari suatu algoritma yang berisi instruksi atau pemanggilan
aksi yang telah didefinisikan. Komponen-komponen teks algoritma dalam
pemrograman yaitu: instruksi dasar seperti input/output, assignment , sequence
(runtutan), analisa kasus, perulangan. Setiap langkah algoritma dibaca dari
langkah paling atas hingga langkah paling bawah. Urutan penulisan menentukan
urutan pelaksanaan perintah.
Contoh :
Algoritma
input (c,d)
{menerima
masukan 2 bilangan c dan d}
if c < d
then {operasi kondisional}
e ← a + b
{e di
assignment oleh nilai a dan b}
else
e ← a – b
output
(e) {hasil
keluaran berupa bilangan e}
BAB III
4.1 STRUKTUR DASAR ALGORITMA
Algoritma berisi langkah suatu masalah. Langkah-langkah
tersebut dapat berupa runtunan aksi, pemilihan aksi, dan pengulangan aksi.
Ketiga jenis langkah tersebut membentuk konstruksi suatu algoritma. Jadi,
sebuah algoritma dapat dibangun dari tiga buah struktur dasar, yaitu:
- Runtunan (sequence)
- Pemilihan (selection)
- Pengulangan (repetition)
1.
Runtunan
Sebuah runtunan terdiri dari satu atau lebih instruksi. Tiap instruksi
dikerjakan secara berurutan sesuai dengan urutan penulisannya, yakni sebuah
instruksi dilaksanakan setelah instruksi sebelumnya selesai dilaksanakan.
Urutan instruksi menetukan keadaan akhir algoritma. Bila urutan diubah, maka
hasil akhirnya mungkin juga bisa berubah. Perhatikan runtunan instruksi
berikut:
A1
A2
A3
A4
A5
Sebagai
contoh, tinjau kembali algoritma mempertukarkan larutan di dalam dua buah
bejana A dan B pada sessi sebelumnya.
Algoritma
diatas disusun oleh runtunan yang terdiri atas 3 buah instruksi. Tiap instruksi
dikerjakan secara berurutan, maka hasil akhir adalah hasil diinginkan. Bila
instruksi diubah, maka hasil akhirnya pun juga berubah sehingga pertukaran isi
dua buah bejana pun tidak benar. Karena itu, penting perlu memperhatikan urutan
aksi di dalam sebuah runtunan. Urutan aksi di dalam runtunan mencerminkan cara
berpikir si penyusun algoritma dalam menuliskan langkah-langkah pemecahan
masalah.
2.
Pemilihan
Adakalanya sebuah instruksi dikerjakan jika kondisi tertentu dipenuhi. Contoh
dalam algoritma pencarian data terkecil dilakukan dengan membanding-bandingkan
data. Mula-mula data pertama dianggap data terkecil sementara (min). Kemudian
membandingkan min dengan data ke-2, 3, ….. N. Selama proses perbandingan, bila
data lebih kecil dari min, maka date ke-j itu menjadi min yang baru. Langkah
terakhir ditulis dalam pernyataan berikut
Jika
data ke-j lebih kecil dari min, maka
isikan
data ke-j sebagai min yang baru
Pernyataan
diatas dapat ditulis dalam struktur umum
if kondisi then
aksi
Dalam bahasa indonesia, if berati
“jika” dan then artinya “maka”. Kondisi adalah persyaratan yang dapat
bernilai benar atau salah. Aksi hanya dilaksanakan apabila kondisi bernilai
benar. Sebaliknya, apabila kondisi bernilai benar. Sebaliknya apabila bernilai
salah, maka aksi tidak dilaksanakan. Kata yang digarisbawahi, if dan then,
merupakan kata kunci (keywords) untuk struktur pemilihan ini.
Struktur
pemilihan if-then hanya memberikan satu pilihan aksi bila kondisi (persyartan)
dipenuhi (bernilai benar), dan tidak memberi pilihan aksi lain bila kondisi
bernilai salah.
Bentuk pemilihan yang lebih umum ialah pemilihan satu dari dua buah aksi bergantung pada nilai kondisinya.
Bentuk pemilihan yang lebih umum ialah pemilihan satu dari dua buah aksi bergantung pada nilai kondisinya.
Apabila pilihan aksi yang dilakukan lebih dari dua buah,
maka struktur pemilihannya menjadi lebih rumit, seperti pada contoh berikut
(pemilihan bersarang)
if lampu pengatur lalu lintas berwarna
merah then
anda harus berhenti
else
if lampu
pengatur lalu lintas berwarna kuning then
anda boleh jalan tapi dengan hati-hati
else
anda dipersilahkan terus berjalan
Perhatikanlah bahwa penggunaan indentasi (rongak kosong)
membuat algoritma menjadi lebih mudah dibaca. Tanpa indentasi, algoritma
menjadi lebih sulit dibaca, misalnya algoritma ditulis seperti dibawah ini
if lampu pengatur lalu lintas berwarna
merah then
anda
harus berhenti
Else if lampu pengatur lalu
lintas berwarna kuning then
anda
boleh jalan tapi dengan hati-hati else
anda
dipersilahkan terus berjalan
Perancang
algoritma sangat dianjurkan membuat indentasi agar algoritma yang dibuat lebih
mudah dibaca.
Contoh
lain dari pemilihan bersarang adalah menentukan bilangan terbesar dari tiga
buah bilangan: x, y, dan z.
if x > y then
if x > z then
tulis x sebagai bilangan terbesar
tulis x sebagai bilangan terbesar
else
tulis z sebagai bilangan terbesar
else
if y > z then
tulis y sebagai bilangan terbesar
else
tulis z sebagai bilangan terbesar
Kelebihan struktur pemilihan terletak pada kemampuannya yang
memungkinkan pemroses mengikuti jalus aksi yang berbeda berdasarkan kondisi
yang ada. Tanpa struktur pemilihan, kita tidak mungkin menulis algoritma untuk
permasalahan praktis yang demikian kompleks.
3.
Pengulangan(looping)
Perulangan data atau yang biasa
disebut dengan “looping” adalah proses yang dilakukan secara berulang-ulang
sampai batas yang ditentukan. Biasanya bila dalam perulangan tersebut tidak
disertakan batasnya maka syntax akan error karena proses itu akan berulang
terus hingga tak terhingga sementara variabel dalam komputer masih terbatas.
1. struktur perulangan (looping)
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, dengan jumlah tertentu jika sebuah kondisi
belum terpenuhi.
Pada
bahasa pemrograman, perulangan proses ditangani dengan suatu mekanisme yang
dinamakan dengan nama loop. Dengan loop, suatu proses yang
berulang dapat diimplementasikan dengan menggunakan statement–statement
yang pendek, tanpa harus menuliskan statemen berulang-ulang.
Ada 3
(tiga) cara untuk melakukan perulangan di C++ yaitu :
- For statement
- While statement
- Do while statement
PENJELASAN
- FOR STATEMENT
Ini
adalah statement perulangan yang paling sering digunakan. Statement for
memiliki 3 parameter, yaitu nilai awal (initial value), tes kondisi yang
menentukan akhir loop, dan penentu perubahan nilai.
Bentuk
umum :
For
(<init-exp> ; <test-exp> ; <inc/dec-exp> )
Statement
;
Keterangan
:
- Init-exp : ekspresi yang digunakan untuk melakukan inisialisasi terhadap variable-variabel tertentu, terutama variable yang digunakan untuk melakukan iterasi. Init-exp dapat berupa ekspresi maupun pendefinisian variable.
- Test-exp : ekspresi yang memegang control terhadap proses perulangan tersebut, pada bagian ini akan ditentukan apakah proses perulangan akan tetap berlangsung atau tidak.
- Inc/dec-exp : digunakan untuk mengatur perubahan nilai variable. Umumnya nilai variable tersebut bertambah / berkurang 1 (satu)
2. WHILE
STATEMENT
Pernyataan
while adalah pernyataan yang berguna untuk memproses suatu pernyataan atau
memproses pernyataan beberapa kali. Pernyataan atau aksi akan di ulang jika
kondisi bernilai benar dan jika salah maka keuar dari blok perulangan (loop).
Bentuk
umum While :
<Inisialisasi>
while
(kondisi)
{
Pernyataan
;
}
3. DO
WHILE STATEMENT
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.
Perbedaan
dengan while statement adalah : pada do while kondisi akan dievaluasi setelah
dilakukan statement/proses. Selain itu pada do while minimal akan dilaksanakan
1 (satu) kali statement/instruksinya.
4.
PENGGUNAAN SWITCH CASE
Switch -Case merupakan sebuah
pernyataan atau statement yg dirancang khusus untuk menangani pengamblin
keputusan yg melibatkan banyak alternatif pilihan. Pernyataan switch lebih
jarang digunakan dibandingkan dengan pernyataan if-else. Tetapi lebih
sering digunakan ketika kita ingin menuliskan percabangan ataupun pengambilan
keputusan dengan sangat banyak pilihan. Pernyataan switdh memiliki kegunaan
yang sama seperti if -else bertingkat.
Kontruksi if else yg bertingkat-tingkat sering kali membingungkan pembacaan alur program. Java menyediakan intruksi khusus, switch untuk memudahlan pembacaan alur program bercabang yg sangat banyak. Walaupun switch didesain khusus untuk menggantikan if -else, akan tetapi switch memiliki batasan :
1. Data yg diperiksa haruslah bertipe integer (int) atau karakter (char).
2. Range data yg diperiksa bernilai 0 s/d 255
Bentuk penulisan perintah Switch -Case :
Switch (value)
{
case konstanta1 :
//statement1
break;
case konstanta2 :
//statement2
break;
....
....
....
case konstanta-n :
//statement -n
break;
default:
//statement x;
}
keterangan :
-. konstanta adalah yg dicocokan dengan value.
-. statement adalah pernyataan yg akan dikerjakan jika value cocok dengan salah satu data dari konstanta 1, 2, arau lainnya.
-. break adalah perintah unttuk mengakhiri statement. Apabila tidak ada break, komputer akan mengeksekusi instruksi yg berada dibawahnya walaupun berada di case yg berbeda.
-. dafault bersifat opsional, dieksekusi jika value tidak ada yg cocok dengan salah satu konstanta yg ada, fungsinya sama dengan else.
Kontruksi if else yg bertingkat-tingkat sering kali membingungkan pembacaan alur program. Java menyediakan intruksi khusus, switch untuk memudahlan pembacaan alur program bercabang yg sangat banyak. Walaupun switch didesain khusus untuk menggantikan if -else, akan tetapi switch memiliki batasan :
1. Data yg diperiksa haruslah bertipe integer (int) atau karakter (char).
2. Range data yg diperiksa bernilai 0 s/d 255
Bentuk penulisan perintah Switch -Case :
Switch (value)
{
case konstanta1 :
//statement1
break;
case konstanta2 :
//statement2
break;
....
....
....
case konstanta-n :
//statement -n
break;
default:
//statement x;
}
keterangan :
-. konstanta adalah yg dicocokan dengan value.
-. statement adalah pernyataan yg akan dikerjakan jika value cocok dengan salah satu data dari konstanta 1, 2, arau lainnya.
-. break adalah perintah unttuk mengakhiri statement. Apabila tidak ada break, komputer akan mengeksekusi instruksi yg berada dibawahnya walaupun berada di case yg berbeda.
-. dafault bersifat opsional, dieksekusi jika value tidak ada yg cocok dengan salah satu konstanta yg ada, fungsinya sama dengan else.
BAB
IV
3.1 TIPE
DATA , OPERATOR, DAN EKSPRESI
3.1.1 TIPE DATA
Pada umumnya, program komputer memanipulasi objek (data)
didalam memori. Peubah (variabel) dan konstanta (constant) adalah objek data
dasar yang dimanipulasi didalam program. Deklarasi daftar peubah digunakan
untuk menyatakan tipe peubah . Operator mengspesifikasikan operasi apa yang
dapat dilakukan terhadap peubah dan konstanta. Ekspresi mengkombinasikan
peubah-peubah dan konstanta untuk menghasilkan nilai baru. Tipe data dapat
dikelompokkan menjadi dua macam :
1. Tipe Dasar
Tipe dasar adalah tipe yang dapat
langsung dipakai. Yang termasuk tipe dasar adalah bilangan lojik, bilangan
bulat, karakter, bilangan riil, dan string. Untuk bilangan lojik dan bilangan
bulat disebut juga tipe ordinal karena setiap konstanta nilainya dapat
ditransformasikan ke suatu nilai integer.
Ø Bilangan Lojik
·
Nama tipe bilangan ini adalah
Boolean
·
Ranah nilai boolean adalah true dan
false
·
Operator yang digunakan not, and,
or, dan xor
a
|
b
|
AND
|
OR
|
NOT
|
XOR
|
T
|
T
|
T
|
T
|
F
|
F
|
T
|
F
|
F
|
T
|
F
|
T
|
F
|
T
|
F
|
T
|
T
|
T
|
F
|
F
|
F
|
F
|
T
|
F
|
Ø Bilangan Bulat
·
Nama tipe Integer
·
Ranah Nilai. Secara teoritis
bilangan bulat tidak mempunyai batasan untuk nilai. Tetapi pada dunia pemograman, ranah nilai
bilangan bulat mempunyai batasan. Hal tersebut dimaksudkan untuk penghematan
alokasi memori. Berikut rentang nilai pada Pascal dan C Pascal Rentang Nilai C
Setiap bilangan bulat
mempunyai keturunan, atau dengan kata lain sebuah bilangan bulat mempunyai
nilai sembarangan (predecessor) dan nilai sesudahnya (succesor). Misalnya :
Nilai 8 memiliki predecessor 7 dan successor 9.
Konstanta untuk
bilangan bulat tidak boleh mengandung titik desimal
• Operasi :
1. Operasi Aritmatika,
yaitu
+
(tambah)
- (kurang)
* (kali)
div (bagi) (dengan
hasil bilangan bulat tanpa titik desimal)
mod (sisa hasil bagi)
ket : Objek yang di
operasikan disebut operand. Misalnya : a + b artinya a dan b merupakan operand
sedangkan + adalah operator
2. Operasi
perbandingan. Hasil operasi perbandingan akan menghasilkan nilai boolean (true
dan false)
<
(lebih kecil)
≤
(lebih kecil atau sama dengan)
>
(lebih besar)
≥
(lebih besar atau sama dengan)
=
(Sama dengan)
≠
(Tidak sama dengan)
Ø BILANGAN REAL
Bilangan riil adalah bilangan yang
mengandung pecahan desimal, misalnya 3.65, 0.0003, 29.0, 2.60240000E-6, .24 ,
dll. Semua konstanta bilangan riil harus mengandung titik (desimal). Misalnya
“18” dianggap sebagai bilangan bulat, tetapi “18.0” dianggap sebagai bilangan
riil. Untuk bilangan riil yang ditulis dengan notasi E berarti perpangkatan
sepuluh. Contoh : 2.60240000E-6 artinya 2.60240000×10-6.
·
Nama
tipe bilangan riil adalah real.
·
Ranah
nilai bilangan riil sama dengan bilangan bulat, tetapi penerapan pada bahasa
pemograman berbeda. Untuk bahasa PASCAL,
·
Sementara,
dalam bahasa C, hanya ada 2 tipe untuk bilanganriil yaitu float dan double.
Float adalah bilangan riil berpresisi tunggal (single-precision), Double adalah
bilangan riil berpresisi ganda (double-precision). Sementara untuk long double
mengspesifikasikan tipe bilangan riil yang berpresisi-extended
o
Operasi
pada bilangan riil ada 2 macam, yaitu :
1.
Operasi Aritmetika
+ (tambah)
- (kurang)
* (kali)
/ (bagi)
Ket : Jika dilakukan operasi campuran dengan salah satunya
operandnya bertipe bilangan riil sedangkan operandnya yang lain bilangan bulat,
maka otomatis operand yang bilangan bulat akan otomatis di konversi ke bilangan
riil.
2.
Operasi Perbandingan
< (lebih kecil)
≤ (lebih kecil atau sama dengan)
> (lebih besar)
≥ (lebih besar atau sama dengan)
≠ (Tidak sama dengan)
Ket : Pada bilangan riil tidak dikenal operasi sama dengan
“=”. Karena bilangan riil tidak dapat disajikan secara tepat oleh komputer.
Misalnya 1/3 tidak sama dengan 0.33333, sebab 1/3 = 0.3333333…. (dengan angka 3
yang tidak pernah berhenti)
Ø Karakter
Yang termasuk karakter adalah semua
huruf-huruf abjad, semua tanda baca, angka ‘0’, ‘1’, … , ‘9’. Dan
karakter-karakter khusus seperti ‘&’, ‘^’, ‘%’, ‘#’, ‘@’, dll. Karakter
kosong (null) adalah karakter yang panjangnya nol dan dilambangkan ‘ ‘.
·
Nama
tipe untuk karakter adalah char
·
Ranah
nilai untuk karakter adalah semua huruf di dalam alfabet (‘a’, … ‘z’, ‘A’ …
‘Z’) angka desimal (0 … 9), tanda baca (‘.’, ‘:’, ‘!’, ‘?’, ‘,’, dll), operator
aritmetik (‘+’, ‘-‘, ‘*’, ‘/’), dan karakter-karakter khusus seperti (‘$’, ‘#’,
‘@’, ‘^’, ‘~’, dll). Daftar karakter baku yang lengkap dapat dilihat di dalam
buku-buku yang memuat tabel ASCII.
·
Konstanta
karakter harus diapit oleh tanda petik tunggal. Ket: ingatlah bahwa ‘9’ adalah
karakter, tetapi 9 adalah integer.
·
Untuk
operasi yang dilakukan hanya operasi perbandingan yaitu :
·
=
(sama dengan)
·
≠
(tidak sama dengan)
·
> (lebih besar)
·
≥
(lebih besar atau sama dengan)
·
<
(lebih kecil)
·
≤
(lebih kecil atau sama dengan)
·
Ket.
Tipe karakter juga mempunyai keterurutan (successor dan predecessor) yang
ditentukan oleh cara pengkodeannya didalam komputer, misalnya pengkodean ASCII.
Operasi perbandingan menghasilkan nilai boolean.
Ø String
String adalah untaian karakter dengan panjang tertentu.
·
Nama
tipe string adalah string
·
Ranah
nilai tipe string adalah deretan karakter yang telah didefenisikan pada ranah
karakter.
·
Konstanta
pada tipe string harus diapit oleh dua buah tanda petik tunggal.
Contoh :
‘Makassar’
‘boby’
‘Abc1234’
‘*…*…#008*’
‘B’
Untuk string kosong (null)
dilambangkan dengan ‘ ’.
·
Operasi pada tipe string
didefinisikan 2 macam :
a.
Operasi Penyambungan (concatenation)
Operasi “+”. Operator ini bukanlah operator penjumlahan
seperti pada tipe real/integer tetapi operator penyambungan. Contoh :
‘Boby’ + ‘Hermez’ = ‘Boby Hermez’
b.
Operator perbandingan
Sama halnya tipe karakter akan menghasilkan nilai boolean.
=, ≠, <, ≤, >, ≥
2.
Tipe Bentukan
Tipe bentukan adalah tipe yang
didefenisikan sendiri oleh pemogram (user defined type data). Tipe bentukan di
susun oleh satu atau lebih tipe dasar. Ada 2 macam tipe bentukan :
Ø Tipe dasar yang diberi dengan nama tipe baru
Tipe dasar yang diberi nama tipe
baru (user defined type data). Penamaan tipe baru disebabkan oleh kemungkinan
untuk memudahkan interpretasi dan pembacaan program oleh pemogram.
Kita dapat memberi nama baru untuk tipe dasar tersebut
dengan kata kunci type. Untuk Nilai, Ranah nilai, konstanta, dan
operasi-operasi tipe tersebut tidak berubah dan sesuai dengan tipe dasar
aslinya, misalnya : type bilangan bulat / integer.
Ket. Bilangan sama saya dengan tipe integer. Jadi, misalkan
variabel i bertipe bilangan bulat, sama saja jika i bertipe integer.
Contoh :
DEKLARASI
i = integer
Sama Saja
DEKLARASI
Type bilangan_bulat : integer
i = bilangan_bulat
Ø Tipe Terstruktur.
Tipe terstruktur adalah tipe yang
berbentuk rekaman (record). Rekaman (record) disusun oleh satu atau lebih
field. Tiap field menyimpan data dari tipe dasar tertentu atau dari tipe
bentukan lain yang sudah didefinisikan sebelumnya. Nama rekaman ditentukan
sendiri oleh pemogram.
3.1.2 OPERATOR
Operator
adalah simbol-simbol khusus yang digunakan untuk mengoperasikan suatu nilai
data (operand).
Ada
beberapa jenis operator, yaitu :
- Assignment Operator / Operator Penugasan
Assignment Operator (operator penugasan) adalah operator yang
menggunakan tanda sama dengan (=) untuk mengisi sebuah nilai dalam
suatu variabel.
- Arithmetic Operator / Operator Aritmatika
Arithmetic
Operator (operator aritmatika) adalah operator yang digunakan untuk
melaksanakan operasi aritmatika.
Beberapa
operator aritmatika antara lain:
*
: untuk perkalian
+
: untuk penjumlahan
-
: untuk pengurangan
/
: untuk pembagian
%
: untuk sisa pembagian (modulus)
- Logical Operator / Operator Logika / Boolean Operator
Operator
Boolean atau Operator Logika adalah operator yang digunakan untuk melakukan
operasi logika yaitu operator yang menghasilkan nilai TRUE (benar) atau FALSE
(salah).
Bebarapa
macam operator logika antara lain:
1. and : menghasilkan nilai TRUE jika
kedua operand bernilai TRUE
2. or : menghasilkan nilai TRUE jika
salah satu operand bernilai TRUE
3. xor : menghasilkan nilai TRUE jika
salah satu operand bernilai TRUE tetapi bukan keduaduanya
bernilai
TRUE
4. ! : mengasilkan nilai tidak TRUE
5.
&& : menghasilkan nilai TRUE
jika kedua operand bernilai TRUE
6. || : menghasilkan nilai TRUE jika
salah satu operand bernailai TRUE
- Comparison Operator / Operator Pembanding
Operator Pembanding adalah operator
yang digunakan untuk membandingkan dua buah nilai atau operand.
Operator perbandingan ini antara
lain :
< : untuk kurang dari
> : untuk lebih dari
<= : untuk kurang dari atau sama
dengan
>= : untuk lebiih dari atau sama dengan
== : untuk sama dengan
!= : untuk tidak sama dengan
<> : untuk tidak sama dengan
3.1.3 EKSPRESI
Ekspresi adalah transformasi nilai menjadi keluaran
yang dilakukan melalui suatu perhitungan (komputasi). Ekspresi terdiri atas
operand dan operator, contoh ekspresi: “a + b”.Hasil Evaluasi dari sebuah
Ekpresi adalah nilai yang sesuai dengan type operand yang dipakai
A.
MACAM
– MACAM EKPRESI
Ø Ekspresi aritmatika
·
Ekspresi yang baik operand-nya bertipe
numerik dan hasilnya juga bertipe numerik.
·
Ekspresi
aritmatika memakai operator aritmatikekspresi aritmetik terdapat 2 buah
operator yaitu :
·
Operator biner, yaitu ekspresi yang
operatornya membutuhkan 2 buah operand. Contoh a + b
·
Operator Uner, yaitu “-” atau operator
yang punya 1 operand contoh “-2”
Contoh 2. (Penulisan ekspresi dengan
notasi algoritma)
T = 5/9 * (c + 32)
Z = (2*x + y) / (5 * w)
Y = 5((a+b) / (c*d) + m (p + q))
Ø Ekspresi Perbandingan/ Relasional
Ekspresi relasional
adalah ekspresi dengan operator <, ≤, >, ≥, =, dan ≠, not, and, or dan
xor dengan menghasilkan nilai bertipe boolean (true atau false). Biasanya
ekspresi Relasional disebut ekspresi boolean.
Ø Ekspresi Logika (Menggunakan Operator
Boolean)
sebuah perintah yang
akan mengeksekusi suatu perintah apabila kondisi tertentu terpenuhi.
Logika I
|
Operator
Boolean
|
Lgika II
|
Hasil Akhir
|
FALSE
|
FALSE
|
FALSE
|
|
FALSE
|
AND
|
TRUE
|
FALSE
|
TRUE
|
FALSE
|
FALSE
|
|
TRUE
|
TRUE
|
TRUE
|
Operator
OR dipergunakan untuk menghubungkan dua buah ekspresi logika dan hasilnya
bernilai TRUE jika minimal salah satu ekspresi logika bernilai TRUE.
Logika I
|
Operator
Boolean
|
Lgika II
|
Hasil Akhir
|
FALSE
|
FALSE
|
FALSE
|
|
FALSE
|
OR
|
TRUE
|
TRUE
|
TRUE
|
FALSE
|
TRUE
|
|
TRUE
|
TRUE
|
TRUE
|
|
BAB V
FUNGSI DAN ARRAY
5.1 PENGERTIAN PROSEDUR DAN FUNGSI
Prosedur dan fungsi adalah program kecil yang berada dalam
program utama yang digunakan untuk menyelesaikan masalah khusus dengan
paramater yang diberikan. Beberapa buku membedakan istilah prosedur dan fungsi
terutama pada pemrograman C++.
Letak perbedaan prosedur dan fungsi ada di pengembalian nilai. Pada
prosedur nilai yang diproses tidak dikembalikan atau diubah, nilai hanya
diproses didalam prosedur dan kembali kepada keadaan semula ketika keluar dari
prosedur. Sedangkan pada fungsi, nilai yang diproses akan berubah dan
memiliki nilai keluaran.
Fungsi digunakan untuk membuat operasi-operasi yang tidak ada dalam fungsi
utama. Sedangkan, prosedur digunakan untuk menstrukturkan suatu program dan
untuk memperbaiki kejelasan dan keumumannya.
Pada
dasarnya setiap prosedur dikenali sebagai fungsi dalam bahasa C karena struktur
mereka sama.
Struktur
Fungsi
Struktur
fungsi secara umum
tipe
nama (tipe1 argumen1, tipe2 argumen2, ... , tipe''n'' argumen''n'') { /*kode*/
}
Keuntungan
Memakai Fungsi dan Prosedur
Ada
Beberapa keuntungan ketika kita memakai fungsi dalam program.
- Menguraikan tugas pemrograman rumit menjadi langkah-langkah yang lebih sederhana atau kecil.
- Mengurangi duplikasi kode (kode yang sama ditulis berulang-ulang) dalam program.
- Dapat menggunakan kode yang ditulis dalam berbagai program yang berbeda.
- Memecah program besar menjadi kecil sehingga dapat dikerjakan oleh programmer-programmer atau dipecah menjadi beberapa tahap sehingga mempermudah pengerjaan dalam sebuah projek
- Menyembunyikan informasi dari user sehingga mencegah adanya perbuatan iseng seperti memodifikasi atau mengubah program yang kita buat
- Meningkatkan kemampuan pelacakan kesalahan, jika terjadi suatu kesalahan kita tinggal mencari fungsi yang bersangkutan saja dan tak perlu mencari kesalahan tersebut di seluruh program.
5.2 PENGERTIAN ARRAY/ LARIK
Array adalah suatu variabel yang terdiri dari sekumpulan data dimana data-data tersebut mempunyai tipe data yang sama. Setiap data disimpan dalam alamat memori yang berbeda-beda dan disebut dengan elemen array. Setiap elemen mempunyai nilai indek sesuai dengan urutannya. Melalui indek inilah kita dapat mengakses data-data tersebut
BENTUK UMUM
Array dideklarasikan dengan tanda [ ] (bracket), baik dalam bahasa C++ dan Java. Bentuk umum dari tipe data array adalah :
tipe_data nama_array[jumlah_elemen]
1. Array satu dimensi
o Setiap elemen array dapat diakses melalui index
o Index array secara default dimulai dari 0
o Deklarasi array :
Tipe_array nama_array[ukuran]
Array adalah suatu variabel yang terdiri dari sekumpulan data dimana data-data tersebut mempunyai tipe data yang sama. Setiap data disimpan dalam alamat memori yang berbeda-beda dan disebut dengan elemen array. Setiap elemen mempunyai nilai indek sesuai dengan urutannya. Melalui indek inilah kita dapat mengakses data-data tersebut
BENTUK UMUM
Array dideklarasikan dengan tanda [ ] (bracket), baik dalam bahasa C++ dan Java. Bentuk umum dari tipe data array adalah :
tipe_data nama_array[jumlah_elemen]
1. Array satu dimensi
o Setiap elemen array dapat diakses melalui index
o Index array secara default dimulai dari 0
o Deklarasi array :
Tipe_array nama_array[ukuran]
2. Array dua dimensi
-Array dua dimensi merupakan array yang terdiri dari m buah baris dan n buah buah kolom bentuknya dapat berupa matriks atau tabel.
-Deklarasi array :
Tipe_array nama_array [baris][kolom]
3. Array multidimensi
-Array multidimensi merupakan array yang mempunyai ukuran lebih dari dua. Bentuk pendeklarasian array multidimensi sama saja dengan deklarasi array dimensi satu maupun dimensi dua.
BAB VI
CONTOH PEMROGRAMAN DAN PENJELASANNYA
1.
program
a.
Contoh program kondisi (looping)
#include
<iostream>//header
Using
namespace std ;/*penggunaan spasi*/
int
main ()/*fungsi
{
int
pembelian, pembayaran diskon ://deklarasi
cout
<< “Swalayan Anda” ;
cout
<< “total pembelian:” ;
cin>>
pembelian ;
if
(pembelian >100000)
{
diskon
= 0.1*pembelian ;
pembayaran
= pembelian-diskon ;
cout
<< “selamat anda mendapatkan diskon sebesar 10%” ;
cout
<< “total pembayaran adalah ; “ << pembayaran << “\n” ;
else
if
(pembelian <100000)
{
diskon
= 0*pembelian ;
pembayaran
= pembelian-diskon ;
cout
<< “Total Pembayaran adalah “ <<pembayaran<< “\n” ;
}
return
0 ;
}
b.
Program
pengulangan
#include
<iostream>//header
#include
<iomanip>//header
#include <string>//header
using namespace std;//pnggunana
cout dan cin
int main ()//fungsi
{
long int pokok,kredit,bayar,biaya;//deklarasi
int tahun,i=1,n,jml=0;//deklarasi
cout<<"Masukan jumlah bulan =
";//fungsi cout dan cin
cin>>n;
pokok = 5000000;
for (tahun=1;tahun<=n;tahun++)//pengulangan
tahun
{
cout<<"bulan ke
"<<i<<endl;//proses pengulangan
cout<<"Masukan yang akan di
bayar = ";
cin>>bayar;
kredit=pokok-bayar;//penjumlahan
cout<<tahun<< " "
<<pokok<< "
"<<"kredit"<<"="<<kredit<<"\n";
pokok=pokok-bayar;
}
{
cout<<"________________________________"<<endl;
}
return 0;
}
Contoh
program laporan pratikum tentang pengulangan
1.mengurutkan belajar
c++(penggunaan for)
#include
<iostream>//header
using namespace std;//cout
dan cin
int main()//fungsi
{
int x;
for (x=1;x<=10;x++)//mengurutkan untuk
x=1,x<=0,x++
{
cout<<"\nBelajarC/C++";//penggunaaan
cout dan merupakan kalimat yg di urutkan
}
}
2. Penggunaan
do / while
#include
<iostream>//header
using
namespace std;//fungsi pnggunaan cout dan cin
int
main()//fungsi
{
int n,i=1;//deklarasi
float nilai,rata,jml=0;//deklarasi
cout<<"Input banyak nilai =
";//input nilai/banyak nilai
cin>>n;
do//fungsi do
{
cout<<"Input
nilai"<<i<<"=";//mengurutkan banyak nilai
cin>>nilai;
jml=jml+nilai;//penjumlahan
rata=jml/n;//pembagian
i++;//mengurutkan dari kecil ke besar
}
while (i<=n);//penggunaan while
cout<<"\nTotal nilai=
"<<jml;//keluaran nilai total
cout<<"\nRata nilai=
"<<rata; //pengeluaran rata nilai
}
c. Contoh
program fungsi
#include
<iostream>//header
#include
<stdio.h>//header
#include
<string>//header
using
namespace std;//untuk fungsi cout dan cin
void
garis()//fungsi garis
{
cout<<"==================================="<<endl;//cout
dari fungsi garis
}
int
main()//fungsi utama
{
garis();//pemanggilan fungsi garis(void
garis)
cout<<"teknik
informatiaka"<<endl;
garis();//pemanggilan fungsi garis(void
garis)
getchar();
}
d.
Contoh
program array/larik
#include <iostream>//header
using namespace std;//cout dan cin
int main()//fungsi
{
char kar[5];//char kar yang terdiri dari 5 array
int i;
kar[0]='A';//array 0
kar[1]='E'; ;//array
1
kar[2]='I'; ;//array
2
kar[3]='U'; ;//array
3
kar[4]='O'; ;//array
4
for (i=0;i<5;i++)//fungsi pengurutan dimana hanya batasan 4 yang
perhitungan dari 0
cout<<kar[i]<<"\n";//pemanggilan kar yang di
urutkan array i
return 0;
}
e.
Contoh
gabungan program kondisi pengulangan array dan fungsi
a. Program laundry sepatu
#include
<iostream>
using namespace std;
void loundry ()
{
cout<<"SELAMAT DATANG DIJASA
LOUNDRY SEPATU KAMI"<<endl;
}
void jenis()
{
char tipee[]={'A','B','C','D','E'};
int i;
for (i=0;i<5;i++)
cout<<tipee[i]<<"\n";
}
void garis ()
{
cout<<"--------------------"<<endl;
}
void garis2 ()
{
cout<<"======================================================="<<endl;
}
void laoundry_sepatu ()
{
char nama [25];
char tipe;
char no [10];
int
mau,paket,siap,pakett,sepatu,hari,i=1,n,jml=0;
long biaya,jmlh,bayar,TP;
loundry ();
garis2();
cout<<"**DATA
PELANGGAN**"<<endl;
garis ();
cout<<"Masukan Nama Pelanggan =
";
cin>>nama;
cout<<"Masukan no HP = ";
cin>>no;
cout<<"Berikut Macam-macam tipe
sepatu yang anda ingin cuci : "<<endl;
jenis ();
cout<<"Masukan Tipe Sepatu Yang
di Cuci = ";
cin>>tipe;
cout<<"jumlah sepatu yang di
cuci = ";
cin>>jmlh;
switch (tipe)
{
case 'A' : sepatu = 10000; break;
case 'B' : sepatu = 15000; break;
case 'C' : sepatu = 20000; break;
case 'D' : sepatu = 25000; break;
case 'E' : sepatu = 30000; break;
}
cout<<"Masukan banyak paket yang
di inginkan [1-3] = ";
cin>>n;
for (i=1;i<=n;i++)
{
cout<<"paket ke
"<<i<<endl;
cout<<"1 paket cepat
"<<endl;
cout<<"2 paket antar
"<<endl;
cout<<"3 paket delivey "<<endl;
cout<<"pilih paket yang anda
mau (TIDAK BOLEH SAMA) [1-3] = ";
cin>>paket;
garis ();
switch (paket)
{
case 1 : cout<<"*paket
cepat *"<<endl ; break;
case 2 : cout<<"*paket
antar*"<<endl ; break;
case 3 : cout<<"*paket
kilat*"<<endl ; break;
}
garis ();
}
cout<<"Masukan banyak paket tadi
= ";
cin>>pakett;
biaya = pakett*20000;
{
bayar=jmlh*sepatu+biaya;
if (bayar<100000)
TP=bayar-bayar*0.1;
else
if (bayar>=100000 &&
bayar<150000)
TP=bayar-bayar*0.15;
else
if (bayar>=150000 &&
bayar<250000)
TP=bayar-bayar*0.2;
else
if (bayar>=250000 &&
bayar<500000)
TP=bayar-bayar*0.25;
else
TP=bayar-bayar*0.3;
}
cout<<"biaya paket anda adalah
= "<<biaya<<endl;
{
if (TP<250000)
cout<<"Anda hanya
mendapatkan diskon harga"<<endl;
else
if (TP>=250000 &&
TP<40000)
cout<<"Anda mendapat Bonus
cuci 1 pasang sepatu"<<endl;
else
if(TP>400000)
cout<<"Anda Berhak mendapat
1 kupon undian"<<endl;
}
garis2 ();
cout<<"Maka yang di bayar
sebelumnya =
"<<bayar<<endl;
cout<<"Maka total pembayaran
(potong diskon) = "<<TP<<endl;
garis2 ();
cout<<"**** APAKAH ANDA PUAS
DENGAN LAYANAN LOUNDRY KAMI ****"<<endl;
garis2 ();
}
int main ()
{
laoundry_sepatu ();
return 0;
}
BAB
VII
KESIMPULAN
Imperative
program beranalogi dibawah bahasa pemograman yang memacu atau berorientasi pada
objek objek system informasi yang mengarah pada system informasi. Pembuatan
program program komputer dengan penguasaan data yang ada pada bahasa pemograman
untuk dikuasai agar menjadi seorang programmer handal. Beberapa sub dari bidang
pemograman imperative diantaranya adalah variable dan penugasan ; perintah
tidak struktur ; perintah tidak terstruktur ; subprogram, prosedur dan fungsi;
dan penanganan eksepsi. Mengenali dan memberi contoh variable dan penguasaaanya,
mengenali bentuk perintah tidak terstruktur, mengenali bentuk perintah
terstruktur, dapat menjelaskan bentuk-bentuk struktur control,dapat
menuliskan subprogram, prosedur, dan fungsi, dan dapat mengenali serta
menjelaskan beberapa bentuk eksepsi dan penangananya.
SARAN
Saran saya sebagai penulis
ialah, bahwa setidaknya kita harus selalu konsisten dalam belajar agar dapat
bersaing di era globalisasi.
Demikian pula dalam mempelajari
algoritma dan pemrograman, sehingga kita selaku mahasiswa atau
peserta didik dapat dibekali dengan kecakapan
menggunakan komputer sebagai sarana dalam mencapai tujuan sehari-hari.
Sekiranya saran yang saya buat ini jika ada kata dan penulisan yang salah mohon
dimaafkan. Wassalamualaikum Wr. Wb.






0 Comments