Sabtu, 15 November 2008

Logika & Algoritma Bab 7

BAB 7
STRUKTUR
SUB PROGRAM





7.1Pengantar

Sub program disebut juga prosedur, yaitu suatu program terpisah dalam blok sendiri yang berfungsi sebagai program bagian. Prosedur banyak digunakan didalam program terstruktur karena:
a)Merupakan penerapan konsep modular, yaitu memecah-mecah program yang rumit menjadi program-program bagian yang lebih sederhana dalam bentuk prosedur-prosedur.
b)Untuk permasalahan yang sering digunakan/diproses, cukup dituliskan satu kali saja dalam prosedur dan dapat dipanggil atau dipergunakan sewaktu-waktu bila diperlukan.

Struktur sub program biasanya digunakan dalam pembuatan algoritma file yang didalamnya terdiri dari berbagai variabel yang akan diproses.


Contoh 16
Buatlah algoritma file untuk pengolahan gaji pegawai. File terdiri dari file Pegawai (NIP, Nama), file Gaji (Golongan, Gaji Pokok, Tunjangan) dan file Pengolahan Gaji (NIP, Golongan, Gaji Pokok, Tunjangan, Gaji Total). Ketentuan:

a)Gaji Total (GT) = Gaji Pokok (GP) + Tunjangan (TJ)

b)Masing-masing file mempunyai akses tambah data, perbaiki data, hapus data dan cetak data.

Logika & Algoritma Bab 6

BAB 6
STRUKTUR
PERULANGAN




6.1Pengantar

Struktur perulangan merupakan suatu teknik pemrograman untuk melakukan suatu proses/eksekusi instruksi secara berulang-ulang jika suatu syarat/kondisi terpenuhi. Pada prakteknya, proses perulangan digunakan untuk beberapa kepentingan, diantaranya adalah :
mengulang proses pemasukan data (input)
mengulang proses perhitungan/pengolahan data (process)
mengulang proses tampilan hasil pengolahan data (output)



6.2 Perulangan Tunggal

Perulangan tunggal merupakan struktur perulangan yang terdiri dari satu syarat perulangan.

Contoh 12
Buatlah algoritma untuk menampilkan tulisan “Algoritma” sebanyak 5 baris.

English Structure
1.Mulai
2.Definisikan sebuah variabel perulangan (misalnya A) dengan nilai 1 sampai dengan 5
3.Tampilkan tulisan “Algoritma”
4.Definisikan batas akhir perulangan untuk variabel A
5.Selesai

Contoh 13
Buatlah algoritma untuk menampilkan tulisan angka dari 1 sampai dengan 25!

English Structure
1.Mulai
2.Definisikan perulangan X dengan nilai dari 1 sampai dengan 25
3.Tampilkan nilai X
4.Definisikan batas akhir untuk X
5.Selesai


Contoh 14
Buatlah algoritma dengan hasil tampilan deretan angka sebagai berikut!

12345
3456789

English Structure
1.Mulai
2.Definisikan perulangan X dengan nilai dari 1 sampai dengan 5
3.Tampilkan nilai X
4.Definisikan batas akhir untuk X
5.Definisikan perulangan Y dengan nilai dari 3 sampai dengan 9
6.Tampilkan nilai Y
7.Definisikan batas akhir untuk Y
8.Selesai

6.2Struktur Perulangan Berkait

Perulangan berkait merupakan struktur perulangan bertumpuk, yaitu adanya perulangan yang terletak di bagian dalam perulangan yang lainnya. Dalam perulangan berkait struktur perulangan yang terletak di bagian dalam akan diproses/dieksekusi lebih dulu sampai dengan selesai, baru kemudian dilanjutkan ke struktur perulangan di bagian luar, dan terus menerus sampai dengan perulangan yang dibagian luar selesai..


Contoh 14
Dengan menggunakan struktur perulangan berkait buatlah algoritma dengan hasil tampilan deretan angka sebagai berikut!

11 12 13
21 22 23
31 32 33
41 42 43
51 52 53


English Structure
1.Mulai
2.Definisikan perulangan M dengan nilai dari 1 sampai dengan 5
3.Definisikan perulangan N dengan nilai dari 1 sampai dengan 3
4.Tampilkan nilai M, N
5.Definisikan batas akhir untuk N
6.Definisikan batas akhir untuk M
7.Selesai


Contoh 15 (kombinasi perulangan dan struktur keputusan perulangan)
Dengan struktur perulangan buatlah algoritma dengan hasil tampilan sebagai berikut.

