SlideShare una empresa de Scribd logo
1 de 9
Algoritma Penentuan ke-n Secara Acak untuk
                   Formula Pembagi

                    SNMP Simamora, ST., MT.1

                  1. Program studi: Teknik Komputer
                     Politeknik TELKOM Bandung
         Jl. Telekomunikasi, Ters.Buah Batu, Bandung 40257
                  Email : snmpsimamora@telkom.net




                            ABSTRAK
Mekanisme pemecahan sebuah persoalan diperoleh dari pembangunan
suatu algoritma. Algoritma disusun dari sejumlah tahapan instruksi
yang dilakukan agar hasil akhir penyelesaian persoalan didapatkan
secara sistematis dan terstruktur. Dari sebuah algoritma dapat
selanjutnya dibangun aplikasi pemrograman.

Kasus yang menarik adalah saat formula yang dihadapi merupakan
fungsi pembalik dari fungsi awal. Misalkan ini ditemukan pada formula
Cparalel pada rumus mencari Kapasitor penggati pada rangkaian
serial kapasitor pada rangkaian listrik. Hal yang tersulit bagi user
adalah menentukan terminasi proses perulangan jika setiap masukan
pada blok proses dilakukan secara acak

Dalam struktur pohon logika, proses perulangan dilakukan
menggunakan for..i; dalam kasus ini, akan digunakan Bahasa
Pemrograman C++ untuk membangun program dari algoritma yang
telah disusun. Dengan alasan, bahasa ini lebih representatif
dibandingkan bahasa pemrograman yang lain
Kata kunci: algoritma, fungsi pembagi, fungsi pembalik, looping-
process.




                   Jurnal Politeknik TELKOM Bandung                1
                        Volume 1 Nomor 1 Tahun 2009
1.   PENDAHULUAN
1.1 Latar Belakang

     Pendekatan yang dilakukan dalam penyelesaian sebuah persoalan
     lebih mudah jika dilakukan terlebih dahulu penyusunan algoritma
     penyelesaian persoalannya agar solusi yang ingin dicapai lebih
     mudah didapatkan. Terlebih khususnya dalam kasus-kasus yang
     berkaitan dengan persoalan pemrograman.

     Hal mayoritas yang umum dijumpai adalah bagaimana menurunkan
     sebuah formula matematis ke dalam blok pemrograman. Hal
     menarik berikutnya adalah jika sebuah proses perulangan pada blok
     struktur logika pemrograman tahapan terminasi bergantung dari
     banyaknya input-value yang ditetapkan oleh user.

     Hal ini bisa dipecahkan dengan solusi pendekatan menggunakan
     kaidah matematika dasar. Kasus yang paling umum dijumpai adalah
     menentukan nilai Kapasitor pengganti pada C kapasitor yang
     dirangkai secara seri, dimana jumlah C kapasitor ditetapkan oleh
     user secara acak.


1.2 Batasan Masalah

     Persoalan dilakukan pembatasan pada beberapa aspek berikut ini:
      a. Uji penurunan formula hanya dilakukan pada rumus nilai
         pengganti kapasitansi untuk rangkaian Kapasitor yang dirangkai
         secara serial.
      b. Penelusuran hanya dalam batasan perhitungan matematis bukan
         mencari nilai fisis (secara fisika)
      c. Uji menggunakan bahasa pemrograman dilakukan sebagai
         implementasi algoritma yang dibuat.
      d. Tidak berorientasi kepada basis data.


1.3 Tujuan Penelitian
    a. Membangun sebuah algoritma untuk menentukan nilai
        pengganti untuk n secara acak pada formula pembagi
                    Jurnal Politeknik TELKOM Bandung                 2
                         Volume 1 Nomor 1 Tahun 2009
b.   Membangun blok pemrograman dari algoritma yang telah
          dibuat.

1.4 Manfaat Penelitian
    a. Memudahkan user jika berhadapan dengan formula pembagi
       untuk variabel-n secara acak
    b. Memudahkan user jika ingin mencari deret ke-n untuk
       sejumlah n-masukan secara acak.


2.   TEORI DASAR,                  MODEL           DESAIN,       DAN
     IDENTIFIKASI
Penelitian dilaksanakan menggunakan pendekatan Top-Down, dimana
sebuah hipotesis ditetapkan terlebih dahulu, lalu dilakukan penyelesaian
secara terstruktur ke bawah yang lebih khusus.

Alat Bantu yang digunakan adalah:
 a. Perangkat Lunakan Bahasa Pemrograman C++ menggunakan
     Turbo C++ v3.0
 b. Komputer Desktop dengan clock-rate 200MHz


2.1. Definisi Algoritma
Definisi algoritma adalah suatu urutan langkah-langkah yang disusun
secara logika dan sistematis untuk menyelesaikan suatu persoalan yang
dapat dieksekusi. Yang dimaksud dengan dapat dieksekusi di sini adalah
dapat diimplementasikan untuk dijalankan atau dilaksanakan.

Pada dasarnya algoritma tidak selalu identik dengan komputer, karena
dapat juga dijumpai pada bidang lain; namun lebih umum ditemukan
pada persoalan-persoalan matematika.



