STRUKTUR DASAR ALGORITMA

Algoritma berisi langkah-langkah penyelesaian suatu masalah. Langkah-langkah
tersebut dapat berupa Runtutan aksi, Pemilihan Aksi dan Pengulangan Aksi. Ketiga
jenis langkah tersebut memebnatuk konstruksi suatu algoritma. Jadi sebauh algoritma
dapat dibangaun dari tiga buah struktur dasar, yaitu :

   1. Runtutan ( Sequence).
   2. Pemilihan (Selection )
   3. Pengulangan ( repetition )


I. Runtutan ( Sequence )

   Sebuah Runtutan terdiri dari satu atau lebih Instruksi. Tiap Instruksi dikerjakan
   secara berurutan sesuai denan urutan penulisannya. Yakni sebuah Instruksi
   dilaksanakan setelah instruksi sebelumnya selesai dilaksankan. Paa Struktur ini
   jumlah Instruksi sama dengan jumlah aksi yang dilakukan.

   Contoh :
      A=10
      B=20
      C=A+B
      Write C

   Dari contoh di atas, pertama tama yang dilakukan adalah instruksi A=10,
   selanjutnya A=20, kemudian C= A+b dan yang terakhir adalah penampilkan nilai
   C dan algoritma akan berhenti setelahnya

   Contoh soal

   1. Diketahui Rumus Untuk menentukan Nilai R dengan rumus

       R = 2y + x
                2n
       Buatlah penyelesaian masalahnya, melalui langkah-langkah pembuatan
       program

       Jawab :

          b. Analisis Masalah :
                    Data yang diinput adalah y, x, n dengan tipe data integer
                    Prosesnya adalah R = ( 2y + x) / 2 n
                    Keluarnna adalah R dengan tipe data Real atau Float

          c. Algoritma

                     Algoritma Hitung_R                   Judul Program

                     Bagian Deklarasi
                           y,x,n = integer                Bagian deklarasi
                           R = float
Bagian Deskripsi

                       Read ( y )
                       Read ( x)
                       Read ( n)             Bagian Deskripsi
                       R = ( 2y + x) / 2 n
                       Write (R)


d. Flowchart Program


                                Start


                              Input Y


                              Input X


                              Input n


                       R = ( 2y + x) / 2 n


                           Write R



                                 End



e. Program menggunakan bahasa C

Contoh Program satu

   # include <iostream.h)
   Main ( )
   {

       y,x,n = int ;
       r = float ;

   cin>>y;
   cin>>x;
   cin>>n;
   r = ( 2y + x) / 2 n;
   cout<< r;

   }
Contoh Program Dua

             # include <iostream.h)
             Main ( )
             {

               y,x,n = int ;
               r = float ;
             cout<<”Masukan Nilai Y: “;
             cin>>y;
             cout<<”Masukan Nilai X: “;
             cin>>x;
             cout<<”Masukan Nilai N: “;
             cin>>n;
             r = ( 2y + x) / 2 n;
             cout<<”Hasil R Adalah : “;
             cout<< r;

             }


2. Untuk menghitung total biaya kuliah yang harus dibayar adalah SPP ditambah
   Biaya SKS. Biaya SKS diperoleh dari Jumlah SKS dikali Rp. 30.000,-

   Buatlah penyelesaian masalahnya, melalui langkah-langkah pembuatan
   program sampai dengan tahap pembuatan Flowchart Program


   Jawab :

       a. Analisis Masalah :
                 Data yang diinput adalah Besar SPP dan Jumlah SKS dengan
                 tipe data integer
                 Prosesnya adalah
                         Biaya SKS = Jumlah sks x 30.000
                         BIaya Kuliah = SPP + Biaya sks
                 Keluarnna adalah Biaya Kuliah

                    Variabel yang diguanakn BK= Biaya Kuliah, BS = Biaya sks,
                    JS= Jumlah sks, SP= SPP


       b. Algoritma

                    Algoritma Hitung_Biaya Kuliah

                    Bagian Deklarasi
                          SP,JS,BS,BK = integer
Bagian Deskripsi

                         Read ( SP )
                         Read ( JS)
                         BS= JS * 30000
                         BK=SP+BS
                         Write (BK)
.

       c. Flowchart Program


                                   Start


                                 Input SP
                                 Input JS



                          BS = JS * 30000
                          BK = SP+BS



                               Write BK



                                   End




3. Untuk mengkonversi dari detik menjadi jam. Menit dan detik, dihitung dengan
   ketentuan ;
   1 jam = 3600 detik
   1 menit = 60 deitk

    JIka ditentukan atau diinput sembarang detik bagaimana penyelesain
    masalahnya samapai Flowchart program untuk diubah menjadi jam, menit dan
    detik

    Jawab :
       a. Analisis Masalah :
                 Data yang diinput adalah Total Detik dengan tipe data integer
                 Prosesnya adalah
                        Total Detik DIV 3600= Jam
                        Total Detik mod 3600 = Sisa Jam
                        Sisa Jam Div 60 = Menit
                        Sisa jam Mod 60 = Detik
                 Keluarannya Jaam, Menit dan Detik

                  Variabel yang digunakan TDT= Total Detik, J= Jam, SJ = Sisa
                  jam, M= Menit, D=Detik, semua tipe data Integer
b. Algoritma
              Algoritma Konversi_ detik

             Bagian Deklarasi
                   TDT, J, SJ, M, D = integer

             Bagian Deskripsi
                   Read ( TDT )
                   J= TDT Div 3600
                   SJ = TDT mod 3600
                   M = SJ Div 60
                   D= SJ Mod 60
                   Write (J,M,D)