24 26 28
34 36 38
44 46 48
54 56 58







English Structure
1.Mulai
2.Definisikan perulangan X dengan nilai dari 2 sampai dengan 5
3.Definisikan variabel Y dengan nilai 4
4.Tampilkan nilai X, Y
5.Hitung Y = Y + 2
6.Periksa apakah Y > 8, Jika ya maka lanjutkan ke no.7 ; jika tidak maka ulangi dari ni. 4
7.Definisikan batas akhir untuk X
8.Selesai

Logika & Algoritma Bab5

BAB 5
STRUKTUR
KEPUTUSAN





5.1Pengantar

Yang dimaksud dengan struktur keputusan adalah sebuah teknik pemrograman dimana satu atau sejumlah instruksi akan dieksekusi berdasarkan persyaratan tertentu.


5.2Struktur Keputusan dengan Syarat Tunggal

Struktur keputusan dengan syarat tunggal merupakan struktur keputusan yang memeriksa satu syarat/kondisi untuk dapat melakukan eksekusi terhadap instruksi tertentu.

Contoh 6
Buatlah algoritma untuk menentukan kelulusan dengan ketentuan, jika nilai > 70 maka “Lulus” dan jika nilai <= 70 maka “Tidak Lulus”.

English Structure
1.Mulai
2.Masukkan nilai
3.Jika nilai > 70 maka Keterangan =”Lulus”, dan jika tidak maka Keterangan =”Tidak Lulus”
4.Tampilkan keterangan
5.Selesai



Contoh 7
Buatlah algoritma untuk menentukan Tunjangan Keluarga (TK) Karyawan berdasarkan Golongan (Gol). Adapun atribut lain yang digunakan adalah NIK dan Nama. Ketentuan:
Golongan Tunjangan Keluarga
I Rp. 250.000
II Rp. 450.000
III Rp. 700.000


English Structure
1.Mulai
2.Masukkan NIK, Nama, Gol
3.a) Jika Gol = ‘I” maka TK = 250.000
b)Jika Gol = ’II’ maka TK = 450.000
c)Jika gol = ‘III’ maka TK = 700.000
d)Jika tidak maka tampilkan komentar “golongan tidak ada”
4.Tampilkan TK
5.Selesai


5.3 Struktur Keputusan dengan Syarat Majemuk

Struktur keputusan dengan syarat majemuk merupakan struktur keputusan yang memeriksa lebih dari satu syarat/kondisi untuk dapat melakukan eksekusi terhadap instruksi tertentu.


Contoh 8
Buatlah algoritma untuk menentukan Tunjangan Keluarga (TK) Karyawan berdasarkan Golongan (Gol) dan Masa Kerja (MK). Adapun atribut lain yang digunakan adalah NIK dan Nama. Ketentuan:

Golongan Masa Kerja Tunjangan Keluarga
I <= 2 tahun Rp. 200.000
I > 2 tahun Rp. 350.000
II <= 4 tahun Rp. 500.000
II > 4 tahun Rp. 750.000


English Structure
1.Mulai
2.Masukkan NIK, Nama, Gol
3.a) Jika Gol = ‘I” dan MK <= 2 maka TK = 200.000
a.Jika Gol = ’I’ dan MK > 2 maka TK = 350.000
b.Jika Gol = ‘II’ dan MK <= 4 maka TK = 500.000
c.Jika Gol = ‘II’ dan MK > 4 maka TK = 750.000
d.Jika tidak maka tampilkan komentar “golongan tidak ada”
4.Tampilkan TK
5.Selesai
Contoh 9
Buatlah algoritma untuk menentukan bonus yang diterima oleh pembeli dengan ketentuan jika membeli “TV Sony 21 inc ” atau “TV Panasonic 24 inc “ mendapat bonus “DVD Player” sedangkan pembelian jenis TV lainnya mendapat bonus potongan harga sebesar Rp. 200.000.


English Structure
1.Mulai
2.Masukkan Nama Pembeli, Alamat, jenis-TV
3.Jika Jenis-TV =”TV Sony 21 inc” or jenis-TV =” TV Panasonic 24 inc” maka bonus = “DVD Player”; jika tidak bonus = 200.000.
4.Tampilkan bonus
5.selesai


5.4 Struktur Keputusan dengan Perulangan