2.2. Identifikasi Persoalan
Jika ditetapkan rumus C kapasitor pengganti yang dihubungkan secara
                    Jurnal Politeknik TELKOM Bandung                  3
                         Volume 1 Nomor 1 Tahun 2009
serial adalah sebagai berikut:
Untuk C kapasitor sebanyak 3 adalah:
 1  1 1 1
   = + + ........................................................(Persamaan-1)
Cp c1 c 2 c3

maka untuk n kapasitor adalah:
 1   1 1    1    1
    = + + + ... + ....................................(Persamaan-2)
Cp n c1 c 2 c3   cn

jika diturunkan untuk mendapatkan nilai C pengganti, maka:
         c1 + c 2 + c3 + ...c n
Cp n =                          ............................................(Persamaan-3)
            c1 .c 2 .c3 ....c n


2.3. Klasifikasi struktur kontrol berdasarkan pohon
     pencabangan
     2.3.1. Struktur for repetition
               Perulangan for merupakan umum yang digunakan bila
               menyangkut proses looping, seperti pemanggilan kembali
               sejumlah indeks dalam suatu array.
               Sintaks untuk struktur logika for dituliskan sebagai
               berikut:
                   for (expr1; expr2; expr3) statement
               Pertama-tama ekspresi ke-1 (expr1) dievaluasi
               (dieksekusi) sekali langsung saat perulangan mulai
               dilakukan. Selanjutnya di permulaan di iterasi selanjutnya,
               expr2 dievaluasi. Bila evaluasi memberi nilai TRUE,
               looping berlanjut dan statement bercabang dieksekusi. Jika
               evaluasi memberi nilai FALSE, eksekusi looping selesai.
               Di akhir iterasi, expr3 dievaluasi (dieksekusi).
               Misalkan:
               //Looping.cpp
               #include<iostream.h>
               void main()
               {
                       Jurnal Politeknik TELKOM Bandung                                4
                            Volume 1 Nomor 1 Tahun 2009
for(int i=0;i<7;i++) {
           cout << "No-" << i+1 << endl;
          }
          cout << "Proses perulangan selesai..";
         }




           Gambar 1. Skema Struktur for repetition




3. HASIL DAN DISKUSI

  3.1. Penyelesaian Persoalan
      Dari Persamaan-1 disebutkan:
       1  1 1 1
         = + + .
      Cp c1 c 2 c3
      maka:
       1   cc          cc         cc
         = 2 3 + 1 3 + 1 2
      Cp c1c 2 c3 c1c 2 c3 c1c 2 c3
           (c 2 c3 + c1c3 + c1c 2 )
         =                          .............................Persamaan-4
                   (c1c 2 c3 )

                 Jurnal Politeknik TELKOM Bandung                         5
                      Volume 1 Nomor 1 Tahun 2009
jika C1=c2*c3, dan
     C2=c1*c3, dan
     C3=c1*c2, maka
 1 (C1 + C 2 + C 3 )
   =                 .......................................Persamaan-5
Cp     c1c 2 c3

Selanjutnya, dapat diturunkan kembali untuk 3 kapasitor
adalah sebagai berikut:
                      1
C1 = c1 ∗ c 2 ∗ c3 ∗
                      c1
                       1
C 2 = c1 ∗ c 2 ∗ c3 ∗
                      c2
                       1
C 3 = c1 ∗ c 2 ∗ c3 ∗
                      c3
Sedangkan untuk 4 kapasitor, didapatkan:
                            1
C1 = c1 ∗ c 2 ∗ c3 ∗ c 4 ∗
                            c1
                             1
C 2 = c1 ∗ c 2 ∗ c3 ∗ c 4 ∗
                            c2
                             1
C 3 = c1 ∗ c 2 ∗ c3 ∗ c 4 ∗
                            c3
                             1
C 4 = c1 ∗ c 2 ∗ c3 ∗ c 4 ∗
                            c4

Berdasarkan turunan rumus ini, maka dapat dicari n kapasitor;
untuk setiap kapasitor ke-i, maka:
                                    1
C i = c1 ∗ c 2 ∗ c3 ∗ ... ∗ c n ∗      .......................Persamaan-6
                                    ci


           Jurnal Politeknik TELKOM Bandung                                 6
                Volume 1 Nomor 1 Tahun 2009
3.2. Implementasi dalam Algoritma Penentuan ke-n
     Secara Acak untuk Formula Pembagi
   Untuk c sebagai nilai kapasitor, cTot sebagai nilai kapasitor
   pengganti, dan tanya sebagai n kapasitor sebarang, maka:
   set cTot←1
   set temp←0
      for(set jinisialisasi s.d jtetapan) {
          set awal←1
          cTot*=c[j]
               for(set iinisialisasi s.d itetapan) {
                  awal*=c[i]
               }
      awal/=c[j];
      A[j]=a;
      temp +=A[j];
      }
   cTot/=temp


