TUGAS DASAR PEMROGRAMAN
NAMA : HAMDANI IM
NIM : 115623287
KELAS : D3 MI C
Dasar Teori
Algoritma Dan Pemrograman
Algoritma adalah urutan langkah-langkah logis penyelesaian masalah
yang disusun secara sistematis. Kata logis berarti benar sesuai dengan logoka
manusia sedangkan Pemograman adalah proses mengimplementasikan urutan langkah
untuk menyelesaikan suatu masalah dengan menggunakan suatu bahasa pemograman
Karakteristik Algoritma
1. Algoritma
harus berhenti setelah mengerjakan sejumlah langkah terbatas. Sebagai contoh,
dalam algoritma Euclidean, pada langkah 1, jika n = 0, algoritma berhenti, jika
n tidak = 0 maka nilai n selalu berkurang sebagai akibat dari langkah 2 dan 3,
dan pada akhirnya nilai n = 0. Program yang tidak pernah berhenti
mengindikasikan bahwa program tersebut berisi algoritma yang salah.
2. Setiap
langkah harus di defenisikan dengan tepat dan tidak berarti dua (ambiguous).
Pembaca harus mengerti apa yang di maksud dengan “m” dan “n” adalah bilangan
bulat tak negatif (-). Contoh lainnya pernyataan ” bagilah p dengan beberapa
sejumlah bilangan bulat positif” dapat bermakna ganda. Berapakah yang di maksud
dengan “berapa” ? Algoritma menjadi jelas jika langkah tersebut di tulis
“bagilah p dengan 10 buah bilangan bulat positif”
3. Algoritma
memiliki nol atau lebih masukan (input). Masukan ialah besaran yang diberikan
kepada algoritma untuk di proses. Algoritma Euclidean mempunyai dua buah
masukan, yaitu m dan n.
4. Algoritma
mempunya nol atau lebih keluaran (output). Keluaran dapat berupa pesan atau
besaran yang memiliki hubungan dengan masukan. Algoritma Euclidean mempunyai 1
keluaran, yaitu m pada langkah 1, yang merupakan pembagi bersama terbesar dari
kedua bilangan.
5. Algoritma
harus sangkil (effective). Setiap langkah harus sederhana sehingga dapat di
kerjakan dalam sejumlah waktu yang masuk akal.
Flowchart
Dalam pembuatan flowchart tidak ada rumus atau patokan yang
bersifat mutlak. Karena flowchart merupakan gambaran hasil pemikiran dalam
menganalisa suatu masalah dengan komputer. Sehingga flowchart yang dihasilkan
dapat bervariasi antara satu pemrogram dengan pemrogram lainnya.
Namun secara garis besar, setiap pengolahan selalu terdiri dari tiga bagian utama, yaitu;
• Input berupa bahan mentah
• Proses pengolahan
• Output berupa bahan jadi.
Untuk pengolahan data dengan komputer, dapat dirangkum urutan dasar untuk pemecahan suatu masalah, yaitu;
Namun secara garis besar, setiap pengolahan selalu terdiri dari tiga bagian utama, yaitu;
• Input berupa bahan mentah
• Proses pengolahan
• Output berupa bahan jadi.
Untuk pengolahan data dengan komputer, dapat dirangkum urutan dasar untuk pemecahan suatu masalah, yaitu;
START: berisi instruksi untuk persiapan perlatan yang
diperlukan sebelum menangani pemecahan masalah.
READ: berisi instruksi untuk membaca data dari suatu
peralatan input.
PROCESS: berisi kegiatan yang berkaitan dengan pemecahan
persoalan sesuai dengan data yang dibaca.
WRITE: berisi instruksi untuk merekam hasil kegiatan ke
perlatan output.
END: mengakhiri kegiatan pengolahan
Pseudocode
Pseudocode merupakan
suatu bahasa programmer terhadap permasalahan yang akan diselesaikan tanpa
memikirkan tatabahasa (sintax) dari bahasa pemorograman tertentu.
Kegunaan Pseudocode
adalah sebagai berikut:
·
Menjembatani antara bahasa ibu programmer dengan bahasa
komputer. Sebagai contoh, pseudocode yang ditulis dalam bahasa indonesia
disebut Structured Indonesia.
·
Menggambarkan logika urut urutan program tanpa memperhatikan
bagaimana bahasa pemrogramannya.
Setelah kode program
bentuk pseudocode ini dirancang dan telah diperiksa dengan teliti kebenarannya,
langkah selanjutnya adalah membuat program yang sebenarnya.
Penulisan Pseudocode
Walaupun dalam
penulisan pseudocode itu tidak ada aturan yang resmi, nmun disana telah
ditetapkan suatu aturan untuk menulis pseudocode, khususnya untu kata-kata
kunci (keywords) dan kata-kata cadangan (reserved word), yaitu
harus dicetak dengan huruf tebal.
Bentuk dasar
pseudocode
Dalam pseudocode
terdapat 3 bentuk dasar, yaitu:
Urutan Penamaan
Urutan adalah suatu
koleksi dari berbagai statemen instruksi masukan/ keluaran. Secara eksplisit
masukan/ luaran dalam pseudocode dituliskan sebagai berikut :
Read data from source
dan
Write data to destination
Struktur Seleksi
Struktur seleksi
merupakan dasar logika kontrol alir keputusan. Artinya bahwa blok statemen
dilaksanakan jika kondisi bernilai boolean true.
·
Seleksi bentuk If
Bentuk umum penulisan
pseudocode untuk struktur seleksi If atau kontrol alir keputusan sebagai
berikut:
If <condition>
Then perform block_1
Else perform block_2
Endif
Artinya bahwa blok
seleksi dimulai dari bagian ”If” dan diakhiri
dengan ”Endif”
·
Seleksi bentuk CASE
Bentuk umum pseudocode
struktur seleksi CASE adalah sebagai berikut:
Selected_variabel
CASE (value_1) block_1
CASE (value_2) block_2
:
:
DEFAULT CASE block_n
Endselect
Struktur Iterasi
Struktur iterasi
merupakan dasar logika kontrol alir perulangan. Artinya bahwa blok statemen
dilaksanakan berulang-rulang sampai suatu keadaan akhir terpenuhi.
·
Iterasi bentuk DO WHILE
Bentuk umum pseudocode
iterasi DO WHILE adalah sebagai berikut:
While <condition> do
perform block
Endwhile
·
Iterasi bentuk DO
Bentuk umum pseudocode
iterasi DO adalah sebagai berikut:
Do index = initial to limit
perform block
Enddo
·
Iterasi FOR
Bentuk umum pseudocode
iterasi FOR adalah sebagai berikut:
For index = initial to limit
perform block
Endfor
Bahasa Pemrograman
Bahasa pemrograman C++, merupakan bahasa pemrograman yang
terpopuler saat ini, hampir semua jurusan atau program studi yang berhubungan
dengan komputer memasukkan bahasa ini dalam kurikulumnya, bahkan
perusahaan-perusahan BUMNpun sudah banyak menambahkan standarisasi harus bisa
bahasa pemrograman C++ untuk bergabung dengan mereka, khususnya dunai
Perbankkan.
Bahasa pemrograman C++ termasuk dalam bahasa pemrogaman
tingkat tinggi, sama halnya dengan Visual Basic, Delphi, Java, dan masih banyak
yang lainnya, dalam persfektif mudahnya dipahami manusia. Yang membedakan
mereka hanyalah aturan penulisan program itu sendiri, dimana yang terpenting
dalam sebuah pemrograman adalah adalah algoritma pemrogramannya.
Dalam hal ini, level yang dimaksudkan adalah kemampuan
mengakses fungsi-fungsi dan perintah-perintah dasar bahasa mesin/hardware.
Semakin tinggi tingkat bahasa pemrograman akan semakin mudah bahasa pemrograman
tersebut dipahami oleh manusia, namun membawa pengaruh semakin berkurang
kemampuan untuk mengakses langsung instruksi dasar bahasa mesin.
MODUL 1
PRAKTIKUM DASAR PEMROGRAMAN
Topik : Pemahaman Algoritma
1.
Misalkan
terdapat dua gelas, yakni gelas “A” dan “B”. Gelas A berisi air berwarna merah,
dan gelas B berisi air berwarna biru. Volume air di dalam kedua gelas sama.
Bagaimana mempertukarkan isi kedua gelas sehingga gelas A berisi air berwarna
biru, dan gelas B berisi air berwarna merah.
Kondisi awal:
Gelas A Gelas B
Kondisi akhir:
Gelas
A Gelas
B
2.
Misalkan
anda mempunyai dua ember, masing-masing ber-volume 5liter dan 3 liter. Anda
diminta untuk mendapatkan air (dari sebuah danau) sebanyak 4 liter dengan
menggunakan bantuan hanya kedua ember tersebut. Terserah bagaimana caranya,
anda boleh memindahkan air dari satu ember ke ember yang lain, membuang seluruh
isi ember, dan sebagainya. Catatan: ember
tidak memiliki ukuran.
Pertanyaan: Tuliskan langkah-langkah
untuk mendapatkan air 4 liter tersebut.
3.
(plastelina
game) Ada sebuah keluarga terdiri dari 5 orang, akan menyeberang
melewati jembatan pada malam hari dengan bantuan lampu yang hanya bisa bertahan
30 detik, dengan catatan:
a.
Setiap
orang mempunyai kecepatan yang berbeda-beda (1, 3, 6, 8, dan 12 detik).
b.
Apabila
yang melewati jembatan ada 2 orang, maka kecepatannya akan dihitung berdasarkan
yang paling lambat.
Pertanyaan:
tuliskan langkah-langkah secara detail untuk menyelesaikan game tersebut.
4.
(Canibal
Game)
Bagaimana caranya untuk menyeberangkan tiga rahib dan 3 kanibal ke pulai di
seberang, dengan catatan:
a.
Perahu
maksimal dapat ditumpangi dua orang.
b.
Perahu
tidak dapat berjalan sendiri (tanpa penumpang)
c.
Jika
jumlah rahib lebih sedikit dari kanibal, maka rahib akan dimakan oleh kanibal.
Pertanyaan: tuliskan langkah-langkah
secara detail untuk menyeberangkan rahib dan kanibal ke pulai seberang.
5.
(wolf
game) seorang petani akan bepergian ke kota dengan membawa se-ekor
kambing , anjing, dan rumput yang ketiganya memiliki berat yang tidak jauh
berbeda. Ditengah jalan, petani harus menyeberangi sungai dengan menggunakan
perahu dan untuk melaluinya petani tersebut tidak diperbolehkan membawa
sekaligus bawaanya mengingat kapasitas kekuatan perahu tersebut, dan untuk
melaluinya petani harus membawa satu per-satu bawaannya, dengan catatan:
a.
Kambing
makan rumput
b.
Anjing
makan kambing
Pertanyaan: tuliskan langkah-langkah
secara detail untuk menyeberangkan semua barang bawaan petani tersebut, dan berapa
kali petani harus membawa satu-persatu bawaanya.
Format Laporan
1.
Dasar
Teori
-
Dasar
Teori tentang algoritma dan pemrograman
-
Karakteristik
algoritma
-
Flowchart
-
Psoudecode
-
Bahasa
pemrograman
2.
Langkah-langkah
pemecahan masalah
3.
referensi
Langkah –
Langkah Pemecahan Masalah
1.
Perlu Bantuan 1 Gelas kosong lagi untuk
perpindahan isi gelas A dan B, isi gelas A di pindahkan ke gelas kosong dan isi
gelas B di Pindahkan ke gelas A dan isi gelas A tadi yang berada di gelas
bantuan di pindahkan ke gelas B.
2. -
Ke dua ember di isi penuh air
-
Lalu air di buang sisakan setengah pada kedua
ember
-
Ember
berisi 5 Liter di buang setengah jadi 2 Liter, Ember berisi 3 Liter di buang setengah
jadi 1 Liter.
-
Isi terakhir kedua ember yang sudah di
buang setengah itu di gabungkan di ember yang berisi 5 Liter
- Hasilnya 2 + 1 = 4 Liter
3. - 1
dan 3 berangkat dahulu ke seberang
-
1 kembali ke tempat awal
-
8 dan 12 berangkat ke seberang
-
3 kembali ke tempat awal
-
1 dan 6 berangkat ke seberang
-
1 kembali ke tempat awal
-
1 dan 3 berangkat ke seberang
-
Kanibal Di Turunkan, Rahib kembali bersama
perahu
-
2 Kanibal Menyebrang 1 di turunkan 1 kembali
bersama perahu
-
2 Rahib menyeberang, perahu di bawa
kanibal+rahib yang ada di pualu seberang kembali ke pulau asal
-
2 Rahib ke pulau seberang
-
1 kanibal menjemput temannya di pulau asal 2 kali
bolak balik
5. -
Petani menyeberang bersama kambing
-
Kambing di taruh di pulau seberang
-
Petani kembali ke pulau awal
-
Petani menyeberang bersama rumput
-
Rumput di taruh di pulau seberang kambing
-
Petani kembali ke pulau awal dengan membawa
kambing
-
Kambing di taruh di pulau awal Anjing di bawa ke
pulau seberang
-
Petani Kembali ke pulau awal
-
Petani membawa Kambing ke pulau seberang
REFERENSI
Tidak ada komentar:
Posting Komentar