Struktur keputusan dengan perulangan merupakan struktur keputusan yang memeriksa suatu syarat/kondisi dimana salah satu eksekusinya mengulang ke instruksi sebelumnya.


Contoh 10
Buatlah algoritma untuk menampilkan bilangan ganjil dari 1 sampai dengan 10!

English Structure
1.Mulai
2.Definisikan x = 1
3.Tampilkan nilai x
4.Hitung x =x + 2
5.Jika x > 10 maka ke no.6; jika tidak ulangi instruksi no. 3
6.Selesai.

5.5 Struktur Keputusan Bersarang

Struktur keputusan bersarang merupakan struktur keputusan dengan model bertingkat, yaitu adanya keterkaitan antara syarat/kondisi yang satu dengan syarat/kondisi yang lain atau dengan kata lain terdapat syarat/kondisi yang terletak didalam syarat/kondisi tertentu.

Logika & Algoritma Bab4

BAB 4
MASUKAN
DAN KELUARAN





4.1Pengantar

Suatu siklus pemrosesan data dimulai dari pemasukan data (input), proses dan menampilkan hasil atau informasi (outout). Untuk memasukkan data dan menampilkan hasil dibutuhkan suatu pemahaman terhadap apa yang menjadi kebutuhan masukan dan apa yang menjadi kebutuhan hasil.

Masukan (input) merupakan nilai-nilai dari suatu variabel yang akan diproses pada suatu program. Sedangkan hasil (output) adalah suatu nilai yang diperoleh dari pemrosesan nilai-nilai variabel masukan ataupun digabungkan dengan nilai variabel lainnya.



4.2 Contoh Soal

1. Buatlah algoritma untuk mencari nilai A dari persamaan A = (5 * 7) / 3
Jawab : dari persamaan tersebut semua nilai yang akan diproses sudah diketahui, sehingga tidak memerlukan input data

English structure Flowchart Program
1)Mulai
2)Hitung A = (5 * 7) / 3
3)Tampilkan nilai A
4)Selesai













2. Buatlah algoritma untuk mencari nilai X = A+ B
Jawab : Nilai variabel A dan B belum diketahui, sehingga supaya nilai variabel X dapat dihitung maka diperlukan masukan nilai angka untuk variabel A dan B

English Structure Flowchart program
1)Mulai
2)Masukkan nilai A, B
3)Lakukan proses X = A+ B
4)Tampilkan hasil X
5)Selesai













3. Buatlah algoritma untuk mencari nilai A = (X + Y + Z) / X
Jawab: Nilai dari variabel X, Y dan Z belum diketahui, sehingga diperlukan masukan nilai angka untuk ke tiga variabel tersebut. Untuk variabel X, walaupun digunakan lebih dari satu kali tetapi masukan nilai angkanya cukup satu kali.

English Structure Flowchart program
1)Mulai
2)Masukkan nilai X, Y, Z
3)Hitung A = (X + Y + Z) / X
4)Tampilkan nilai A
5)Selesai













4. Buatlah algoritma untuk mencari nilai A = (B * C) / D, dimana nilai B dan C
sudah diketahui yaitu B=7 dan C=8.
Jawab : Karena nilai variabel B dan C sudah diketahui, maka cukup didefinisikan, sedangkan untuk variabel D diperlukan masukan nilai angka.

English Structure Flowchart program
1)Mulai
2)Definisikan B=7, C=8
3)Masukkan nilai D
4)Hitung A = (B * C) / D
5)Tampilkan nilai A
6)Selesai














5. Buatlah algoritma untuk menampilkan tulisan sebagai berikut.
Algoritma
Pemrograman

Jawab : Karena hanya akan menampilkan tulisan, maka tidak diperlukan input dan proses data.

English Structure Flowchart program
1)Mulai
2)Tampilkan “Algoritma”
3)Tampilkan “Pemrograman”
4)Selesai

Logika & Algoritma Bab3

BAB 3

DASAR-DASAR

ALGORITMA






    1. Pemrograman Komputer


Dalam kehidupan sehari-hari, untuk berkomunikasi dengan orang lain, kita harus menggunakan bahasa yang sama dengan orang tersebut. Apabila kita menggunakan bahasa Indonesia, lawan bicara kita juga harus mengerti bahasa Indonesia. Kalau lawan bicara kita tidak mengerti bahasa Indonesia, kita masih berkomunikasi dengannya melalui seorang penerjemah.