3.3. Blok Pemrograman dalam Bahasa Pemrograman
     C++
   //cserial.cpp
   #include <iostream.h>
   void main()
   {
    int j,i,tanya;
    float a,h,A[100],cTot,c[100];
    cout << "Berapa kapasitor?: ";
    cin >> tanya;
    cout << "nSatuan kapasitor dalam micro-Farad.";
   cout << endl;
    for(i=0;i<tanya;i++) {
     cout << "Masukkan nilai C-" << i+1 << ": ";
     cin >> c[i];
    }

    cTot=1;
    h=0;
              Jurnal Politeknik TELKOM Bandung                7
                   Volume 1 Nomor 1 Tahun 2009
for(j=0;j<tanya;j++) {
         a=1;
         cTot*=c[j];
          for(i=0;i<tanya;i++) {
           a*=c[i];
          }
          a/=c[j];
          A[j]=a;
          h+=A[j];
         }
          cTot/=h;
          cout << "nCpengganti = " << cTot << " micro-
        Farad.";
        }


                         Tabel 1. Hasil simulasi


          Σ kapasitor      1µF            4µF         12µF
              5            0.2            0.8         2.4
              8           0.125           0.5         1.5
              25           0.04           0.16        0.48




4. KESIMPULAN
Dari hasil penelitian dapat ditarik kesimpulan sebagai berikut:
a. Untuk mendapatkan nilai pengganti n pada formula pembagi tak
    berhingga, dapat diselesaikan dengan cara setiap variabel ke-i
    dikalikan dengan pembagi ke-i dari variabel bersangkutan.
b. Proses perulangan diterminasi pada blok algoritma:
               awal*=c[i]
c. Larik digunakan sebagai penampung dari sejumlah kapasitor yang
    ditetapkan oleh user.
d. Agar tidak memboroskan memori, isi larik cukup di-set sebanyak
    DEC100.



                   Jurnal Politeknik TELKOM Bandung             8
                        Volume 1 Nomor 1 Tahun 2009
5. DAFTAR PUSTAKA

[1]. Goodrich, Michael T., Tamassia, R., Mount, D.M., 2000, “Data
     Structures and Algorithms in C++”, tersedia pada
     http://cpp.datastructures.net/textbook/index.html.physicsclassroom.
     com/Class/ light/lighttoc.html, diakses pada tanggal 10 Juli 2006.
[2]. Simamora, S.N.M.P, 2006, “Diktat Kuliah KOM366 Algoritma
     dan Pemrograman (4 sks)”, Jurusan Ilmu Komputer, Fak.MIPA,
     Univ. Advent Indonesia, Bandung.
[3]. Simamora, S.N.M.P, 2002, “Diktat Kuliah SK303 Dasar Komputer
     dan Pemrograman (2 sks)”, Departemen Sistem Komputer,
     Fak.Teknik, ITHB, Bandung.




                    Jurnal Politeknik TELKOM Bandung                  9
                         Volume 1 Nomor 1 Tahun 2009

Más contenido relacionado

La actualidad más candente

Pembahasan ujian teori pemrograman pascal bagian 1
Pembahasan ujian teori pemrograman pascal bagian 1Pembahasan ujian teori pemrograman pascal bagian 1
Pembahasan ujian teori pemrograman pascal bagian 1Damun Setiaji
 
Materi 3&4 prosedur
Materi 3&4   prosedurMateri 3&4   prosedur
Materi 3&4 prosedurAlfa Felle
 
Penggunaan if dan teknik dasar bagian 2
Penggunaan if dan teknik dasar bagian 2Penggunaan if dan teknik dasar bagian 2
Penggunaan if dan teknik dasar bagian 2Fazar Ikhwan Guntara
 
Soal Pascal OSN Komputer
Soal Pascal OSN KomputerSoal Pascal OSN Komputer
Soal Pascal OSN KomputerLabieb Maududi
 
Penggunaan if dan teknik dasar bagian 1
Penggunaan if dan teknik dasar bagian 1Penggunaan if dan teknik dasar bagian 1
Penggunaan if dan teknik dasar bagian 1Fazar Ikhwan Guntara
 
Ok mater im12_pdpa1112
Ok mater im12_pdpa1112Ok mater im12_pdpa1112
Ok mater im12_pdpa1112Eric Effendi
 
Penggunaan if dan teknik dasar bagian 3
Penggunaan if dan teknik dasar bagian 3Penggunaan if dan teknik dasar bagian 3
Penggunaan if dan teknik dasar bagian 3Fazar Ikhwan Guntara
 
Algoritma dan pemograman
Algoritma dan pemogramanAlgoritma dan pemograman
Algoritma dan pemogramanSyahran Mohamed
 
Algoritma dan pengetahuan terkait (menghitung, konversi, dll)
Algoritma dan pengetahuan terkait (menghitung, konversi, dll) Algoritma dan pengetahuan terkait (menghitung, konversi, dll)
Algoritma dan pengetahuan terkait (menghitung, konversi, dll) Fazar Ikhwan Guntara
 
Pascal 4-aturan-penulisan-pascal
Pascal 4-aturan-penulisan-pascalPascal 4-aturan-penulisan-pascal
Pascal 4-aturan-penulisan-pascaladealfarisi
 
