BENTUK-BENTUK KOMUNIKASI DATA
komunikasi data adalah proses pengiriman dan penerimaan data/informasi dari dua atau lebih device (alat,seperti komputer/laptop/printer/dan alat komunikasi lain)yang terhubung dalam sebuah jaringan. Baik lokal maupun yang luas, seperti internet
Suatu sistem komunikasi data dapat berbentuk offline communication system (sistem komunikasi offline) atau online communication system (sistem komunikasi online). Sistem komunikasi data dapat dimulai dengan sistem yang sederhana, seperti misalnya jaringan akses terminal, yaitu jaringan yang memungkinkan seorang operator mendapatkan akses ke fasilitas yang tersedia dalam jaringan tersebut. Operator bisa mengakses komputer guna memperoleh fasilitas, misalnya menjalankan program aplikasi, mengakses database, dan melakukan komunikasi dengan operator lain. Dalam lingkungan ideal, semua fasilitas ini harus tampak seakan-akan dalam terminalnya, walaupun sesungguhnya secara fisik berada pada lokasi yang terpisah.yang terpisah
A. offline communication system (sistem komunikasi offline)
Sistem komunikasi Offline adalah suatu sistem pengiriman data melalui fasilitas telekomunikasi dari satu lokasi ke pusat pengolahan data, tetapi data yang dikirim tidak langsung diproses oleh CPU (Central Processing Unit). di mana data yang akan diproses dibaca oleh terminal, kemudian dengan menggunakan modem, data tersebut dikirim melalui telekomunikasi. Di tempat tujuan data diterima juga oleh modem, kemudian oleh terminal, data disimpan ke alamat perekam seperti pada disket, magnetic tape, dan lain-lain. Dari alat perekam data ini, nantinya dapat diproses oleh komputer.
Peralatan-peralatan yang diperlukan dalam sistem komunikasi offline, antara lain :
1.Terminal
Terminal adalah suatu I/O device yang digunakan untuk mengirim data dan menerima data jarak jauh dengan menggunakan fasilitas telekomunikasi. Peralatan terminal ini bermacam-macam, seperti :
magnetic tape unit
disk drive
paper tape
dan lain-lain
2. Jalur komunikasi
Jalur Komunikasi adalah fasilitas telekomunikasi yang sering digunakan, seperti :
telepon
telegraf
telex
dan dapat juga dengan fasilitas lainnya.
3. Modem
Model adalah singkatan dari Modulator / Demodulator. Suatu alat yang mengalihkan data dari sistem kode digital ke dalam sistem kode analog dan sebaliknya.
B. Sistem Komunikasi On line.
masih ada tempat duduk di pesawat atau tidak. Pada sistem komunikasi On line ini, data yang dikirim melalui terminal komputer bisa langsung diperoleh, langsung diproses oleh komputer pada saat kita membutuhkan.
Sistem Komunikasi On line ini dapat berupa:
1. Realtime system
Suatu realtime system memungkinkan untuk mengirimkan data ke pusat komputer, diproses di pusat komputer seketika pada saat data diterima dan kemudia mengirimkan kembali hasil pengolahan ke pengirim data saat itu juga. American Airlines merupakan perusahaan yang pertama kali mempelopori sistem ini. Dengan realtime system ini, penumpang pesawat terbang dari suatu bandara atau agen tertentu dapat memesan tiket untuk suatu penerbangan tertentu dan mendapatkan hasilnya kurang dari 15 detik, hanya sekedar untuk mengetahui apakah
Sistem realtime ini juga memungkinkan penghapusan waktu yang diperlukan untuk pengumpulan data dan distribusi data. Dalam hal ini berlaku komunikasi dua arah, yaitu pengiriman dan penerimaan respon dari pusat komputer dalam waktu yang relatif cepat.
Pada realtime system, merupakan komunikasi data dengan kecepatan tinggi. Kebutuhan informasi harus dapat dipenuhi pada saat yang sama atau dalam waktu seketika itu juga. Pada sistem ini proses dilakukan dalam hitungan beberapa detik saja, sehingga diperlukan jalur komunikasi yang cepat, sistem pengolahan yang cepat serta sistem memori dan penampungan atau buffer yang sangat besar.
Sistem realtime ini juga memungkinkan penghapusan waktu yang diperlukan untuk pengumpulan data dan distribusi data. Dalam hal ini berlaku komunikasi dua arah, yaitu pengiriman dan penerimaan respon dari pusat komputer dalam waktu yang relatif cepat.
Pada realtime system, merupakan komunikasi data dengan kecepatan tinggi. Kebutuhan informasi harus dapat dipenuhi pada saat yang sama atau dalam waktu seketika itu juga. Pada sistem ini proses dilakukan dalam hitungan beberapa detik saja, sehingga diperlukan jalur komunikasi yang cepat, sistem pengolahan yang cepat serta sistem memori dan penampungan atau buffer yang sangat besar.
2.Time sharing system
Time sharing system adalah suatu teknik penggunaan online system oleh beberapa pemakai secara bergantian menurut waktu yang diperlukan pemakai. Disebabkan waktu perkembangan proses CPU semakin cepat, sedangkan alat Input/Output tidak dapat mengimbangi kecepatan dari CPU, maka kecepatan dari CPU dapat digunakan secara efisien dengan melayani beberapa alat I/O secara bergantian.
Christopher Strachy pada tahun 1959 telah memberikan ide mengenai pembagian waktu yang dilakukan oleh CPU. Baru pada tahun 1961, pertama kali sistem yang benar-benar berbentuk time sharing system dilakukan di MIT (Massachusetts Institute of Technology) dan diberi nama CTSS (Compatible Time Sharing System) yang bisa melayani sebanyak 8 pemakai dengan menggunakan komputer IBM 7090.
Salah satu penggunaan time sharing system ini dapat dilihat dalam pemakaian suatu teller terminal pada suatu bank. Bilamana seorang nasabah datang ke bank tersebut untuk menyimpan uang atau mengambil uang, maka buku tabungannya ditempatkan pada terminal. Dan oleh operator pada terminal tersebut dicatat melalui papan ketik (keyboard), kemudian data tersebut dikirim secara langsung ke pusat komputer, memprosesnya, menghitung jumlah uang seperti yang dikehendaki, dan mencetaknya pada buku tabungan tersebut untuk transaksi yang baru saja dilakukan.
3. Distributed data processing system
Distributed data processing (DDP) system merupakan bentuk yang sering digunakan sekarang sebagai perkembangan dari time sharing system. Bila beberapa sistem komputer yang bebas tersebar yang masing-masing dapat memproses data sendiri dan dihubungkan dengan jaringan telekomunikasi, maka istilah time sharing sudah tidak tepat lagi. DDP system dapat didefinisikan sebagai suatu sistem komputer interaktif yang terpencar secara geografis dan dihubungkan dengan jalur telekomunikasi dan seitap komputer mampu memproses data secara mandiri dan mempunyai kemampuan berhubungan dengan komputer lain dalam suatu sistem.
Setiap lokasi menggunakan komputer yang lebih kecil dari komputer pusat dan mempunyai simpanan luar sendiri serta dapat melakukan pengolahan data sendiri. Pekerjaan yang terlalu besar yang tidak dapat dioleh di tempat sendiri, dapat diambil dari komputer pusat.
Kesimpulan :
Suatu sistem Komunikasi data berbentuk secara offline dan On line,komunikasi data secara offline yaitu data yang dikirim melalui terminal komputer tidak bisa langsung diperoleh sedangkan Komunikasi data secara On line yaitu data yang dikirim melalui terminal komputer bisa langsung diperoleh
MAKALAH KOMDAT
LINIER PROGRAMING
1. Seorang pengrajin enghasilkan satu tipe meja dan satu tipe kursi. Proses yang dikerjakan hanya merakit meja dan kursi. Dibutuhkan waktu 2 jam untuk merakit 1 unit meja dan 30 menit untuk merakit 1 unit kursi. Perakitan dilakukan oleh 4 orang karyawan dengan waktu kerja 8 jam perhari. Pelanggan pada umumnya membeli paling banyak 4 kursi untuk 1 meja. Oleh karena itu, pengrajin harus memproduksi kursi paling banyak empat kali jumlah meja. Harga jual per unit meja adalah Rp 1,2 juta dan per unit kursi adalah Rp 500 ribu.
Dari soal diatas, solusinya adalah:
a. tujuannya adalah memaksimalkan pendapatan.
b. Sumberdaya yang dibatasi:
- waktu perakitan
2 jam = 1 unit meja
30 menit = 1 unit kursi
- jumlah pekerja 4 orang
- jam kerja = 8 jam
- pangsa pasar = 1 meja maksimal 4 kursi
c. alternatif keputusan adalah mengatur jumlah produksi
d. Model matematika:
x1= meja
x2= kursi
Tujuan : Max Z = 1,2x1 + 0,5x2
Kendala: 2x1 + 0,5x2 ≤ 32
x1 / x2 = ¼
x1, x2 ≥ 0
2. Seorang peternak memiliki 200 kambinng yang mengkonsumsi 90 kg pakan khusus setiap harinya. Pakan tersebut disiapkan menggunakan campuran jagung dan bungkil kedelai dengan komposisi sebagai berikut:
BAHAN Kg per kg bahan
Kalsium Protein Serat Biaya (RP/kg)
Jagung 0.001 0.09 0.02 2000
Bungkil Kedelai 0.002 0.60 0.06 5500
Kebutuhan pakan kambing setiap harinya adalah paling banyak 1% kalsium, paling sedikit 30% protein dan paling banyak 5% serat.
Dari soal diatas, solusinya adalah:
a. tujuannya adalah meminimalkan biaya pembelian bahan pakan.
b. Sumberdaya yang dibatasi:
- jumlah pakan per hari adalah 90 kg
- kandungan kalsium : jagung = 0,001, bungkil kedelai = 0,002 dan jumlah paling banyak kalsium sebesar 1%
- kandungan protein : jagung = 0,09, bungkil kedelai = 0,60 dan jumlah paling sedikit adalah 30%
- kandungan serat : jagung = 0,02, bungkil kedelai = 0,06 dan jumlah paling banyak serat adalah 5%
c. alternatif keputusan adalah jumlah jagung dan bungkil kedelai yang akan digunakan
d. Model matematika:
Kita definisikan :
x1 = jumlah jagung yang akan digunakan
x2 = jumlah bungkil kedelai yang akan digunakan
Fungsi tujuan : minimumkan z = 2000 x1 + 5500 x2
Kendala :
x1 + x2 = 90
0.001 x1 + 0.002 x2 ≤ 0.9
0.09 x1 + 0.6 x2 ≥ 27
0.02 x1 + 0.06 x2 ≤ 4.5
x1, x2 ≥ 0
3. Suatu oabrik perakitan radio menghasilkan dua tipe radio, yaitu HiFi-1 dan HiFi-2 pada fasilitas perakitan yang sama. Lini perakitan terdiri dari 3 stasiun kerja. Waktu perakitan masing-masing tipe pada masing-masing stasiun kerja adalah sebagai berikut:
Statsiun Kerja Waktu perakitan per unit (menit)
HiFi-1 HiFi-2
1 6 4
2 5 5
3 4 6
Waktu kerja masing-masing stasiun kerja adalah 8 jam perhari. Masing-masing stasiun kerja membutuhkan perawatan selama 10%, 14% dan 12% dari total waktu kerja (8jam) secara berturut-turut untuk stasiun kerja 1,2 dan 3.
a. tujuannya adalah memaksimalkan produksi.
b. Sumberdaya yang dibatasi:
- Waktu perakitan masing-masing stasiun kerja:
Stasiun kerja 1 = HiFi-1 = 6 menit dan HiFi-2 = 4 menit
Stasiun kerja 2 = HiFi-1 = 5 menit dan HiFi-2= 5 menit
Stasiun kerja 3 = HiFi-1 = 4 menit dan HiFi-2= 6 menit
- Jumlah waktu perawatan tiap mesin
Stasiun kerja 1 : (8 * 60) – (10% (8 * 60)) = 432
Stasiun kerja 2 : (8 * 60) – (14% (8 * 60)) = 412,8
Stasiun kerja 3 : (8 * 60) – (12% (8 * 60)) = 422,4
c. alternatif keputusan adalah waktu perakitan tiap stasiun kerja
d. Model matematika:
Kita definisikan :
x1 = HiFi-1
x2 = HiFi-2
Fungsi tujuan : max z = x1 + x2
Kendala :
6 x1 + 4 x2 ≤ 432
5 x1 + 5 x2 ≤ 412,8
4 x1 + 6 x2 ≤ 422,4
x1, x2 ≥ 0
4. Dua produk menghasilkan menggunakan tiga mesin. Waktu masing-masing mesin yang digunakan untuk menghasilkan kedua produk dibatasi hanya 10 jam per hari. Waktu produksi dan keuntungan per unit masing-masing produk ditunjukkan tabel di bawah ini:
Produk Waktu produksi (menit) Keuntungan
Mesin 1 Mesin 2 Mesin 3
1 10 6 8 2
2 5 20 15 3
a. tujuannya adalah memaksimalkan keuntungan.
b. Sumberdaya yang dibatasi:
- Jumlah waktu perakitan tiap mesin untuk menghasilkan kedua produk kurang dari 10 jam/hari = 600 menit
- Waktu produksi (menit) tiap-tiap mesin:
Mesin 1 =
Produk 1 = 10
Produk 2 = 5
Mesin 2 =
Produk 1 = 6
Produk 2 = 20
Mesin 3 =
Produk 1 = 8
Produk 2 = 15
- Keuntungan tiap produk
Produk 1 = 2
Produk 2 = 3
c. Alternatif keputusan adalah waktu produksi tiap mesin untuk menghasilkan produk 1 dan 2
d. Model matematika:
Kita definisikan :
x1 = Produk 1
x2 = Produk 2
Fungsi tujuan : max z = 2x1 + 3x2
Kendala :
10 x1 + 5 x2 ≤ 600
6 x1 + 20 x2 ≤ 600
8 x1 + 15 x2 ≤ 600
x1, x2 ≥ 0
5. Suatu perusahaan manufaktur menghentikan produksi salah satu produk yang tidak menguntungkan. Penghentian ini menghasilkan kapasitas produksi yang menganggur (berlebih). Kelebihan kapasitas produksi ini oleh manajemen sedang dipertimbangkan untuk dialokasikan ke salah satu atau semua produk yang dihasilkan (produk 1, 2 dan 3). Kapasitas yang tersedia pada mesin yang mungkin akan membatasi output diringkaskan pada tabel berikut:
Tipe Mesin Waktu yang dibutuhkan produk masing-masing mesin (jam) Waktu yang tersedia (jam per minggu)
Produk 1 Produk 2 Produk 3
Mesin milling 9 3 5 500
Lathe 5 4 0 350
grinder 3 0 2 150
Bagian penjuallan menghasilkan bahwa penjualan potensial untuk produk 1 dan 2 tidak akan melebihi laju produksi maksimum dan penjualan potensial untuk produk 3 adalah 20 unit per minggu. Keuntungan per unit masing-masing produk secara berturut adalah $50, %20 dan %25.
a. tujuannya adalah memaksimalkan keuntungan.
b. Sumberdaya yang dibatasi:
- Waktu produksi (jam) tiap-tiap mesin per minggu:
Mesin milling:
Produk 1 = 9 * 7 = 63
Produk 2 = 3 * 7 =21
Produk 3 = 5 * 7 = 35
Lathe:
Produk 1 = 5 * 7 = 35
Produk 2 = 4 * 7 = 28
Produk 3 = 0 * 7 = 0
Grinder:
Produk 1 = 3 * 7 = 21
Produk 2 = 0 * 7 =0
Produk 3 = 2 * 7 = 14
c. Waktu yang tersedia untuk tiap mesin (jam/minggu)
Mesin milling = 500
Lathe =350
Grinder = 150
d. Alternatif keputusan adalah waktu produksi tiap mesin untuk menghasilkan produk 1, 2 dan 3
e. Model matematika:
Kita definisikan :
x1 = Produk 1
x2 = Produk 2
x3 = Produk 3
Fungsi tujuan : max z = 50x1 + 20x2 + 25 x3
Kendala :
9 x1 + 3 x2 + 5 x3 ≤ 500
5 x1 + 4 x2 + 0 x3≤ 350
3 x1 + 0 x2 + 2 x3 ≤ 150
x1, x2, x3 ≥ 0
Metode Simpleks
(Sumber : Siringoringo, 2005)
Pengantar
Salah satu teknik penentuan solusi optimal yang digunakan dalam pemrograman linier adalah metode simpleks. Penentuan solusi optimal menggunakan metode simpleks didasarkan pada teknik eleminasi Gauss Jordan. Penentuan solusi optimal dilakukan dengan memeriksa titik ekstrim satu per satu dengan cara perhitungan iteratif. Sehingga penentuan solusi optimal dengan simpleks dilakukan tahap demi tahap yang disebut dengan iterasi. Iterasi ke-i hanya tergantung dari iterasi sebelumnya (i-1).
Ada beberapa istilah yang sangat sering digunakan dalam metode simpleks, diantaranya :
1. Iterasi adalah tahapan perhitungan dimana nilai dalam perhitungan itu tergantung dari nilai tabel sebelumnya.
2. Variabel non basis adalah variabel yang nilainya diatur menjadi nol pada sembarang iterasi. Dalam terminologi umum, jumlah variabel non basis selalu sama dengan derajat bebas dalam sistem persamaan.
3. Variabel basis merupakan variabel yang nilainya bukan nol pada sembarang iterasi. Pada solusi awal, variabel basis merupakan variabel slack (jika fungsi kendala merupakan pertidaksamaan ≤ ) atau variabel buatan (jika fungsi kendala menggunakan pertidaksamaan ≥ atau =). Secara umum, jumlah variabel basis selalu sama dengan jumlah fungsi pembatas (tanpa fungsi non negatif).
4. Solusi atau nilai kanan merupakan nilai sumber daya pembatas yang masih tersedia. Pada solusi awal, nilai kanan atau solusi sama dengan jumlah sumber daya pembatas awal yang ada, karena aktivitas belum dilaksanakan.
5. Variabel slack adalah variabel yang ditambahkan ke model matematik kendala untuk mengkonversikan pertidaksamaan ≤ menjadi persamaan (=). Penambahan variabel ini terjadi pada tahap inisialisasi. Pada solusi awal, variabel slack akan berfungsi sebagai variabel basis.
6. Variabel surplus adalah variabel yang dikurangkan dari model matematik kendala untuk mengkonversikan pertidaksamaan ≥ menjadi persamaan (=). Penambahan ini terjadi pada tahap inisialisasi. Pada solusi awal, variabel surplus tidak dapat berfungsi sebagai variabel basis.
7. Variabel buatan adalah variabel yang ditambahkan ke model matematik kendala dengan bentuk ≥ atau = untuk difungsikan sebagai variabel basis awal. Penambahan variabel ini terjadi pada tahap inisialisasi. Variabel ini harus bernilai 0 pada solusi optimal, karena kenyataannya variabel ini tidak ada. Variabel hanya ada di atas kertas.
8. Kolom pivot (kolom kerja) adalah kolom yang memuat variabel masuk. Koefisien pada kolom ini akn menjadi pembagi nilai kanan untuk menentukan baris pivot (baris kerja).
9. Baris pivot (baris kerja) adalah salah satu baris dari antara variabel basis yang memuat variabel keluar.
10. Elemen pivot (elemen kerja) adalah elemen yang terletak pada perpotongan kolom dan baris pivot. Elemen pivot akan menjadi dasar perhitungan untuk tabel simpleks berikutnya.
11. Variabel masuk adalah variabel yang terpilih untuk menjadi variabel basis pada iterasi berikutnya. Variabel masuk dipilih satu dari antara variabel non basis pada setiap iterasi. Variabel ini pada iterasi berikutnya akan bernilai positif.
12. Variabel keluar adalah variabel yang keluar dari variabel basis pada iterasi berikutnya dan digantikan oleh variabel masuk. Variabel keluar dipilih satu dari antara variabel basis pada setiap iiterasi. Variabel ini pada iterasi berikutnya akan bernilai nol.
BENTUK BAKU
Sebelum melakukan perhitungan iteratif untuk menentukan solusi optimal, pertama sekali bentuk umum pemrograman linier dirubah ke dalam bentuk baku terlebih dahulu. Bentuk baku dalam metode simpleks tidak hanya mengubah persamaan kendala ke dalam bentuk sama dengan, tetapi setiap fungsi kendala harus diwakili oleh satu variabel basis awal. Variabel basis awal menunjukkan status sumber daya pada kondisi sebelum ada aktivitas yang dilakukan. Dengan kata lain, variabel keputusan semuanya masih bernilai nol. Dengan demikian, meskipun fungsi kendala pada bentuk umum pemrograman linier sudah dalam bentuk persamaan, fungsi kendala tersebut masih harus tetap berubah.
Ada beberapa hal yang harus diperhatikan dalam membuat bentuk baku, yaitu :
1. Fungsi kendala dengan pertidaksamaan ≤ dalam bentuk umum, dirubah menjadi persamaan (=) dengan menambahkan satu variabel slack. (S1, S2,.....Sn)
2. Fungsi kendala dengan pertidaksamaan ≥ dalam bentuk umum, dirubah menjadi persamaan (=) dengan mengurangkan satu variabel surplus.(-S1+A1)
3. Fungsi kendala dengan persamaan dalam benttuk umum,ditambahkan satu artificial variabel (variabel buatan). Pada akhir iterasi (solusi terakhir), variabel ini tidak diperkenankan nol. (A1, A2, ....An).
Perhatikan kasus A berikut :
Fungsi tujuan : minimumkan z = 2 x1 + 5.5 x2
Kendala :
x1 + x2 = 90
0.001 x1 + 0.002 x2 ≤ 0.9
0.09 x1 + 0.6 x2 ≥ 27
0.02 x1 + 0.06 x2 ≤ 4.5
x1, x2 ≥ 0
Bentuk di atas adalah bentuk umum pemrograman liniernya. Kedalam bentuk baku, model matematik tersebut akan berubah menjadi :
Fungsi tujuan : minimumkan z = 2 x1 + 5.5 x2
Kendala :
x1 + x2 + s1 = 90
0.001 x1 + 0.002 x2 + s2 = 0.9
0.09 x1 + 0.6 x2 – s3 + s4 = 27
0.02 x1 + 0.06 x2 + s5 = 4.5
x1, x2 , s1, s2, s3, s4, s5 ≥ 0
Fungsi kendala pertama mendapatkan variable buatan (s1), karena bentuk umumnya sudah menggunakan bentuk persamaan. Fungsi kendala kedua dan keempat mendapatkan variabel slack (s2 dan s5) karena bentuk umumnya menggunakan pertidaksamaan ≤, sedangkan fungsi kendala ketiga mendapatkan variabel surplus (s3) dan variabel buatan (s4) karena bentuk umumnya menggunakan pertidaksamaan ≥.
Perhatikan pula kasus B berikut ini :
Maksimumkan z = 2x1 + 3x2
Kendala :
10 x1 + 5 x2 ≤ 600
6 x1 + 20 x2 ≤ 600
8 x1 + 15 x2 ≤ 600
x1, x2 ≥
Bentuk di atas juga merupakan bentuk umum. Perubahan ke dalam bentuk baku hanya membutuhkan variabel slack, karena semua fungsi kendala menggunakan bentuk pertidaksamaan ≤ dalam bentuk umumnya. Maka bentuk bakunya adalah sebagai berikut :
Maksimumkan z = 2x1 + 3x2 + 0s1 + 0s2 + 0s3
Kendala :
10 x1 + 5 x2 + s1 = 600
6 x1 + 20 x2 + s2 = 600
8 x1 + 15 x2 + s3 = 600
x1, x2 , s1 , s2 , s3 ≥ 0
s1 , s2 , s3 merupakan variable slack.
PEMBENTUKAN TABEL SIMPLEKS
Dalam perhitungan iterative, kita akan bekerja menggunakan tabel. Bentuk baku yang sudah diperoleh, harus dibuat ke dalam bentuk tabel.
Semua variabel yang bukan variabel basis mempunyai solusi (nilai kanan) sama dengan nol dan koefisien variabel basis pada baris tujuan harus sama dengan 0. Oleh karena itu kita harus membedakan pembentukan tabel awal berdasarkan variabel basis awal. Dalam sub bab ini kita hanya akan memperhatikan fungsikendala yang menggunakan variabel slack dalam bentuk bakunya, sedangkan yang menggunakan variabel buatan akan dibahas pada sub bab lainnya.
Gunakan kasus B di atas, maka tabel awal simpleksnya adalah :
VB X1 X2 S1 S2 S3 solusi
Z -2 -3 0 0 0 0
S1 10 5 1 0 0 600
S2 6 20 0 1 0 600
S3 8 15 0 0 1 600
LANGKAH-LANGKAH PENYELESAIAN
Langkah-langkah penyelesaian adalah sebagai berikut :
1. Periksa apakah tabel layak atau tidak. Kelayakan tabel simpleks dilihat dari solusi (nilai kanan). Jika solusi ada yang bernilai negatif, maka tabel tidak layak. Tabel yang tidak layak tidak dapat diteruskan untuk dioptimalkan.
2. Tentukan kolom kerja. Penentuan kolom kerja dilihat dari koefisien fungsi tujuan (nilai di sebelah kanan baris z) dan tergantung dari bentuk tujuan. Jika tujuan maksimisasi, maka kolom kerja adalah kolom dengan koefisien paling negatif. Jika tujuan minimisasi , maka kolom kerja adalah kolom dengan koefisien positif terbesar. Jika kolom kerja ditandai dan ditarik ke atas, maka kita akan mendapatkan variabel keluar. Jika nilai paling negatif (untuk tujuan maksimisasi) atau positif terbesar (untuk tujuan minimisasi) lebih dari satu, pilih salah satu secara sembarang.
3. Tentukan baris pivot. Baris pivot ditentukan setelah membagi nilai solusi dengan nilai kolom pivot yang bersesuaian (nilai yang terletak dalam satu baris). Dalam hal ini, nilai negatif dan 0 pada kolom pivot tidak diperhatikan, artinya tidak ikut menjadi pembagi. Baris pivot adalah baris dengan rasio pembagian terkecil. Jika baris pivot ditandai dan ditarik ke kiri, maka kita akan mendapatkan variabl keluar. Jika rasio pembagian terkecil lebih dari satu, pilih salah sau secara sembarang.
4. Tentukan elemen pivot. Elemen pivot merupakan nilai yang terletak pada perpotongan kolom dan baris pivot.
5. Bentuk tabel simpleks baru. Tabel simpleks baru dibentuk dengan pertama sekali menghitung nilai baris pivot baru. Baris pivot baru adalah baris pivot lama dibagi dengan elemen pivot. Baris baru lainnya merupakan pengurangan nilai kolom pivot baris yang bersangkutan dikali baris pivot baru dalam satu kolom terhadap baris lamanya yang terletak pada kolom tersebut.
6. Periksa apakah tabel sudah optimal. Keoptimalan tabel dilihat dari koefisien fungsi tujuan (nilai pada baris z) dan tergantung dari bentuk tujuan. Untuk tujuan maksimisasi, tabel sudah optimal jika semua nilai pada baris z sudah positif atau 0. Pada tujuan minimisasi, tabel sudah optimal jika semua nilai pada baris z sudah negatif atau 0. Jika belum, kembali ke langkah no. 2 , jika sudah optimal baca solusi optimalnya.
MEMBACA TABEL OPTIMAL
Membaca tabel optimal adalah bagian penting bagi pengambil keputusan. Ada beberapa hal yang bisa dibaca dari table optimal :
1. Solusi optimal variable keputusan
2. Status sumber daya
3. harga bayangan (dual/shadow prices).
Kasus berikut ini menggunakan metode simpleks :
A.
1. Model Matematika:
Max Z = 50 X1 + 40 X2
Kendala = 0.4 X1 + 0.5 X2 ≤ 326
0.5 X1 + 0.3 X2 ≤ 354
0.05 X1 + 0.1 X2 ≤ 62
X1, X2 ≥ 0
X1 = CB
X2 = PR
2. Bentuk baku
Max Z = 50 X1 + 40 X2 + 0S1 + 0S2 + 0S3
Kendala = 0.4 X1 + 0.5 X2 + S1 = 326
0.5 X1 + 0.3 X2 + S2 = 354
0.05 X1 + 0.1 X2 + S3 = 62
X1, X2, S1, S2, S3 ≥ 0
3. Tabel Simpleks
4. Penyelesaian
- Kolom kerja merupakan perbandingan nilai negatif terbesar dari koefisien tujuan yaitu : - 50 : - 40. Maka kolom kerja terdapat dalam kolom CB
- Baris pivot adalah hasil perbandingan terkecil dari perbandingan nilai solusi/ kendali dengan nilai pada kolom kerja.
S1 = 326 : 0.4 = 815
S2 = 354 : 0.5 = 708
S3 = 60 : 0.05 = 1240
Baris pivot terdapat pada baris S2.
- Rubah semua nilai pada baris pivot dengan cara membaginya dengan nilai perpotongan antara kolom kerja dengan baris pivot : 0.5
- Rubah semua nilai selain nilai pada baris pivot dengan cara:
Nilai baru = Nilai lama – (nilai kolom kerja * nilai baru baris pivot)
Perhitungan nilai barisnya:
Baris Z :
1 -50 -40 0 0 0 0
- 50 ( 0 1 0.6 0 2 0 708 ) -
1 0 -10 0 100 0 35400
Baris S1 :
0 0.4 0.5 1 0 0 326
0.4 ( 0 1 0.6 0 2 0 708 ) -
0 0 0.26 1 -0.8 0 42.8
Baris S3
0 0.05 0.1 0 0 1 62
0.05 ( 0 1 0.6 0 2 0 708 ) -
0 0 0.07 0 -0.1 1 26.6
Tabel hasil iterasi pertama:
Selanjutnya kita periksa apakah tabel sudah optimal atau belum. Karena nilai baris Z dibawah variabel PR masih negatif , maka tabel belum optimal. Kita lakukan iterasi ke 2.
- Kolom kerja merupakan perbandingan nilai negatif terbesar dari koefisien tujuan yaitu : 0 : - 10. Maka kolom kerja terdapat dalam kolom PR
- Baris pivot adalah hasil perbandingan terkecil dari perbandingan nilai solusi/ kendali dengan nilai pada kolom kerja.
S1 = 42.8 : 0.26 = 156.9
CB = 708 : 0.6 = 1180
S3 = 26.6 : 0.07 = 380
Baris pivot terdapat pada baris S1.
- Rubah semua nilai pada baris pivot dengan cara membaginya dengan nilai perpotongan antara kolom kerja dengan baris pivot : 0.26
- Rubah semua nilai selain nilai pada baris pivot dengan cara:
Nilai baru = Nilai lama – (nilai kolom kerja * nilai baru baris pivot)
Perhitungan nilai barisnya:
Baris Z :
1 0 -10 0 100 0 35400
- 10 ( 0 0 1 3.85 -3.08 0 164.62) -
1 0 0 38.5 -30.8 0 37046.2
Baris CB :
0 1 0.6 0 2 0 708
0.6 ( 0 0 1 3.85 -3.08 0 164.62) -
0 0.4 0 -2.31 3.85 0 609.23
Baris S3
0 0 0.07 0 -0.1 1 26.6
0.07 ( 0 0 1 3.85 -3.08 0 164.62) -
0 0 0 -0.27 0.12 1 15.08
Tabel Hasil Iterasi ke 2:
Tabel sudah optimal. Sehingga perhitungan iterasi di hentikan.
MEMBACA TABEL OPTIMAL
CB = 609.23, PR = 164.62 dan Z = 37046.2 artinya untuk mendapatkan keuntungan maksimum sebesar $ 37.046,2, maka perusahaan sebaiknya memproduksi Radio CityBand sebanyak 609,23 dan Radio Portable sebanyak 164,62.
Status sumber daya :
Sumber daya pertama dilihat dari keberadaan variable basis awal dari setiap fungsi kendala pada table optimal. Dalam kasus di atas, untuk fungsi kendala pertama periksa keberadaan S1 pada variable basis table optimal. Periksa keberadaan S2 pada variable basis table optimal untuk fungsi kendala kedua. Periksa keberadaan S3 pada variable basis table optimal untuk fungsi kendala ketiga.
S3 = 15,08. Sumber daya ini disebut berlebih (abundant)
S2 = S1 = 0. Kedua sumber daya ini disebut habis terpakai (scarce).
Harga bayangan :
Harga bayangan dilihat dari koefisien variable slack atau surplus pada baris fungsi tujuan.
Koefisien S1 pada baris fungsi tujuan table optimal = 38,5, dengan demikian harga bayangan sumber daya pertama adalah 38,5
Koefisien S2 pada baris fungsi tujuan table optimal = -30,8, dengan demikian harga bayangan sumber daya kedua adalah -30,8
Koefisien S3 pada baris fungsi tujuan table optimal = 0, dengan demikian harga bayangan sumber daya kedua adalah 0.
B. Dua produk menghasilkan menggunakan tiga mesin. Waktu masing-masing mesin yang digunakan untuk menghasilkan kedua produk dibatasi hanya 10 jam per hari. Waktu produksi dan keuntungan per unit masing-masing produk ditunjukkan tabel di bawah ini:
Produk Waktu produksi (menit) Keuntungan
Mesin 1 Mesin 2 Mesin 3
1 10 6 8 2
2 5 20 15 3
1. Model Matematika:
Max Z = 2x1 + 3x2
Kendala = 10 x1 + 5 x2 ≤ 600
6 x1 + 20 x2 ≤ 600
8 x1 + 15 x2 ≤ 600
x1, x2 ≥ 0
2. Bentuk baku
Max Z = 2 X1 + 3 X2 + 0S1 + 0S2 + 0S3
Kendala = 10 X1 + 5 X2 + S1 = 600
6 X1 + 20X2 + S2 = 600
8 X1 + 15X2 + S3 = 600
X1, X2, S1, S2, S3 ≥ 0
3. Tabel Simpleks
4. Penyelesaian
- Kolom kerja merupakan perbandingan nilai negatif terbesar dari koefisien tujuan yaitu : - 2 : - 3. Maka kolom kerja terdapat dalam kolom Prod. 2.
- Baris pivot adalah hasil perbandingan terkecil dari perbandingan nilai solusi/ kendali dengan nilai pada kolom kerja.
S1 = 600 : 5 = 120
S2 = 600 : 20 = 30
S3 = 600 : 15 = 40
Baris pivot terdapat pada baris S2.
- Rubah semua nilai pada baris pivot dengan cara membaginya dengan nilai perpotongan antara kolom kerja dengan baris pivot : 20
- Rubah semua nilai selain nilai pada baris pivot dengan cara:
Nilai baru = Nilai lama – (nilai kolom kerja * nilai baru baris pivot)
Perhitungan nilai barisnya:
Baris Z :
1 -2 -3 0 0 0 0
- 3 ( 0 6/20 1 0 1/20 0 30 ) -
1 -22/20 0 0 3/20 0 90
Baris S1:
0 10 5 1 0 0 600
5 ( 0 6/20 1 0 1/20 0 30 ) -
0 17/2 0 1 -5/20 0 450
Baris S3
0 8 15 0 0 1 600
15 ( 0 6/20 1 0 1/20 0 30 ) -
0 7/2 0 0 -15/20 1 150
Tabel hasil iterasi pertama:
Selanjutnya kita periksa apakah tabel sudah optimal atau belum. Karena nilai baris Z dibawah variabel Prod. 1 masih negatif , maka tabel belum optimal. Kita lakukan iterasi ke 2.
- Kolom kerja merupakan perbandingan nilai negatif terbesar dari koefisien tujuan yaitu : - 22/20 : 0. Maka kolom kerja terdapat dalam kolom Prod. 1.
- Baris pivot adalah hasil perbandingan terkecil dari perbandingan nilai solusi/ kendali dengan nilai pada kolom kerja.
S1 = 450 : 17/2 = 900/17
Prod. 1 = 30 : 6/20 = 100
S3 = 450 : 7/2 = 900/7
Baris pivot terdapat pada baris S3.
- Rubah semua nilai pada baris pivot dengan cara membaginya dengan nilai perpotongan antara kolom kerja dengan baris pivot : 17/2
- Rubah semua nilai selain nilai pada baris pivot dengan cara:
Nilai baru = Nilai lama – (nilai kolom kerja * nilai baru baris pivot)
Perhitungan nilai barisnya:
Baris Z :
1 -11/10 0 0 3/20 0 90
- 11/10 ( 0 1 0 4/17 -1/34 0 900/17) -
1 0 0 22/85 2/17 0 2520/17
Baris Prod. 1 :
0 3/10 1 0 1/20 0 30
3/10 ( 0 1 0 4/17 -1/34 0 900/17) -
0 0 1 -6/85 1/17 0 240/17
Baris S3
0 7/2 0 0 0 -15/20 450
7/2 ( 0 1 0 4/17 -1/34 0 900/17) -
0 0 0 -14/17 7/68 -15/20 4500/17
Tabel Hasil Iterasi ke 2:
Tabel sudah optimal. Sehingga perhitungan iterasi di hentikan.
MEMBACA TABEL OPTIMAL
Prod. 1 = 240/17, Prod. 2 = 900/17 dan Z = 2520/17 artinya untuk mendapatkan keuntungan maksimum sebesar 2520/17, maka perusahaan sebaiknya memproduksi Prod. 1 sebanyak 240/17 dan Prod. 2 sebanyak 900/17.
Status sumber daya :
Sumber daya pertama dilihat dari keberadaan variable basis awal dari setiap fungsi kendala pada table optimal. Dalam kasus di atas, untuk fungsi kendala pertama periksa keberadaan S1 pada variable basis table optimal. Periksa keberadaan S2 pada variable basis table optimal untuk fungsi kendala kedua. Periksa keberadaan S3 pada variable basis table optimal untuk fungsi kendala ketiga.
S3 = 4500/17. Sumber daya ini disebut berlebih (abundant)
S2 = S1 = 0. Kedua sumber daya ini disebut habis terpakai (scarce).
Harga bayangan :
Harga bayangan dilihat dari koefisien variable slack atau surplus pada baris fungsi tujuan.
Koefisien S1 pada baris fungsi tujuan table optimal = 22/85, dengan demikian harga bayangan sumber daya pertama adalah 22/85.
Koefisien S2 pada baris fungsi tujuan table optimal = 2/17, dengan demikian harga bayangan sumber daya kedua adalah 2/17
Koefisien S3 pada baris fungsi tujuan table optimal = 0, dengan demikian harga bayangan sumber daya kedua adalah 0.
C. Suatu oabrik perakitan radio menghasilkan dua tipe radio, yaitu HiFi-1 dan HiFi-2 pada fasilitas perakitan yang sama. Lini perakitan terdiri dari 3 stasiun kerja. Waktu perakitan masing-masing tipe pada masing-masing stasiun kerja adalah sebagai berikut:
Statsiun Kerja Waktu perakitan per unit (menit)
HiFi-1 HiFi-2
1 6 4
2 5 5
3 4 6
Waktu kerja masing-masing stasiun kerja adalah 8 jam perhari. Masing-masing stasiun kerja membutuhkan perawatan selama 10%, 14% dan 12% dari total waktu kerja (8jam) secara berturut-turut untuk stasiun kerja 1,2 dan 3.
1. Model Matematika:
Max Z = x1 + x2
Kendala = 6 x1 + 4 x2 ≤ 432
5 x1 + 5 x2 ≤ 412,8
4 x1 + 6 x2 ≤ 422,4
x1, x2 ≥ 0
2. Bentuk baku
Max Z = x1 + x2 + 0S1 + 0S2 + 0S3
Kendala = 6 x1 + 4 x2 + S1 = 432
5 x1 + 5 x2 + S2 = 412,8
4 x1 + 6 x2 +S3 = 422,4
x1, x2, 0S1, 0S2, 0S3 ≥ 0
3. Tabel Simpleks
4. Penyelesaian
- Kolom kerja merupakan perbandingan nilai negatif terbesar dari koefisien tujuan yaitu : - 1 : - 1 . Kita tentukan secara sembarang sehingga kolom kerja terdapat dalam kolom HiFi-1.
- Baris pivot adalah hasil perbandingan terkecil dari perbandingan nilai solusi/ kendali dengan nilai pada kolom kerja.
S1 = 432 : 6 = 72
S2 = 412,8 : 5 = 82.56
S3 = 422,4 : 4 = 105,6
Baris pivot terdapat pada baris S1.
- Rubah semua nilai pada baris pivot dengan cara membaginya dengan nilai perpotongan antara kolom kerja dengan baris pivot : 6
- Rubah semua nilai selain nilai pada baris pivot dengan cara:
Nilai baru = Nilai lama – (nilai kolom kerja * nilai baru baris pivot)
Perhitungan nilai barisnya:
Baris Z :
1 -1 -1 0 0 0 0
- 1 ( 0 1 2/3 1/6 0 0 72 ) -
1 0 -1/3 1/6 0 0 72
Baris S2 :
0 5 5 0 1 0 412,8
5 ( 0 1 2/3 1/6 0 0 72 ) -
0 0 5/3 -5/6 1 0 52,8
Baris S3
0 4 6 0 0 1 422,4
4 ( 0 1 2/3 1/6 0 0 72 ) -
0 0 10/3 -2/3 0 1 134,4
Tabel hasil iterasi pertama:
Selanjutnya kita periksa apakah tabel sudah optimal atau belum. Karena nilai baris Z dibawah variabel HiFi- 2 masih negatif , maka tabel belum optimal. Kita lakukan iterasi ke 2.
- Kolom kerja merupakan perbandingan nilai negatif terbesar dari koefisien tujuan yaitu : 0 : - 1/3. Maka kolom kerja terdapat dalam kolom HiFi-2.
- Baris pivot adalah hasil perbandingan terkecil dari perbandingan nilai solusi/ kendali dengan nilai pada kolom kerja.
HiFi-1 = 72 :2/3 = 108
S2 = 52,8 : 5/3 = 31,68
S3 = 134,4 : 10/3 = 40,32
Baris pivot terdapat pada baris S2.
- Rubah semua nilai pada baris pivot dengan cara membaginya dengan nilai perpotongan antara kolom kerja dengan baris pivot : 5/3
- Rubah semua nilai selain nilai pada baris pivot dengan cara:
Nilai baru = Nilai lama – (nilai kolom kerja * nilai baru baris pivot)
Perhitungan nilai barisnya:
Baris Z :
1 0 -1/3 1/6 0 0 72
- 1/3 ( 0 0 1 -1/2 3/5 0 31,68) -
1 0 0 0 1/5 0 61,44
Baris HiFi-1 :
0 1 2/3 1/6 0 0 72
2/3 ( 0 0 1 -1/2 3/5 0 31,68) -
0 1 0 1/2 2/5 0 21,12
Baris S3
0 0 10/3 -2/3 0 1 134,4
10/3 ( 0 0 1 -1/2 3/5 0 31,68) -
0 0 0 1 1 1 105,6
Tabel Hasil Iterasi ke 2:
Tabel sudah optimal. Sehingga perhitungan iterasi di hentikan.
MEMBACA TABEL OPTIMAL
HiFi-1 = 21,12, HiFi-2=31,68 dan Z = 61,44 artinya untuk mendapatkan keuntungan maksimum sebesar 61,44, maka perusahaan sebaiknya memproduksi HiFi-1 = 21,12 dan HiFi-2=31,68.
Status sumber daya :
Sumber daya pertama dilihat dari keberadaan variable basis awal dari setiap fungsi kendala pada table optimal. Dalam kasus di atas, untuk fungsi kendala pertama periksa keberadaan S1 pada variable basis table optimal. Periksa keberadaan S2 pada variable basis table optimal untuk fungsi kendala kedua. Periksa keberadaan S3 pada variable basis table optimal untuk fungsi kendala ketiga.
S3 = 105,6. Sumber daya ini disebut berlebih (abundant)
S2 = S1 = 0. Kedua sumber daya ini disebut habis terpakai (scarce).
Harga bayangan :
Harga bayangan dilihat dari koefisien variable slack atau surplus pada baris fungsi tujuan.
Koefisien S1 pada baris fungsi tujuan table optimal = 0, dengan demikian harga bayangan sumber daya pertama adalah 0.
Koefisien S2 pada baris fungsi tujuan table optimal = 1/5, dengan demikian harga bayangan sumber daya kedua adalah 1/5
Koefisien S3 pada baris fungsi tujuan table optimal = 0, dengan demikian harga bayangan sumber daya kedua adalah 0.
Sumber :
Siringoringo, Hotniar. Seri Teknik Riset Operasional. Pemrograman Linear. Penerbit Graha Ilmu. Yogyakarta. 2005.
Jawaban dengan 5 soal
1. tujuan memaximalkan pendapatan (Z)
Sumberdaya yang diketahui :
• 1 kursi = 30 menit (0,5)
• Meja = 2 jam
• SDM = 4 orang
Pangsa pasar = 1 meja max 4
Harga jual 1 kursi = 1,2 juta
Haruga jual 1 meja = 500 ribu
Model matematika
Max Z = 1,2 x1 + 0,5 x2
0,5 x1+ 2 x2 < 32
1 x1+ 1 x2 = 1/4
X1, X2 > 0
2. fungsi tujuan
Memin Z = 2000x1 + 5500x2
Kendala
X1+x2 =90
0,001 x1 + 0,002 x2 < 0,9
0,09 x1 + 0,6 x2 < 27
0,02 x1 + 0,06 x2 < 4,5
X1, x2 > 0
3. tujuan memax produksi
Waktu yang dibutuhkan untuk perawatan untuk masing-masing=
10% x 8 jam = 48 menit
14% x 8 jam = 67,2 menit
12% x 8 jam = 57,6 menit
Operasi matematika Z = x1 +x2
6x1 + 4x2 < 432 (8 x 60) – 48
5x1 + 5x2 < 412,8 (8 x 60) – 67,2
4x1 + 6x2 < 422,4 (8 x 60) – 57,6
4. waktu max 10 jam = 600 menit
Max Z = 2x1 + 3x2
Kendala
10x1 + 5x2 < 600
6x1 + 20x2 < 600
8x1 + 15x2 < 600
5. max Z = 50x1 + 20x2 + 25x3
Kendala
9x1 + 3x2 + 5x3 < 500
5x1 + 4x2 + 0x3 < 350
3x1 + 0x2 + 2x3 < 150
X1, x2 > 0
DSS adalah salah satu sistem penunjang keputusan yang dibuat untuk membantu perusahaan dalam mengoptimalisasikan.
Tujuan memaximalkan Z = 50 x1 + 40 x2
Kendala-kendala:
0,4x1 + 0,5x2 < 326
0,5x1 + 0,3x2 < 354
0,05x1 + 0,1 < 62
Bentuk bakunya :
Z = 50x1 + 40x2 + 0.s1 +0.s2 + 0.s3
0,4x1 + 0,4x2 + s1 = 326
0,5x1 + 0,3x2 + s2 = 354
0,05x1 + 0,1 + s3 = 62
Tabel simpleks
VD Z X1 X2 S1 S2 S3 NK
Z 1 -50 -40 0 0 0 0
S1 0 0,4 0,5 1 0 0 326
S2
0 0,5 0,3 0 1 0 354
S3 0 0,05 0,1 0 0 1 62
Kolom kerja adalah nilai negatif terbesar
Baris pivot adalah perbandingan nilai solusi dengan nilai pada kolom kerja
S1 326 : 0,4 = 815
S2 354 : 0,5 = 708
S3 62 : 0,05 = 1240
Rubah semua nilai pada baris Pivot dengan cara membagi nilai lama bari pivot dengan baris pivot (0,5)
Maka tabel simpleks alan berubah
VD Z X1 X2 S1 S2 S3 NK
Z 1 -50 -40 0 0 0 0
S1 0 0,4 0,5 1 0 0 326
CB 0 1 0,6 0 2 0 708
S3 0 0,05 0,1 0 0 1 62
Lakukan interasi pertama
Rubah nilai dengan nilai baru dengan cara:
Nilai baru = nilai lama – (nilai kolom kerja X nilai baru baris pivot)
Tabel simpleks
VD Z CB X2 S1 S2 S3 NK
Z 1 0 -10 0 100 0 35400
S1 0 0,4 0,26 1 -0,8 0 32,8
CB 0 1 0,6 0 2 0 708
S3 0 0 0,07 0 -0,1 1 26,6
Karena masih terdapat nilai negatif pada baris CB dan PR, lakukan interasi kedua
Lakukan hal yang sama, yaitu tentukan dulu kolom kerja sampai menghitung nilai baru.
Tabel simpleks
VD Z CB PR S1 S2 S3 NK
Z 1 0 0 38,46 69,23 0 37046,15
PR 0 0 1 3,84 -3,07 0 164,61
CB 0 1 0 -2,30 3,84 0 609,23
S3 0 0 0 -0,26 0,11 1 15,07
Pada tabel diatas sudah tidak terdapat nilai negatif pada baris CB dan PR, maka didapatkan nilai :
max CB = 609,23
max PR = 164,61
koding untuk membuat program diatas :
Private Sub Command1_Click()
HASIL1.Text = NK2.Text
HASIL2.Text = NK3.Text
End Sub
Private Sub DISS_Click()
If Int(X1A) < Int(X2A) Then
kk1 = X1A
KK2 = X1B
KK3 = X1C
KK4 = X1D
Label21.Caption = "CB"
VGANTI_BP = "CB"
Else
kk1 = X2A
KK2 = X2B
KK3 = X2C
KK4 = X2D
Label22.Caption = "PR"
VGANTI_BP = "PR"
End If
If KK2 = 0 Then
A = 0
Else
A = NK2 / KK2
If KK3 = 0 Then
B = 0
Else
B = NK3 / KK3
If KK4 = 0 Then
C = 0
Else
C = NK4 / KK4
End If
End If
End If
'blok yang kemungkinan dimulai'
'If a < b And b < c And a > c Then'
'tak mungkin'
If A < B And B < C And A < C Then
x = A
F = KK2
P = Z2 / F
Q = X1B / F
R = X2B / F
S = S1B / F
T = S2B / F
U = S3B / F
V = NK2 / F
Z1.Text = Z1 - (kk1 * P)
X1A.Text = X1A - (kk1 * Q)
X2A.Text = X2A - (kk1 * R)
S1A.Text = S1A - (kk1 * S)
S2A.Text = S2A - (kk1 * T)
S3A.Text = S3A - (kk1 * U)
NK1.Text = NK1 - (kk1 * V)
Z3.Text = Z1 - (KK3 * P)
X1C.Text = X1C - (KK3 * Q)
X2C.Text = X2C - (KK3 * R)
S1C.Text = S1C - (KK3 * S)
S2C.Text = S2C - (KK3 * T)
S3C.Text = S3C - (KK3 * U)
NK3.Text = NK3 - (KK3 * V)
Z4.Text = Z4 - (KK4 * P)
X1D.Text = X1D - (KK4 * Q)
X2D.Text = X2D - (KK4 * R)
S1D.Text = S1D - (KK4 * S)
S2D.Text = S2D - (KK4 * T)
S3D.Text = S3D - (KK4 * U)
NK4.Text = NK4 - (KK4 * V)
Z2.Text = P
X1B.Text = Q
X2B.Text = R
S1B.Text = S
S2B.Text = T
S3B.Text = U
NK2.Text = V
Label17.Caption = VGANTI_BP
'If a < b And b < c And a = c Then'
'tak mungkin'
ElseIf A < B And B > C And A > C Then
x = C
F = KK4
P = Z4 / F
Q = X1D / F
R = X2D / F
S = S1D / F
T = S2D / F
U = S3D / F
V = NK4 / F
Z1.Text = Z1 - (kk1 * P)
X1A.Text = X1A - (kk1 * Q)
X2A.Text = X2A - (kk1 * R)
S1A.Text = S1A - (kk1 * S)
S2A.Text = S2A - (kk1 * T)
S3A.Text = S3A - (kk1 * U)
NK1.Text = NK1 - (kk1 * V)
Z2.Text = Z2 - (KK2 * P)
X1B.Text = X1B - (KK2 * Q)
X2B.Text = X2B - (KK2 * R)
S1B.Text = S1B - (KK2 * S)
S2B.Text = S2B - (KK2 * T)
S3B.Text = S3B - (KK2 * U)
NK2.Text = NK2 - (KK2 * V)
Z3.Text = Z1 - (KK3 * P)
X1C.Text = X1C - (KK3 * Q)
X2C.Text = X2C - (KK3 * R)
S1C.Text = S1C - (KK3 * S)
S2C.Text = S2C - (KK3 * T)
S3C.Text = S3C - (KK3 * U)
NK3.Text = NK3 - (KK3 * V)
Z4.Text = P
X1D.Text = Q
X2D.Text = R
S1D.Text = S
S2D.Text = T
S3D.Text = U
NK4.Text = V
Label19.Caption = "CB"
ElseIf A < B And B > C And A < C Then
x = A
F = KK2
P = Z2 / F
Q = X1B / F
R = X2B / F
S = S1B / F
T = S2B / F
U = S3B / F
V = NK2 / F
Z1.Text = Z1 - (kk1 * P)
X1A.Text = X1A - (kk1 * Q)
X2A.Text = X2A - (kk1 * R)
S1A.Text = S1A - (kk1 * S)
S2A.Text = S2A - (kk1 * T)
S3A.Text = S3A - (kk1 * U)
NK1.Text = NK1 - (kk1 * V)
Z3.Text = Z1 - (KK3 * P)
X1C.Text = X1C - (KK3 * Q)
X2C.Text = X2C - (KK3 * R)
S1C.Text = S1C - (KK3 * S)
S2C.Text = S2C - (KK3 * T)
S3C.Text = S3C - (KK3 * U)
NK3.Text = NK3 - (KK3 * V)
Z4.Text = Z4 - (KK4 * P)
X1D.Text = X1D - (KK4 * Q)
X2D.Text = X2D - (KK4 * R)
S1D.Text = S1D - (KK4 * S)
S2D.Text = S2D - (KK4 * T)
S3D.Text = S3D - (KK4 * U)
NK4.Text = NK4 - (KK4 * V)
Z2.Text = P
X1B.Text = Q
X2B.Text = R
S1B.Text = S
S2B.Text = T
S3B.Text = U
NK2.Text = V
Label17.Caption = VGANTI_BP
'ElseIf a < B And B > c And a = c Then'
'tak mungkin'
'ElseIf a < b And b = c And a > c Then
'tak mungkin'
ElseIf A < B And B = C And A < C Then
x = A
F = KK2
P = Z2 / F
Q = X1B / F
R = X2B / F
S = S1B / F
T = S2B / F
U = S3B / F
V = NK2 / F
Z1.Text = Z1 - (kk1 * P)
X1A.Text = X1A - (kk1 * Q)
X2A.Text = X2A - (kk1 * R)
S1A.Text = S1A - (kk1 * S)
S2A.Text = S2A - (kk1 * T)
S3A.Text = S3A - (kk1 * U)
NK1.Text = NK1 - (kk1 * V)
Z3.Text = Z1 - (KK3 * P)
X1C.Text = X1C - (KK3 * Q)
X2C.Text = X2C - (KK3 * R)
S1C.Text = S1C - (KK3 * S)
S2C.Text = S2C - (KK3 * T)
S3C.Text = S3C - (KK3 * U)
NK3.Text = NK3 - (KK3 * V)
Z4.Text = Z4 - (KK4 * P)
X1D.Text = X1D - (KK4 * Q)
X2D.Text = X2D - (KK4 * R)
S1D.Text = S1D - (KK4 * S)
S2D.Text = S2D - (KK4 * T)
S3D.Text = S3D - (KK4 * U)
NK4.Text = NK4 - (KK4 * V)
Z2.Text = P
X1B.Text = Q
X2B.Text = R
S1B.Text = S
S2B.Text = T
S3B.Text = U
NK2.Text = V
Label17.Caption = VGANTI_BP
'ElseIf a < b And b = c And a = c Then
'tak mungkin'
ElseIf A > B And B < C And A > C Then
x = B
F = KK3
P = Z3 / F
Q = X1C / F
R = X2C / F
S = S1C / F
T = S2C / F
U = S3C / F
V = NK3 / F
Z1.Text = Z1 - (kk1 * P)
X1A.Text = X1A - (kk1 * Q)
X2A.Text = X2A - (kk1 * R)
S1A.Text = S1A - (kk1 * S)
S2A.Text = S2A - (kk1 * T)
S3A.Text = S3A - (kk1 * U)
NK1.Text = NK1 - (kk1 * V)
Z2.Text = Z2 - (KK2 * P)
X1B.Text = X1B - (KK2 * Q)
X2B.Text = X2B - (KK2 * R)
S1B.Text = S1B - (KK2 * S)
S2B.Text = S2B - (KK2 * T)
S3B.Text = S3B - (KK2 * U)
NK2.Text = NK2 - (KK2 * V)
Z4.Text = Z4 - (KK4 * P)
X1D.Text = X1D - (KK4 * Q)
X2D.Text = X2D - (KK4 * R)
S1D.Text = S1D - (KK4 * S)
S2D.Text = S2D - (KK4 * T)
S3D.Text = S3D - (KK4 * U)
NK4.Text = NK4 - (KK4 * V)
Z3.Text = P
X1C.Text = Q
X2C.Text = R
S1C.Text = S
S2C.Text = T
S3C.Text = U
NK3.Text = V
Label18.Caption = VGANTI_BP
ElseIf A > B And B < C And A < C Then
x = B
F = KK3
P = Z3 / F
Q = X1C / F
R = X2C / F
S = S1C / F
T = S2C / F
U = S3C / F
V = NK3 / F
Z1.Text = Z1 - (kk1 * P)
X1A.Text = X1A - (kk1 * Q)
X2A.Text = X2A - (kk1 * R)
S1A.Text = S1A - (kk1 * S)
S2A.Text = S2A - (kk1 * T)
S3A.Text = S3A - (kk1 * U)
NK1.Text = NK1 - (kk1 * V)
Z2.Text = Z2 - (KK2 * P)
X1B.Text = X1B - (KK2 * Q)
X2B.Text = X2B - (KK2 * R)
S1B.Text = S1B - (KK2 * S)
S2B.Text = S2B - (KK2 * T)
S3B.Text = S3B - (KK2 * U)
NK2.Text = NK2 - (KK2 * V)
Z4.Text = Z4 - (KK4 * P)
X1D.Text = X1D - (KK4 * Q)
X2D.Text = X2D - (KK4 * R)
S1D.Text = S1D - (KK4 * S)
S2D.Text = S2D - (KK4 * T)
S3D.Text = S3D - (KK4 * U)
NK4.Text = NK4 - (KK4 * V)
Z3.Text = P
X1C.Text = Q
X2C.Text = R
S1C.Text = S
S2C.Text = T
S3C.Text = U
NK3.Text = V
Label18.Caption = VGANTI_BP
ElseIf A > B And B < C And A = C Then
x = B
F = KK3
P = Z3 / F
Q = X1C / F
R = X2C / F
S = S1C / F
T = S2C / F
U = S3C / F
V = NK3 / F
Z1.Text = Z1 - (kk1 * P)
X1A.Text = X1A - (kk1 * Q)
X2A.Text = X2A - (kk1 * R)
S1A.Text = S1A - (kk1 * S)
S2A.Text = S2A - (kk1 * T)
S3A.Text = S3A - (kk1 * U)
NK1.Text = NK1 - (kk1 * V)
Z2.Text = Z2 - (KK2 * P)
X1B.Text = X1B - (KK2 * Q)
X2B.Text = X2B - (KK2 * R)
S1B.Text = S1B - (KK2 * S)
S2B.Text = S2B - (KK2 * T)
S3B.Text = S3B - (KK2 * U)
NK2.Text = NK2 - (KK2 * V)
Z4.Text = Z4 - (KK4 * P)
X1D.Text = X1D - (KK4 * Q)
X2D.Text = X2D - (KK4 * R)
S1D.Text = S1D - (KK4 * S)
S2D.Text = S2D - (KK4 * T)
S3D.Text = S3D - (KK4 * U)
NK4.Text = NK4 - (KK4 * V)
Z3.Text = P
X1C.Text = Q
X2C.Text = R
S1C.Text = S
S2C.Text = T
S3C.Text = U
NK3.Text = V
Label18.Caption = ²
ElseIf A > B And B > C And A > C Then
x = C
F = KK4
P = Z4 / F
Q = X1D / F
R = X2D / F
S = S1D / F
T = S2D / F
U = S3D / F
V = NK4 / F
Z1.Text = Z1 - (kk1 * P)
X1A.Text = X1A - (kk1 * Q)
X2A.Text = X2A - (kk1 * R)
S1A.Text = S1A - (kk1 * S)
S2A.Text = S2A - (kk1 * T)
S3A.Text = S3A - (kk1 * U)
NK1.Text = NK1 - (kk1 * V)
Z2.Text = Z2 - (KK2 * P)
X1B.Text = X1B - (KK2 * Q)
X2B.Text = X2B - (KK2 * R)
S1B.Text = S1B - (KK2 * S)
S2B.Text = S2B - (KK2 * T)
S3B.Text = S3B - (KK2 * U)
NK2.Text = NK2 - (KK2 * V)
Z3.Text = Z1 - (KK3 * P)
X1C.Text = X1C - (KK3 * Q)
X2C.Text = X2C - (KK3 * R)
S1C.Text = S1C - (KK3 * S)
S2C.Text = S2C - (KK3 * T)
S3C.Text = S3C - (KK3 * U)
NK3.Text = NK3 - (KK3 * V)
Z4.Text = P
X1D.Text = Q
X2D.Text = R
S1D.Text = S
S2D.Text = T
S3D.Text = U
NK4.Text = V
Label19.Caption = VGANTI_BP
'ElseIf a > b And b > c And a < c Then
'tak mungkin'
'/ElseIf a > b And b > c And a = c Then
'tak mungkin'
'ElseIf a > b And b = c And a > c Then
'tak mungkin'
'ElseIf a > b And b = c And a < c Then
'tak mungkin'
'ElseIf a > b And b = c And a = c Then
'tak mungkin'
'ElseIf a = b And b < c And a > c Then
'tak mungkin'
'ElseIf a = b And b < c And a < c Then
'tak mungkin'
'ElseIf a = b And b < c And a = c Then
'tak mungkin'
Else
If A = B And B > C And A > C Then
x = C
F = KK4
P = Z4 / F
Q = X1D / F
R = X2D / F
S = S1D / F
T = S2D / F
U = S3D / F
V = NK4 / F
Z1.Text = Z1 - (kk1 * P)
X1A.Text = X1A - (kk1 * Q)
X2A.Text = X2A - (kk1 * R)
S1A.Text = S1A - (kk1 * S)
S2A.Text = S2A - (kk1 * T)
S3A.Text = S3A - (kk1 * U)
NK1.Text = NKZ2.Text = Z2 - (KK2 * P)
X1B.Text = X1B - (KK2 * Q)
X2B.Text = X2B - (KK2 * R)
S1B.Text = S1B - (KK2 * S)
S2B.Text = S2B - (KK2 * T)
S3B.Text = S3B - (KK2 * U)
NK2.Text = NK2 - (KK2 * V)
Z3.Text = Z1 - (KK3 * P)
X1C.Text = X1C - (KK3 * Q)
X2C.Text = X2C - (KK3 * R)
S1C.Text = S1C - (KK3 * S)
S2C.Text = S2C - (KK3 * T)
S3C.Text = S3C - (KK3 * U)
NK3.Text = NK3 - (KK3 * V)
Z4.Text = P
X1D.Text = Q
X2D.Text = R
S1D.Text = S
S2D.Text = T
S3D.Text = U
NK4.Text = V
Label19.Caption = VGANTI_BP
'ElseIf a = b And b > c And a < c Then
'tak mungkin '
'ElseIf a = b And b > c And a = c Then
'tak mungkin'
'ElseIf a = b And b = c And a > c Then
'tak mungkin'
'ElseIf a = b And b = c And a < c Then
'tak mungkin'
'ElseIf a = b And b = c And a = c Then
'tak mungkin'
'end blok yang benar
If Label17.Caption = "CB" Then
Text8.Text = NK2
ElseIf Label18.Caption = "CB" Then
Text8.Text = NK3
ElseIf Label19.Caption = "CB" Then
Text8.Text = NK4
ElseIf Label17.Caption = "PR" Then
Text9.Text = NK2
ElseIf Label18.Caption = "PR" Then
Text9.Text = NK3
ElseIf Label19.Caption = "PR" Then
Text9.Text = NK4
End If
End If
End If
End Sub
Private Sub HSL_Click()
Z1.Text = 1
Z2.Text = 0
Z3.Text = 0
Z4.Text = 0
X1A.Text = (CB * -1)
X1B.Text = CB1
X1C.Text = CB2
X1D.Text = CB3
X2A.Text = (PR * -1)
X2B.Text = PR1
X2C.Text = PR2
X2D.Text = PR3
S1A.Text = 0
S1B.Text = 1
S1C.Text = 0
S1D.Text = 0
S2A.Text = 0
S2B.Text = 0
S2C.Text = 1
S2D.Text = 0
S3A.Text = 0
S3B.Text = 0
S3C.Text = 0
S3D.Text = 1
NK1.Text = 0
NK2.Text = TOTAL1
NK3.Text = TOTAL2
NK4.Text = TOTAL3
End Sub
Private Sub KELUAR_Click()
Unload Me
End Sub
Private Sub ULANG_Click()
CB.Text = ""
PR.Text = ""
CB1.Text = ""
CB2.Text = ""
CB3.Text = ""
PR1.Text = ""
PR2.Text = ""
PR3.Text = ""
TOTAL1.Text = ""
TOTAL2.Text = ""
TOTAL3.Text = ""
End Sub
RUMUS MENCARI FPB (FAKTOR PERSEKUTUAN TERBESAR)
Salah satu rumus pencarian fpb adalah dengan menggunakan euclid.
Ex. :
Fpb dari 12 dan 8
12 mod 8 = 4 => fpb
8 mod 4 = 0 => stop
Jadi proses akan dilanjukan sampai hasilnya bernilai 0
Rumus euclid dapat diterapkan sebagai berikut :
Private Sub Command1_Click()
Dim a, b, c, i, x As Integer
a = angka1.Text
b = angka2.Text
If Val(a) > Val(b) Then
x = a
ElseIf Val(b) > Val(a) Then
x = b
End If
For i = 1 To x
If a Mod i = 0 And b Mod i = 0 Then
c = i
End If
Next i
angka.Text = c
End Sub
TUGAS PEMROGRMAN MATEMATIKA
RUMUS MENCARI LUAS PERSEGI PANJANG
Private Sub cmdhitung_Click()
txtluas.Text = txtpanjang.Text * txtlebar.Text
End Sub
Private Sub cmdkeluar_Click()
End
End Sub
Private Sub cmdulangi_Click()
txtpanjang.Text = ""
txtlebar.Text = ""
txtluas.Text = ""
cmdhitung.SetFocus
End Sub
untuk dapat mengerjakan saol mencari luas suatu bangun dalam pemrograman VB,kita dituntun untuk bisa mengetahui terlebih dahulu rumus luas dari
bangun yang akan kita kerjakan.
untuk itu, saya ambil contoh bangun persegi panjang. seperti kita ketahui
mencari luas persegi panjang adalah:
luas = panjang * lebar
setelah kita mengetahui rumus luas bangun tersebut, kita juga harus mampu
memasukannya dalam rumus pemrograman VB (VISUAL BASIC).
Mari kita baca bersama-sama rumus diatas. Bila terjemahkan akan berbunyi :
Luas = panjang * lebar
kemudian end berfungsi untuk mengakhiri atau keluar.
Txtpanjang.text= “ “ berarti text panjang nantinya akan dikosongkan dan begitupun lainnya
RUMUS MENGHITUNG LUAS, KELILING, PANJANG, LEBAR DENGAN OPTION BUTTON
Private Sub Command1_Click(Index As Integer)
If optluas.Value = True Then
txthasil.Text = txtpanjang.Text * txtlebar.Text
ElseIf optpanjang.Value = True Then
txthasil.Text = txtpanjang.Text / txtlebar.Text
Else
txthasil.Text = txtpanjang.Text / txtlebar.Text
End If
If optkeliling = True Then
txthasil = 2 * txtpanjang.Text + 2 * txtlebar.Text
End If
End Sub
Private Sub Command2_Click()
lblpanjang.Caption = "LUAS"
lbllebar.Caption = "LEBAR"
optluas.Value = True
txtpanjang.Text = ""
txtlebar.Text = ""
txthasil.Text = ""
End Sub
Private Sub Command3_Click()
End
End Sub
Private Sub Command3_Click()
If optkeliling.Value = True Then
lblpanjang.Caption = "PANJANG"
lbllebar.Caption = "LEBAR"
End If
End Sub
Private Sub optlebar_Click()
If optlebar.Value = True Then
lblpanjang.Caption = "LUAS"
lbllebar.Caption = "PANJANG"
End If
End Sub
Private Sub optluas_Click()
If optluas.Value = True Then
lblpanjang.Caption = "PANJANG"
lbllebar.Caption = "LEBAR"
End If
End Sub
Private Sub optpanjang_Click()
If optpanjang.Value = True Then
lblpanjang.Caption = "LUAS"
lbllebar.Caption = "LEBAR"
End If
End Sub
Seperti halnya yang lain, kita juga dituntut harus mengetahui rumus keseluruhannya. Bila di terjemahkan maka rumus diatas dapat berbunyi :
Command1
Jika option luas benar, maka hasil = panjang * lebar
Kemudian jika option panjang benar, maka hasil= panjang / lebar
Kemudian jika tidak maka komputer akan menempatkan untuk hasil optin lebar. Dan if harus diakhiri dengan end if
Jika option keliling benar maka, Keliling = 2* panjang + 2* lebar dan jang lupa akhiri lagi dengan end if
Command2
Jika tidak digunkan maka option akan aktif pada luas dan label berisi panjang dan lebar. Dan semuanya dalam keadaan kosong
Command3
Untuk mengakhiri atau keluar dari program
Jika option keliling maka, label akan berisi panjang dan lebar
Optlebar
Jika option luas di klik maka, label akan berisi luas dan panjang
Optluas
Jika option luas di klik, maka label akan berisi panjang dan lebar
Optpanjang
Jika option panjang di klik, maka label akan berisi luas dan lebar
RUMUS MENCARI BIL GANJIL / GENAP
Private Sub cmdkeluar_Click()
End
End Sub
Private Sub cmdproses_Click()
If txthasil.Text Mod 2 = 0 Then
lblangka.Caption = "GENAP"
Else
lblangka.Caption = "GANJIL"
End If
cmdulangi.Enabled = True
cmdproses.Enabled = False
End Sub
Private Sub cmdulangi_Click()
txthasil.Text = ""
lblangka.Caption = ""
txthasil.SetFocus
cmdulangi.Enabled = False
cmdproses.Enabled = True
End Sub
Rumus diatas dapat dibaca :
Cmdkeluar
End, untuk mengakhiri atau keluar dari program
Cmdproses
Jika text hasil di bagi 2 = 0, maka label angka berisi “GENAP”
jika tidak maka label angka berisi “GANJIL” jangan lupa akhiri dengan end if.
Cmdulangi.enabled = true berarti command ulangi akan aktif dan command proses akan mati
Cmdulangi
Text hasil akan kosong dan label angka juga.
Kemudian command ulangi mati dan command proses akan aktif
RUMUS MENCARI GENAP, GANJIL VARIASI
Private Sub cmdganjil_Click()
For i = 0 To 4
ganjil = bil(i) / 2 - Int(bil(i) / 2)
If ganjil <> 0 Then
bil(i).BackColor = vbGreen
txtganjil.Text = txtganjil.Text & "" & Str(bil(i))
End If
Next
End Sub
Private Sub cmdgenap_Click()
For i = 0 To 4
genap = bil(i) / 2 - Int(bil(i) / 2)
If genap = 0 Then
bil(i).BackColor = vbBlue
txtgenap.Text = txtgenap.Text & "" & Str(bil(i))
End If
Next
End Sub
Private Sub cmdkeluar_Click()
End
End Sub
Rumus diatas dapat diartikan :
cmdganjil
Untuk bilang 0 sampai 4
Jika bilangan di bagi 2 hasilnya tidak sama dengan 0, maka ganjil.
Background bilangan ke (i)= grenn (hijau)
cmdgenap
Untuk bilang 0 sampai 4
Jika bilangan di bagi 2 hasilnya 0, maka genap
Background bilangan ke (i) = blue (biru)
RUMUS MENCARI FACTORIAL (!)
Private Sub cmdfac_Click()
bil = 1
For i = 1 To txtangka.Text
bil = bil * i
Next
txthasil.Text = Str(bil)
End Sub
Private Sub cmdfin_Click()
End
End Sub
Sebelum kita membaca rumus diatas, kita harus mengerti terlebih dahulu bilangan factorial.
Ex : 5! 1*2*3*4*5 =120
4! 1*2*3*4 =24 dst......
Maka rumus diatas dapat dibaca :
cmdfac
Bilangan kita simbolkan dengan (i) berarti untuk bilangan kesatu sampai bilangan yang ditulis dalam text angka
Bilangan = 1 * bil (i)
Cmdfin
Untuk keluar atau mengakhiri suatu program.
RUMUS MENCARI BILANGAN PRIMA
Private Sub cmdkeluar_Click()
End
End Sub
Private Sub cmdproses_Click()
If txtangka.Text = 1 Then
txthasil.Text = "BUKA PRIMA"
ElseIf txtangka.Text = 2 Then
txthasil.Text = "PRIMA"
Else
For i = 2 To txtangka.Text - 1
If txtangka.Text Mod i = 0 Then
txthasil.Text = "BUKAN PRIMA"
Exit For
Else
txthasil.Text = "PRIMA"
End If
Next
End If
End Sub
Private Sub cmdulang_Click()
txtangka.Text = ""
txthasil.Text = ""
cmdproses.SetFocus
End Sub
Sebelum kita mempelajari rumus diatas. Kita perlu mengetahui apa yang dimaksud bilangan prima.
Bilangan prima adalah bilangan yang hanya bisa di bagi 1 dan di bagi dengan bilangan itu sendiri.
Ex : 2, 5, 7, 11, 13 dst....
Rumus diatas dapat diartika :
Cmdproses
Jika text angka =1 maka text hasil =”BUKAN PRIMA”
Jika text angka =2 maka text hasil =”PRIMA”
Jika bilangan ke (i) – 1 kemudian dibagi (/) bilangan ke (i)= o maka text hasil = “BUKAN PRIMA”
Jika tidak maka “PRIMA”
@ichiblogger.blogspot