Dalam pemrograman komputer, berlaku juga hal seperti diatas. Kita harus menggunakan bahasa yang dimengerti oleh komputert untuk memberikan suatu instruksi atau perintah. Langkah-langkah yang kita lakukan dalam memberikan instruksi kepada komputer untuk memecahkan masalah inilah yang dinamakan dengan pemrograman komputer.


Dalam pemrograman komputer, ada beberapa langkah yang harus kita perhatikan, yaitu:

  1. Mendefinisikan masalah. Pada langkah ini tentukan masalahnya seperti apa, kemudian apa saja yang harus dipecahkan dengan komputer, dan yang terakhir adalah apa masukannya dan bagaimana keluarannya.

  2. Menentukan solusi. Setelah masalah didefinisikan dengan jelas, masukan apa yang diberikan sudah jelas, keluaran apa yang diinginkan sudah jelas, langkah selanjutnya adalah mencari jalan bagaimana masalah tersebut diselesaikan.

  3. Memilih algoritma. Langkah ini merupakan langkah penting dalam pemrograman komputer, karena pemilihan algoritma yang salah akan menyebabkan program memiliki unjuk kerja yang kurang baik. Algoritma pemrograman akan dibahas lebih lanjut pada suba bab berikutnya.

  4. Menulis program. Pada langkah ini kita mulai menuliskan program komputer untuk memecahkan masalah. Ada beberapa hal yang harus dipertimbangkan saat memilih bahasa pemrograman diantaranya adalah masalah yang dihadapi dan bahasa pemrograman yang dikuasai.

  5. Menguji program. Setelah program selesai ditulis, kita harus mengujinya. Pengujian pertama adalah apakah program berhasil dikompilasi dengan baik? Pengujian berikutnya apakah program dapat menampilkan keluaran yang diinginkan?



  1. Menulis dokumentasi. Hal ini biasanya dilakukan bersamaan menulis program, artinya pada setiap baris program atau pada setiap beberapa baris program, kita menambahkan komentar yang menjelaskan kegunaan dari suatu pernyataan.

  2. Merawat progam. Langkah ini dilakukan setelah program selesai dibuat, diuji dan sudah digunakan oleh pengguna. Contoh perawatan adalah melakukan revisi jika pengguna ingin menbambahkan suatu fasilitas baru pada program tersebut.




    1. Istilah-istilah Dasar


Ada beberapa istilah dasar yang perlu dipahami sebelum mempelajari pemrograman komputer, yaitu:

  1. Program adalah kata, ekspresi, pernyataan atau kombinasinya yang disusun dan dirangkai menjadi satu kesatuan prosedur yang berupa urutan langkah untuk menyelesaikan masalah yang diimplementasikan dengan menggunakan bahasa pemrograman sehingga dapat dieksekusi oleh komputer.

  2. Bahasa pemrograman merupakan prosedur atau tata cara penulisan program. Pada bahasa pemrograman terdapat dua faktor penting yang harus diperhatikan yaitu sintak (aturan-aturan atau tata cara penulisan) dan semantic (aturan-aturan untuk menyatakan suatu makna/arti)

  3. Pemrograman merupakan proses mengimplementasikan urutan langkah untuk menyelesaikan suatu masalah dengan menggunakan suatu bahasa pemrograman.

  4. Pemrograman terstruktur merupakan proses mengimplementasikan urutan langkah untuk menyelesaikan suatu masalah dalam bentuk program yang memiliki rancang bangun yang terstruktur dan tidak berbelit-belit sehingga mudah ditelusuri, dipahami dan dikembangkan oleh siapa saja.




    1. Algoritma


Dalam bidang pemrograman, algoritma dedifinisikan sebagai suatu metode khusus yang tepat dan terdiri dari serangkaian langkah yang terstruktur dan dituliskan secara sistematis, yang akan dikerjakan untuk menyelesaikan suatu masalah dengan bantuan komputer.


Proses dari masalah hingga menjadi suatu algoritma disebut tahap pemecahan masalah. Sedangkan tahap dari algoritma hingga menjadi suatu program komputer disebut tahap implementasi.





Algoritma pemrograman yang baik memiliki cirri-ciri sebagai berikut.

    1. tepat, benar, sederhana, standard an efektif

    2. logis, terstruktur dan sistematis

    3. semua operasi terdefinisi

    4. semua proses harus berakhir setelah sejumlah langkah dilakukan

    5. ditulis dengan bahasa standar dengan format pemrograman agar mudah diimplementasikan dan tidak menimbulkan arti bias maupun ganda.




    1. Penyajian Algoritma