Matematika Diskrit - 11 kompleksitas algoritma - 02
Matematika Diskrit - 11 kompleksitas algoritma - 02Matematika Diskrit - 11 kompleksitas algoritma - 02
Matematika Diskrit - 11 kompleksitas algoritma - 02KuliahKita
 

La actualidad más candente (20)

modul algoritma Bab 2
modul algoritma Bab 2modul algoritma Bab 2
modul algoritma Bab 2
 
Kompilasi13 ka p (1)
Kompilasi13 ka p (1)Kompilasi13 ka p (1)
Kompilasi13 ka p (1)
 
Dasar c++ input, proses, output
Dasar c++ input, proses, output Dasar c++ input, proses, output
Dasar c++ input, proses, output
 
Teknik pencarian heuristik
Teknik pencarian heuristikTeknik pencarian heuristik
Teknik pencarian heuristik
 
Pembahasan ujian teori pemrograman pascal bagian 1
Pembahasan ujian teori pemrograman pascal bagian 1Pembahasan ujian teori pemrograman pascal bagian 1
Pembahasan ujian teori pemrograman pascal bagian 1
 
Job 2
Job 2Job 2
Job 2
 
Materi 3&4 prosedur
Materi 3&4   prosedurMateri 3&4   prosedur
Materi 3&4 prosedur
 
Tistrukdat9
Tistrukdat9Tistrukdat9
Tistrukdat9
 
Penggunaan if dan teknik dasar bagian 2
Penggunaan if dan teknik dasar bagian 2Penggunaan if dan teknik dasar bagian 2
Penggunaan if dan teknik dasar bagian 2
 
Soal Pascal OSN Komputer
Soal Pascal OSN KomputerSoal Pascal OSN Komputer
Soal Pascal OSN Komputer
 
Soal dan bahasan Pascal
Soal dan bahasan PascalSoal dan bahasan Pascal
Soal dan bahasan Pascal
 
Pengenalan c++ bagian 1
Pengenalan c++ bagian 1Pengenalan c++ bagian 1
Pengenalan c++ bagian 1
 
Penggunaan if dan teknik dasar bagian 1
Penggunaan if dan teknik dasar bagian 1Penggunaan if dan teknik dasar bagian 1
Penggunaan if dan teknik dasar bagian 1
 
Ok mater im12_pdpa1112
Ok mater im12_pdpa1112Ok mater im12_pdpa1112
Ok mater im12_pdpa1112
 
Penggunaan if dan teknik dasar bagian 3
Penggunaan if dan teknik dasar bagian 3Penggunaan if dan teknik dasar bagian 3
Penggunaan if dan teknik dasar bagian 3
 
Algoritma dan pemograman
Algoritma dan pemogramanAlgoritma dan pemograman
Algoritma dan pemograman
 
Matlab 8
Matlab 8Matlab 8
Matlab 8
 
Algoritma dan pengetahuan terkait (menghitung, konversi, dll)
Algoritma dan pengetahuan terkait (menghitung, konversi, dll) Algoritma dan pengetahuan terkait (menghitung, konversi, dll)
Algoritma dan pengetahuan terkait (menghitung, konversi, dll)
 
Pascal 4-aturan-penulisan-pascal
Pascal 4-aturan-penulisan-pascalPascal 4-aturan-penulisan-pascal
Pascal 4-aturan-penulisan-pascal
 
Matematika Diskrit - 11 kompleksitas algoritma - 02
Matematika Diskrit - 11 kompleksitas algoritma - 02Matematika Diskrit - 11 kompleksitas algoritma - 02
Matematika Diskrit - 11 kompleksitas algoritma - 02
 

Destacado

Committment to graduate presentation[1]
Committment to graduate presentation[1]Committment to graduate presentation[1]
Committment to graduate presentation[1]lahill16
 
Prácticas del módulo iii de educación y sociedad
Prácticas del módulo iii de educación y sociedadPrácticas del módulo iii de educación y sociedad
Prácticas del módulo iii de educación y sociedadNuria_1990
 
projects on digital image processing
projects on digital image processingprojects on digital image processing
projects on digital image processingE2MATRIX
 
DW Going Away PP
DW Going Away PPDW Going Away PP
DW Going Away PPcwoosh
 
English corporate sales sep2012
English corporate sales sep2012English corporate sales sep2012
English corporate sales sep2012Bruno Desfrancais
 
AIESEC CQU 2014.9 MM Camp Output,Big AIESEC by杨璐优katie
AIESEC CQU 2014.9 MM Camp Output,Big AIESEC by杨璐优katieAIESEC CQU 2014.9 MM Camp Output,Big AIESEC by杨璐优katie
AIESEC CQU 2014.9 MM Camp Output,Big AIESEC by杨璐优katieIris1874
 
Incentivar el consumo-sandra martinez escobar
Incentivar el consumo-sandra martinez escobarIncentivar el consumo-sandra martinez escobar
Incentivar el consumo-sandra martinez escobarsan231093
 
Bienvenidos a mi blog
Bienvenidos a mi blogBienvenidos a mi blog
Bienvenidos a mi blogangeles61
 