.

    c. Flowchart Program


                             Start


                           Input TDT



                         J = TDT Div 3600
                        SJ = TDT Mod 3600
                           M = SJ Div 60
                           D = SJ Mod 60



                       Write ( J,M,D )


                             End

Runtutan ( sequence )

  • 1.
    STRUKTUR DASAR ALGORITMA Algoritmaberisi langkah-langkah penyelesaian suatu masalah. Langkah-langkah tersebut dapat berupa Runtutan aksi, Pemilihan Aksi dan Pengulangan Aksi. Ketiga jenis langkah tersebut memebnatuk konstruksi suatu algoritma. Jadi sebauh algoritma dapat dibangaun dari tiga buah struktur dasar, yaitu : 1. Runtutan ( Sequence). 2. Pemilihan (Selection ) 3. Pengulangan ( repetition ) I. Runtutan ( Sequence ) Sebuah Runtutan terdiri dari satu atau lebih Instruksi. Tiap Instruksi dikerjakan secara berurutan sesuai denan urutan penulisannya. Yakni sebuah Instruksi dilaksanakan setelah instruksi sebelumnya selesai dilaksankan. Paa Struktur ini jumlah Instruksi sama dengan jumlah aksi yang dilakukan. Contoh : A=10 B=20 C=A+B Write C Dari contoh di atas, pertama tama yang dilakukan adalah instruksi A=10, selanjutnya A=20, kemudian C= A+b dan yang terakhir adalah penampilkan nilai C dan algoritma akan berhenti setelahnya Contoh soal 1. Diketahui Rumus Untuk menentukan Nilai R dengan rumus R = 2y + x 2n Buatlah penyelesaian masalahnya, melalui langkah-langkah pembuatan program Jawab : b. Analisis Masalah : Data yang diinput adalah y, x, n dengan tipe data integer Prosesnya adalah R = ( 2y + x) / 2 n Keluarnna adalah R dengan tipe data Real atau Float c. Algoritma Algoritma Hitung_R Judul Program Bagian Deklarasi y,x,n = integer Bagian deklarasi R = float
  • 2.
    Bagian Deskripsi Read ( y ) Read ( x) Read ( n) Bagian Deskripsi R = ( 2y + x) / 2 n Write (R) d. Flowchart Program Start Input Y Input X Input n R = ( 2y + x) / 2 n Write R End e. Program menggunakan bahasa C Contoh Program satu # include <iostream.h) Main ( ) { y,x,n = int ; r = float ; cin>>y; cin>>x; cin>>n; r = ( 2y + x) / 2 n; cout<< r; }
  • 3.
    Contoh Program Dua # include <iostream.h) Main ( ) { y,x,n = int ; r = float ; cout<<”Masukan Nilai Y: “; cin>>y; cout<<”Masukan Nilai X: “; cin>>x; cout<<”Masukan Nilai N: “; cin>>n; r = ( 2y + x) / 2 n; cout<<”Hasil R Adalah : “; cout<< r; } 2. Untuk menghitung total biaya kuliah yang harus dibayar adalah SPP ditambah Biaya SKS. Biaya SKS diperoleh dari Jumlah SKS dikali Rp. 30.000,- Buatlah penyelesaian masalahnya, melalui langkah-langkah pembuatan program sampai dengan tahap pembuatan Flowchart Program Jawab : a. Analisis Masalah : Data yang diinput adalah Besar SPP dan Jumlah SKS dengan tipe data integer Prosesnya adalah Biaya SKS = Jumlah sks x 30.000 BIaya Kuliah = SPP + Biaya sks Keluarnna adalah Biaya Kuliah Variabel yang diguanakn BK= Biaya Kuliah, BS = Biaya sks, JS= Jumlah sks, SP= SPP b. Algoritma Algoritma Hitung_Biaya Kuliah Bagian Deklarasi SP,JS,BS,BK = integer
  • 4.
    Bagian Deskripsi Read ( SP ) Read ( JS) BS= JS * 30000 BK=SP+BS Write (BK) . c. Flowchart Program Start Input SP Input JS BS = JS * 30000 BK = SP+BS Write BK End 3. Untuk mengkonversi dari detik menjadi jam. Menit dan detik, dihitung dengan ketentuan ; 1 jam = 3600 detik 1 menit = 60 deitk JIka ditentukan atau diinput sembarang detik bagaimana penyelesain masalahnya samapai Flowchart program untuk diubah menjadi jam, menit dan detik Jawab : a. Analisis Masalah : Data yang diinput adalah Total Detik dengan tipe data integer Prosesnya adalah Total Detik DIV 3600= Jam Total Detik mod 3600 = Sisa Jam Sisa Jam Div 60 = Menit Sisa jam Mod 60 = Detik Keluarannya Jaam, Menit dan Detik Variabel yang digunakan TDT= Total Detik, J= Jam, SJ = Sisa jam, M= Menit, D=Detik, semua tipe data Integer
  • 5.
    b. Algoritma Algoritma Konversi_ detik Bagian Deklarasi TDT, J, SJ, M, D = integer Bagian Deskripsi Read ( TDT ) J= TDT Div 3600 SJ = TDT mod 3600 M = SJ Div 60 D= SJ Mod 60 Write (J,M,D) . c. Flowchart Program Start Input TDT J = TDT Div 3600 SJ = TDT Mod 3600 M = SJ Div 60 D = SJ Mod 60 Write ( J,M,D ) End