Penyajian algoritma dalam bentuk tulisan biasanya menggunakan metode English structure), sedangkan penyajian algoritma dalam bentuk gambar atau simbol biasanya menggunakan metode flowchart program.



      1. English Structure


Basis dari English Structure adalah bahasa inggris, tetapi boleh juga menggunakan bahasa lain sesuai dengan bahasa negara masing-masing. Oleh karena bahasa manusia yang digunakan sebagai dasar pembuatan algoritma, maka English Structure lebih tepat untuk menggambarkan suatu algoritma yang akan dikomunikasikan kepada pemrogram maupun pemakai program.



      1. Flowchart Program


Flowchart program adalah suatu skema atau bagan yang menggambarkan urutan kegiatan dari suatu program dari awal sampai akhir.

Jumat, 31 Oktober 2008

TUGAS LOGIKA & ALGORITMA (KELOMPOK)

Tugas 1


Jawablah soal-soal berikut dengan jelas dan benar!

1. Jelaskan apa yang dimaksud dengan logika dan penalaran!

2. Jelaskan apa yang dimaksud dengan penalaran induktif dan penalaran deduktif, dan beri contoh masing-masing!

3. Jelaskan apa yang dimaksud dengan proposisi empirik dan proposisi mutlak!

4. Tentukan empirik atau mutlak proposisi-proposisi berikut!

1) Air mendidih pada suhu 100 oC
2) Dua garis lurus yang sejajar tidak akan pernah bertemu
3) Matahari terbit dari sebelah timur
4) Semua manusia akan mati
5) Luas sebuah persegi panjang selalu 100 cm
6) Semua bangunan menggunakan bahan baku semen
7) Semua apel rasanya manis
8) Semua mahasiswa memakai sepatu berwarna hitam


Tugas 2

Jawablah soal-soal berikut dengan jelas dan benar!

1. Jelaskan apa yang dimaksud dengan logika proposisional!
Jawab

2. Jelaskan apa yang dimaksud dengan negasi, konjungsi dan disjungsi!
Jawab

3. Negasikan proposisi-proposisi berikut.
a) Maria anak yang rajin
b) Joko adalah pemain sepakbola
c) Maria dan Joko adalah teman satu kelas
d) Miranda adalah penari tradisional
e) Budiman adalah ketua kelas
Jawab


2. Konjungsikan proposisi-proposisi berikut.
a) Desy Ratnasari adalah pemain sinetron Indonesia
Desy Ratnasari adalah presenter Indonesia
b) Budiman suka bermain badminton
Budiman suka bermain sepakbola
c) Martono anak yang pandai
Martono anak yang patuh kepada orang tua
Jawab

3. Disjungsikan proposisi-proposisi berikut.
a) Yang sedang bermain musik adalah Irfan
Yang sedang bermain musik adalah Panji
b) Bunga mawar berwarna merah
Bunga mawar berwarna putih
c) Akbar membeli sepatu baru
Akbar membeli tas baru
Jawab

4. Diketahui empat proposisi yang dilambangkan dengan A, B, C, dan D. Buatlah tabel kebenaran dengan seluruh kemungkinan dari operasi konjungsi, disjungsi, negasi dari konjungsi dan negasi dari disjungsi keempat proposisi tersebut.
Jawab


Tugas 3

Jawablah soal-soal berikut dengan jelas dan benar!

1. Jelaskan apa yang dimaksud dengan program, pemrograman dan bahasa
pemrograman!
Jawab

2. Jelaskan apa yang dimaksud dengan algoritma!
Jawab

3. Sebutkan dan jelaskan dua cara penyajian algoritma!
Jawab

4. Sebutkan langkah-langkah yang harus diterapkan dalam pemrograman
komputer!
Jawab


5. Jelaskan proses kerja dari sebuah komputer!
Jawab


Tugas 4


Buatlah algoritma dari soal-soal berikut!

1. Z = (A + B) – C
Jawab

2. L = (M * N) / X, dimana N=8 dan X=12
Jawab

3. A = (B – C) * 6
Jawab

4. X = (A * B) + (B + C), dimana B=10
Jawab

5. K = (J * 9) / (J – 4)
Jawab

6. Luas segitiga = ½ * Alas * Tinggi
Jawab

7. Luas persegi panjang = Panjang * Lebar
Jawab

8. Keliling lingkaran = 2 * 3,14 * R
Jawab