Отчет о расходовании фондом денежных средств и об использовании иного имущест...
Отчет о расходовании фондом денежных средств и об использовании иного имущест...Отчет о расходовании фондом денежных средств и об использовании иного имущест...
Отчет о расходовании фондом денежных средств и об использовании иного имущест...Обыкновенное чудо (Natural Wonder)
 
Discover JAPAN at Orchard Road 2012
Discover JAPAN at Orchard Road 2012Discover JAPAN at Orchard Road 2012
Discover JAPAN at Orchard Road 2012yorihiko katou
 
Challenge vdn 300913_masculins
Challenge vdn 300913_masculinsChallenge vdn 300913_masculins
Challenge vdn 300913_masculinsVal Binbin
 
4 группа передачи
4 группа передачи4 группа передачи
4 группа передачиmetodkopilka
 
Tsahim sudalgaa
Tsahim sudalgaaTsahim sudalgaa
Tsahim sudalgaad_nasaa79
 

Destacado (18)

Committment to graduate presentation[1]
Committment to graduate presentation[1]Committment to graduate presentation[1]
Committment to graduate presentation[1]
 
Prácticas del módulo iii de educación y sociedad
Prácticas del módulo iii de educación y sociedadPrácticas del módulo iii de educación y sociedad
Prácticas del módulo iii de educación y sociedad
 
Chu De 2
Chu De 2Chu De 2
Chu De 2
 
projects on digital image processing
projects on digital image processingprojects on digital image processing
projects on digital image processing
 
11
1111
11
 
Evidencias
EvidenciasEvidencias
Evidencias
 
DW Going Away PP
DW Going Away PPDW Going Away PP
DW Going Away PP
 
Account nirmala-04-04-2012
Account nirmala-04-04-2012Account nirmala-04-04-2012
Account nirmala-04-04-2012
 
English corporate sales sep2012
English corporate sales sep2012English corporate sales sep2012
English corporate sales sep2012
 
AIESEC CQU 2014.9 MM Camp Output,Big AIESEC by杨璐优katie
AIESEC CQU 2014.9 MM Camp Output,Big AIESEC by杨璐优katieAIESEC CQU 2014.9 MM Camp Output,Big AIESEC by杨璐优katie
AIESEC CQU 2014.9 MM Camp Output,Big AIESEC by杨璐优katie
 
Incentivar el consumo-sandra martinez escobar
Incentivar el consumo-sandra martinez escobarIncentivar el consumo-sandra martinez escobar
Incentivar el consumo-sandra martinez escobar
 
Bienvenidos a mi blog
Bienvenidos a mi blogBienvenidos a mi blog
Bienvenidos a mi blog
 
Отчет о расходовании фондом денежных средств и об использовании иного имущест...
Отчет о расходовании фондом денежных средств и об использовании иного имущест...Отчет о расходовании фондом денежных средств и об использовании иного имущест...
Отчет о расходовании фондом денежных средств и об использовании иного имущест...
 
Presentation1
Presentation1Presentation1
Presentation1
 
Discover JAPAN at Orchard Road 2012
Discover JAPAN at Orchard Road 2012Discover JAPAN at Orchard Road 2012
Discover JAPAN at Orchard Road 2012
 
Challenge vdn 300913_masculins
Challenge vdn 300913_masculinsChallenge vdn 300913_masculins
Challenge vdn 300913_masculins
 
4 группа передачи
4 группа передачи4 группа передачи
4 группа передачи
 
Tsahim sudalgaa
Tsahim sudalgaaTsahim sudalgaa
Tsahim sudalgaa
 

Similar a Algoritma Penentuan ke-n Secara Acak

Pertemuan 5 : Algoritma & Pemrograman
Pertemuan 5 : Algoritma & PemrogramanPertemuan 5 : Algoritma & Pemrograman
Pertemuan 5 : Algoritma & PemrogramanTri Retna
 
Siklus pengambilan (fetch cycle)
Siklus pengambilan (fetch cycle)Siklus pengambilan (fetch cycle)
Siklus pengambilan (fetch cycle)Lusiana Diyan
 
Cruise Control System
Cruise Control SystemCruise Control System
Cruise Control SystemLusiana Diyan
 
Pengambilan keputusan dalam kondisi pasti
Pengambilan keputusan dalam kondisi pastiPengambilan keputusan dalam kondisi pasti
Pengambilan keputusan dalam kondisi pastiindra wahyudi
 
sns_paper complement_r010110
sns_paper complement_r010110sns_paper complement_r010110
sns_paper complement_r010110S N M P Simamora
 
6. variabel, tipe data, dan operator pada vb
6. variabel, tipe data, dan operator pada vb6. variabel, tipe data, dan operator pada vb
6. variabel, tipe data, dan operator pada vbAris Saputro
 
Mikrokontroler pertemuan 5
Mikrokontroler pertemuan 5Mikrokontroler pertemuan 5
Mikrokontroler pertemuan 5Rumah Belajar
 
Bab 8 struktur rekursif
Bab 8 struktur rekursifBab 8 struktur rekursif
Bab 8 struktur rekursifrisal07
 
Pertemuan 6 - Struktur Perulangan
Pertemuan 6 - Struktur PerulanganPertemuan 6 - Struktur Perulangan
Pertemuan 6 - Struktur PerulanganAchmad Solichin
 

Similar a Algoritma Penentuan ke-n Secara Acak (20)

Kompilasi13 ka p
Kompilasi13 ka pKompilasi13 ka p
Kompilasi13 ka p
 
Pertemuan 5 : Algoritma & Pemrograman
Pertemuan 5 : Algoritma & PemrogramanPertemuan 5 : Algoritma & Pemrograman
Pertemuan 5 : Algoritma & Pemrograman
 
Siklus pengambilan (fetch cycle)
Siklus pengambilan (fetch cycle)Siklus pengambilan (fetch cycle)
Siklus pengambilan (fetch cycle)
 
Cruise Control System
Cruise Control SystemCruise Control System
Cruise Control System
 
Pengambilan keputusan dalam kondisi pasti
Pengambilan keputusan dalam kondisi pastiPengambilan keputusan dalam kondisi pasti
Pengambilan keputusan dalam kondisi pasti
 
sns_paper complement_r010110
sns_paper complement_r010110sns_paper complement_r010110
sns_paper complement_r010110
 
sp243-061043-959-1.ppt
sp243-061043-959-1.pptsp243-061043-959-1.ppt
sp243-061043-959-1.ppt
 
6. variabel, tipe data, dan operator pada vb
6. variabel, tipe data, dan operator pada vb6. variabel, tipe data, dan operator pada vb
6. variabel, tipe data, dan operator pada vb
 
Asistensi 1 mod 3
Asistensi 1 mod 3Asistensi 1 mod 3
Asistensi 1 mod 3
 
Materi 5. test kondisi
Materi 5. test kondisiMateri 5. test kondisi
Materi 5. test kondisi
 
Pengenalan c++
Pengenalan c++Pengenalan c++
Pengenalan c++
 
Manajerial bab iv, v, vi
Manajerial bab iv, v, viManajerial bab iv, v, vi
Manajerial bab iv, v, vi
 
Manajerial bab iv, v, vi
Manajerial bab iv, v, viManajerial bab iv, v, vi
Manajerial bab iv, v, vi
 
Mikrokontroler pertemuan 5
Mikrokontroler pertemuan 5Mikrokontroler pertemuan 5
Mikrokontroler pertemuan 5
 
Pengantar Ekonomika 5.pdf
Pengantar Ekonomika 5.pdfPengantar Ekonomika 5.pdf
Pengantar Ekonomika 5.pdf
 
Manajerial bab iv, v, vi
Manajerial bab iv, v, viManajerial bab iv, v, vi
Manajerial bab iv, v, vi
 
Bab 8 struktur rekursif
Bab 8 struktur rekursifBab 8 struktur rekursif
Bab 8 struktur rekursif
 
Pertemuan 6 - Struktur Perulangan
Pertemuan 6 - Struktur PerulanganPertemuan 6 - Struktur Perulangan
Pertemuan 6 - Struktur Perulangan
 
Daskom 3
Daskom 3Daskom 3
Daskom 3
 
Rangkuman soal TI SMK
Rangkuman soal TI SMKRangkuman soal TI SMK
Rangkuman soal TI SMK
 