9. Volume tabung = 3,14 * R * R * T
Jawab

10. P = (Q * R) – M, dimana Q = X * Y
Jawab

11. B = C + D + E, dimana D = M * 5
Jawab

12. C = (P + Q) / R, dimana P = A * B, dan R = Z * 3
Jawab


13. Nilai rata-rata = (nilai-1 + nilai-2 + nilai-3) / 3
Jawab

14. Nilai akhir = (30% * Kuis) + (30% * UTS) + (40% * UAS)
Jawab

15. Bunga = (Suku bunga x waktu x modal) / 100
Jawab

Buatlah algoritma untuk menghitung konversi :

16. Dari Dolar AS ke Rupiah, dimana 1$ = Rp. 9000,-
17. Dari jam ke menit
18. Dari kilogram ke ons
19. Dari kwintal ke ton, dimana 1 ton = 10 kw
20. Dari Celcius ke Fahrenheit, Fahrenheit = 1,8 * Celcius + 32

Tugas 5


Jawablah soal-soal berikut dengan jelas dan benar!

1. Buatlah algoritma untuk menghitung NA = (Kuis + UTS + UAS) /3, kemudian beri keterangan =”Lulus” jika NA > 75, dan keterangan =”Tidak Lulus” jika NA <= 75
Jawab

2. Buatlah algoritma untuk menghitung bonus penjualan untuk seorang Sales dengan ketentuan, jika Total Penjualan > 100.000 000 maka mendapatkan bonus sebesar 10% dari Total Penjualan, dan jika Total Penjualan <= 100.000.000 maka mendapatkan bonus sebesar 7% dari Total Penjualan.
Jawab

3. Buatlah algoritma untuk menghitung potongan pembelian untuk para Pembeli dengan ketentuan, jika Total Pembelian > 300.000 maka mendapatlan potongan sebesar 15% dari Total Pembelian, dan jika Total Pembelian <= 300.000 maka mendapatkan potongan sebesar 10% dari Total Pembelian.
Kemudian hitung Total Bayar = Total Pembelian – Potongan.
Jawab




4. Buatlah algoritma untuk menentukan Gaji Pokok berdasarkan Golongan, dengan ketentuan :
Jika Golongan = IA dan Masa Kerja <= 2 tahun maka GP = 600.000
Jika Golongan = IA dan Masa Kerja > 2 tahun maka GP = 800.000
Jika Golongan = IIB dan Masa Kerja <= 4 tahun maka GP = 1.000.000
Jika Golongan = IIB dan Masa Kerja > 4 tahun maka GP = 1.200.000
Jika Golongan = IIIC dan Masa Kerja <= 6 tahun maka GP = 1.450.000
Jika Golongan = IIIC dan Masa Kerja > 6 tahun maka GP = 1.800.000
Jawab

5. Buatlah algoritma untuk menentukan Gaji Pokok dan Tunjangan Keluarga berdasarkan Golongan, dengan ketentuan :

Golongan
Gaji Pokok
Tunjangan Keluarga
I
600.000
65.000
II
800.000
95.000
III
1.050.000
120.000
IV
1.300.000
145.000
Kemudian hitung Gaji Total = Gaji Pokok + Tunjangan Keluarga
Jawab

6. Buatlah algoritma untuk pengolahan data pengembalian buku perpustakaan. Field yang akan diolah adalah Nama Peminjam, Kode buku, Tanggal pinjam, Tanggal kembali, Lama pinjam dan Denda. Ketentuan :
· Lama pinjam = Tanggal kembali – Tanggal pinjam
· Jika Lama pimjam > 3 hari maka selebihnya dari 3 hari dikenakan denda sebesar Rp. 300/hari, dan jika Lama pinjam <= 3 hari maka tidak dikenakan denda
Jawab

7. Buatlah algoritma untuk pengolahan data pengiriman paket. Field yang akan diolah adalah Nama Pengirim, Nama Penerima, Kota Tujuan , Berat paket, Biaya administrasi, Biaya paket dan Total Biaya
Ketentuan :
Biaya administrasi ditentukan berdasarkan Kota tujuan sbb.
Kota tujuan Biaya administrasi
Jakarta Rp. 12.500
Bandung Rp. 15.000
Palembang Rp. 20.000

Biaya paket = Berat paket * Rp. 1000
Total biaya = Biaya administrasi + Biaya paket
Jawab