Algoritma Penentuan ke-n Secara Acak

  • 1. Algoritma Penentuan ke-n Secara Acak untuk Formula Pembagi SNMP Simamora, ST., MT.1 1. Program studi: Teknik Komputer Politeknik TELKOM Bandung Jl. Telekomunikasi, Ters.Buah Batu, Bandung 40257 Email : snmpsimamora@telkom.net ABSTRAK Mekanisme pemecahan sebuah persoalan diperoleh dari pembangunan suatu algoritma. Algoritma disusun dari sejumlah tahapan instruksi yang dilakukan agar hasil akhir penyelesaian persoalan didapatkan secara sistematis dan terstruktur. Dari sebuah algoritma dapat selanjutnya dibangun aplikasi pemrograman. Kasus yang menarik adalah saat formula yang dihadapi merupakan fungsi pembalik dari fungsi awal. Misalkan ini ditemukan pada formula Cparalel pada rumus mencari Kapasitor penggati pada rangkaian serial kapasitor pada rangkaian listrik. Hal yang tersulit bagi user adalah menentukan terminasi proses perulangan jika setiap masukan pada blok proses dilakukan secara acak Dalam struktur pohon logika, proses perulangan dilakukan menggunakan for..i; dalam kasus ini, akan digunakan Bahasa Pemrograman C++ untuk membangun program dari algoritma yang telah disusun. Dengan alasan, bahasa ini lebih representatif dibandingkan bahasa pemrograman yang lain Kata kunci: algoritma, fungsi pembagi, fungsi pembalik, looping- process. Jurnal Politeknik TELKOM Bandung 1 Volume 1 Nomor 1 Tahun 2009
  • 2. 1. PENDAHULUAN 1.1 Latar Belakang Pendekatan yang dilakukan dalam penyelesaian sebuah persoalan lebih mudah jika dilakukan terlebih dahulu penyusunan algoritma penyelesaian persoalannya agar solusi yang ingin dicapai lebih mudah didapatkan. Terlebih khususnya dalam kasus-kasus yang berkaitan dengan persoalan pemrograman. Hal mayoritas yang umum dijumpai adalah bagaimana menurunkan sebuah formula matematis ke dalam blok pemrograman. Hal menarik berikutnya adalah jika sebuah proses perulangan pada blok struktur logika pemrograman tahapan terminasi bergantung dari banyaknya input-value yang ditetapkan oleh user. Hal ini bisa dipecahkan dengan solusi pendekatan menggunakan kaidah matematika dasar. Kasus yang paling umum dijumpai adalah menentukan nilai Kapasitor pengganti pada C kapasitor yang dirangkai secara seri, dimana jumlah C kapasitor ditetapkan oleh user secara acak. 1.2 Batasan Masalah Persoalan dilakukan pembatasan pada beberapa aspek berikut ini: a. Uji penurunan formula hanya dilakukan pada rumus nilai pengganti kapasitansi untuk rangkaian Kapasitor yang dirangkai secara serial. b. Penelusuran hanya dalam batasan perhitungan matematis bukan mencari nilai fisis (secara fisika) c. Uji menggunakan bahasa pemrograman dilakukan sebagai implementasi algoritma yang dibuat. d. Tidak berorientasi kepada basis data. 1.3 Tujuan Penelitian a. Membangun sebuah algoritma untuk menentukan nilai pengganti untuk n secara acak pada formula pembagi Jurnal Politeknik TELKOM Bandung 2 Volume 1 Nomor 1 Tahun 2009
  • 3. b. Membangun blok pemrograman dari algoritma yang telah dibuat. 1.4 Manfaat Penelitian a. Memudahkan user jika berhadapan dengan formula pembagi untuk variabel-n secara acak b. Memudahkan user jika ingin mencari deret ke-n untuk sejumlah n-masukan secara acak. 2. TEORI DASAR, MODEL DESAIN, DAN IDENTIFIKASI Penelitian dilaksanakan menggunakan pendekatan Top-Down, dimana sebuah hipotesis ditetapkan terlebih dahulu, lalu dilakukan penyelesaian secara terstruktur ke bawah yang lebih khusus. Alat Bantu yang digunakan adalah: a. Perangkat Lunakan Bahasa Pemrograman C++ menggunakan Turbo C++ v3.0 b. Komputer Desktop dengan clock-rate 200MHz 2.1. Definisi Algoritma Definisi algoritma adalah suatu urutan langkah-langkah yang disusun secara logika dan sistematis untuk menyelesaikan suatu persoalan yang dapat dieksekusi. Yang dimaksud dengan dapat dieksekusi di sini adalah dapat diimplementasikan untuk dijalankan atau dilaksanakan. Pada dasarnya algoritma tidak selalu identik dengan komputer, karena dapat juga dijumpai pada bidang lain; namun lebih umum ditemukan pada persoalan-persoalan matematika. 2.2. Identifikasi Persoalan Jika ditetapkan rumus C kapasitor pengganti yang dihubungkan secara Jurnal Politeknik TELKOM Bandung 3 Volume 1 Nomor 1 Tahun 2009
  • 4. serial adalah sebagai berikut: Untuk C kapasitor sebanyak 3 adalah: 1 1 1 1 = + + ........................................................(Persamaan-1) Cp c1 c 2 c3 maka untuk n kapasitor adalah: 1 1 1 1 1 = + + + ... + ....................................(Persamaan-2) Cp n c1 c 2 c3 cn jika diturunkan untuk mendapatkan nilai C pengganti, maka: c1 + c 2 + c3 + ...c n Cp n = ............................................(Persamaan-3) c1 .c 2 .c3 ....c n 2.3. Klasifikasi struktur kontrol berdasarkan pohon pencabangan 2.3.1. Struktur for repetition Perulangan for merupakan umum yang digunakan bila menyangkut proses looping, seperti pemanggilan kembali sejumlah indeks dalam suatu array. Sintaks untuk struktur logika for dituliskan sebagai berikut: for (expr1; expr2; expr3) statement Pertama-tama ekspresi ke-1 (expr1) dievaluasi (dieksekusi) sekali langsung saat perulangan mulai dilakukan. Selanjutnya di permulaan di iterasi selanjutnya, expr2 dievaluasi. Bila evaluasi memberi nilai TRUE, looping berlanjut dan statement bercabang dieksekusi. Jika evaluasi memberi nilai FALSE, eksekusi looping selesai. Di akhir iterasi, expr3 dievaluasi (dieksekusi). Misalkan: //Looping.cpp #include<iostream.h> void main() { Jurnal Politeknik TELKOM Bandung 4 Volume 1 Nomor 1 Tahun 2009
  • 5. for(int i=0;i<7;i++) { cout << "No-" << i+1 << endl; } cout << "Proses perulangan selesai.."; } Gambar 1. Skema Struktur for repetition 3. HASIL DAN DISKUSI 3.1. Penyelesaian Persoalan Dari Persamaan-1 disebutkan: 1 1 1 1 = + + . Cp c1 c 2 c3 maka: 1 cc cc cc = 2 3 + 1 3 + 1 2 Cp c1c 2 c3 c1c 2 c3 c1c 2 c3 (c 2 c3 + c1c3 + c1c 2 ) = .............................Persamaan-4 (c1c 2 c3 ) Jurnal Politeknik TELKOM Bandung 5 Volume 1 Nomor 1 Tahun 2009
  • 6. jika C1=c2*c3, dan C2=c1*c3, dan C3=c1*c2, maka 1 (C1 + C 2 + C 3 ) = .......................................Persamaan-5 Cp c1c 2 c3 Selanjutnya, dapat diturunkan kembali untuk 3 kapasitor adalah sebagai berikut: 1 C1 = c1 ∗ c 2 ∗ c3 ∗ c1 1 C 2 = c1 ∗ c 2 ∗ c3 ∗ c2 1 C 3 = c1 ∗ c 2 ∗ c3 ∗ c3 Sedangkan untuk 4 kapasitor, didapatkan: 1 C1 = c1 ∗ c 2 ∗ c3 ∗ c 4 ∗ c1 1 C 2 = c1 ∗ c 2 ∗ c3 ∗ c 4 ∗ c2 1 C 3 = c1 ∗ c 2 ∗ c3 ∗ c 4 ∗ c3 1 C 4 = c1 ∗ c 2 ∗ c3 ∗ c 4 ∗ c4 Berdasarkan turunan rumus ini, maka dapat dicari n kapasitor; untuk setiap kapasitor ke-i, maka: 1 C i = c1 ∗ c 2 ∗ c3 ∗ ... ∗ c n ∗ .......................Persamaan-6 ci Jurnal Politeknik TELKOM Bandung 6 Volume 1 Nomor 1 Tahun 2009
  • 7. 3.2. Implementasi dalam Algoritma Penentuan ke-n Secara Acak untuk Formula Pembagi Untuk c sebagai nilai kapasitor, cTot sebagai nilai kapasitor pengganti, dan tanya sebagai n kapasitor sebarang, maka: set cTot←1 set temp←0 for(set jinisialisasi s.d jtetapan) { set awal←1 cTot*=c[j] for(set iinisialisasi s.d itetapan) { awal*=c[i] } awal/=c[j]; A[j]=a; temp +=A[j]; } cTot/=temp 3.3. Blok Pemrograman dalam Bahasa Pemrograman C++ //cserial.cpp #include <iostream.h> void main() { int j,i,tanya; float a,h,A[100],cTot,c[100]; cout << "Berapa kapasitor?: "; cin >> tanya; cout << "nSatuan kapasitor dalam micro-Farad."; cout << endl; for(i=0;i<tanya;i++) { cout << "Masukkan nilai C-" << i+1 << ": "; cin >> c[i]; } cTot=1; h=0; Jurnal Politeknik TELKOM Bandung 7 Volume 1 Nomor 1 Tahun 2009
  • 8. for(j=0;j<tanya;j++) { a=1; cTot*=c[j]; for(i=0;i<tanya;i++) { a*=c[i]; } a/=c[j]; A[j]=a; h+=A[j]; } cTot/=h; cout << "nCpengganti = " << cTot << " micro- Farad."; } Tabel 1. Hasil simulasi Σ kapasitor 1µF 4µF 12µF 5 0.2 0.8 2.4 8 0.125 0.5 1.5 25 0.04 0.16 0.48 4. KESIMPULAN Dari hasil penelitian dapat ditarik kesimpulan sebagai berikut: a. Untuk mendapatkan nilai pengganti n pada formula pembagi tak berhingga, dapat diselesaikan dengan cara setiap variabel ke-i dikalikan dengan pembagi ke-i dari variabel bersangkutan. b. Proses perulangan diterminasi pada blok algoritma: awal*=c[i] c. Larik digunakan sebagai penampung dari sejumlah kapasitor yang ditetapkan oleh user. d. Agar tidak memboroskan memori, isi larik cukup di-set sebanyak DEC100. Jurnal Politeknik TELKOM Bandung 8 Volume 1 Nomor 1 Tahun 2009
  • 9. 5. DAFTAR PUSTAKA [1]. Goodrich, Michael T., Tamassia, R., Mount, D.M., 2000, “Data Structures and Algorithms in C++”, tersedia pada http://cpp.datastructures.net/textbook/index.html.physicsclassroom. com/Class/ light/lighttoc.html, diakses pada tanggal 10 Juli 2006. [2]. Simamora, S.N.M.P, 2006, “Diktat Kuliah KOM366 Algoritma dan Pemrograman (4 sks)”, Jurusan Ilmu Komputer, Fak.MIPA, Univ. Advent Indonesia, Bandung. [3]. Simamora, S.N.M.P, 2002, “Diktat Kuliah SK303 Dasar Komputer dan Pemrograman (2 sks)”, Departemen Sistem Komputer, Fak.Teknik, ITHB, Bandung. Jurnal Politeknik TELKOM Bandung 9 Volume 1 Nomor 1 Tahun 2009