8. Buatlah algoritma untuk menentukan kelas berdasarkan Nilai tes, dengan ketetntuan sebagai berikut.
Jika Nilai tes >= 81 maka Kelas = “Level 3”
Jika Nilai tes >= 71 maka Kelas = “Level 2”
Jika Nilai tes >= 61 maka Kelas = “Level 1”
Jika Nilai tes < 61 maka Kelas = “Level 0”
Jawab

9. Buatlah algoritma untuk menentukan Nama Jurusan berdasarkan Kode Jurusan
dengan ketentuan :

Kode Jurusan
Nama Jurusan
MI
Manajemen Informatika
KA
Komputerisasi Akuntansi
SI
Sistem Informasi
TI
Teknik Informatika
TK
Teknik Komputer
SK
Sistem Komputer
Jawab

10. Buatlah algoritma untuk menghitung gaji pegawai. Atribut yang digunakan terdiri
dari NIP, Nama, Golongan, Masa kerja, Gaji Pokok, Status, Jumlah anak,
Tunjangan istri, Tunjangan anak, Jam kerja, Gaji lembur, Gaji total, Kasbon dan
Gaji bersih.
a) Gaji pokok ditentukan berdasarkan golongan dan masa kerja
Golongan
Masa kerja
Gaji pokok
I
<= 2 tahun
400.000
I
> 2 tahun
650.000
II
<= 4 tahun
900.000
II
> 4 tahun
1.200.000

b) Tunjangan istri diberikan berdasarkan status. Jika statusnya berkeluarga maka mendapat tunjangan istri sebesar 25% dari gaji pokok dan mendapatkan tunjangan anak sebesar 50.000/anak (maksimal 3 anak). Tetapi jika belum berkeluarga tidak mendapat tunjangan istri dan tunjangan anak.
c) Gaji lembur diperoleh berdasarkan jam kerja (jam kerja normal 160 jam/bulan). Jika jam kerjanya lebih besar dari jam kerja normal maka selebihnya dihitung lembur sebesar Rp. 5000/jam.
d) Gaji total = gaji pokok + tunjangan istri + tunjangan anak + gaji lembur
e) Gaji bersih = gaji total – kasbon.

Jawab

11. Buatlah algoritma untuk menampilkan bilangan ganjil dari 1 sampai dengan 40!
Jawab

12. Buatlah algoritma untuk menampilkan bilangan genap dari 1 sampai dengan 40!
Jawab

13. Buatlah algoritma untuk menampilkan bilangan kelipatan 5 dari 1 sampai dengan 50.
Jawab

14 Buatlah algoritma untuk menampilkan hasil kuadrat bilangan genap dari 1
sampai dengan 20!
Jawab

Tugas 6


Jawablah soal-soal berikut dengan jelas dan benar!

1. Buatlah algoritma untuk menampilkan tulisan “Algoritma Pemrograman” sebanyak 10 baris
Jawab

2. Buatlah algoritma untuk menampilkan bilangan dari 1 sampai dengan 40.
Jawab

3. Buatlah algoritma untuk menampilkan nilai X, X2 dan X3, dengan nilai X dari 1 sampai dengan 10.
Jawab

4. Buatlah algoritma untuk menampilkan konversi dari Kg ke Ons, dengan nilai Kg dari 1 sampai dengan 5.
Jawab

5. Buatlah algoritma untuk mencari nilai faktorial dari suatu bilangan
N! = 1x2x3x…xN
Jawab


6. Buatlah algoritma untuk mencari nilai permutasi dari persamaan P = N! / (N - R!)
Jawab


7. Buatlah algoritma untuk mencari nilai kombinasi dari persamaan
C = N! / ((N – R)! * R!)

Buatlah algoritma dengan hasil tampilan sebagai berikut.

1234 975
34567 9630
456789 54321
Jawab

9. Dengan perulangan berkait buatlah algoritma dengan hasil tampilan sebagai berikut.
35 36 37 38
45 46 47 48
55 56 57 58
65 66 67 68.
Jawab

10. Buatlah algoritma dengan hasil tampilan sebagai berikut.
37 38 39
67 68 69
97 98 99
Jawab

11. Buatlah algoritma untuk penjumlahan matriks dengan jumlah ordo 2 X 2!
Jawab

12. Buatlah algoritma penjumlahan dua buah matriks dengan jumlah ordo yang
ditentukan secara variabel!
Jawab

Tugas 7

Buatlah algoritma file dengan struktur sub program dari soal-soal berikut!

1. Pengolahan data Koperasi. File terdiri dari Anggota (Nomor anggota, Nama, Alamat), Pinjaman (Nomor Pinjam, Jumlah Pinjaman) dan Angsuran (Nomor anggota, Nomor Pinjam, Nomor Angsuran, Jumlah Angsuran, Sisa Angsuran). Ketentuan:
a) Sisa Angsuran = Jumlah Pinjaman – Jumlah Angsuran
b) Masing-masing file mempunyai akses tambah data, perbaiki data, hapus
data dan cetak data.

Jawab
Flowchart Program Menu Utama
Sub program / prosedur Anggota

Sub program / prosedur Pinjaman

Sub program / prosedur Angsuran

2. Pengolahan data Peminjaman dan Pengembalian Buku Perpustakaan. File terdiri dari Anggota (Nomor Anggota, Nama, Kelas), Buku (Kode buku, Judul buku, Pengarang) dan Transaksi (Nomor Anggota, Judul buku, Tgl-pinjam, tgl-kembali, Lama Pinjam, Denda). Ketentuan:
a) Lama pinjam = Tgl-kembali - Tgl-pinjam
b) Jika lama pinjam > 5 hari, maka selebihnya dikenakan denda sebesar Rp. 300/hari, dan jika tidak maka tidak dikenakan denda.

Jawab
Flowchart Program Menu Utama

Sub program / prosedur Anggota

Sub program / prosedur Buku

Sub program / prosedur Transaksi

Senin, 20 Oktober 2008

Struktur data Bab 1

STRUKTUR DATA (1)

PENGANTAR
Bagaimana cara mengatasi masalah implementasi program dengan komputer?
Pemahaman masalah secara menyeluruh dan persiapan data
Keputusan operasi-operasi yang dilakukan terhadap data
Penyimpanan data-data pada memori sehingga tersimpan dan terstruktur secara logis, operasinya efisien
Pengambilan keputusan terhadap bahasa pemrograman mana yang paling cocok untuk jenis data yang ada

Perbedaan Tipe Data, Obyek Data & Struktur Data (1)

Tipe data adalah jenis data yang mampu ditangani oleh suatu bahasa pemrograman pada komputer.
Tiap-tiap bahasa pemrograman memiliki tipe data yang memungkinkan:
Deklarasi terhadap variabel tipe data tersebut
Menyediakan kumpulan operasi yang mungkin terhadap variabel bertipe data tersebut
Jenis obyek data yang mungkin
Contoh tipe data di C? Java? Pascal? .NET?

Perbedaan Tipe Data, Obyek Data & Struktur Data (2)

Obyek Data adalah kumpulan elemen yang mungkin untuk suatu tipe data tertentu.
Mis: integer mengacu pada obyek data -32768 s/d 32767, byte 0 s/d 255, string adalah kumpulan karakter maks 255 huruf
Struktur Data adalah cara penyimpanan dan pengorganisasian data-data pada memori komputer maupun file secara efektif sehingga dapat digunakan secara efisien, termasuk operasi-operasi di dalamnya.

Aktivitas Struktur Data

Di dalam struktur data kita berhubungan dengan 2 aktivitas:
Mendeskripsikan kumpulan obyek data yang sah sesuai dengan tipe data yang ada
Menunjukkan mekanisme kerja operasi-operasinya
Contoh: integer (-32768 s/d 32767) dan jenis operasi yang diperbolehkan adalah +, -, *, /, mod, ceil, floor, <, >, != dsb.

Struktur data = obyek data + [operasi manipulasi data]

Hubungan SD dan Algoritma

Dengan pemilihan struktur data yang baik, maka problem yang kompleks dapat diselesaikan sehingga algoritma dapat digunakan secara efisien, operasi-operasi penting dapat dieksekusi dengan sumber daya yang lebih kecil, memori lebih kecil, dan waktu eksekusi yang lebih cepat.
Tidak semua struktur data baik dan sesuai. Contoh untuk problem data bank: pengupdate-an harus cepat, sedangkan penambahan/penghapusan data boleh lebih lambat.

Ciri Algoritma

Ciri algoritma yang baik menurut Donald E.Knuth:
Input: ada minimal 0 input atau lebih
Ouput: ada minimal 1 output atau lebih
Definite: ada kejelasan apa yang dilakukan
Efective: langkah yang dikerjakan harus efektif
Terminate: langkah harus dapat berhenti (stop) secara jelas