LOGIKA
                                      &

                          ALGORITMA
By :
Anton Sukamto
        Anton.sukamto74   gmail.com
DEFINISI LOGIKA

Logika identik dengan masuk akal dan penalaran.
Penalaran  salah satu bentuk pemikiran
Pemikiran  pengetahuan tak langsung yang
  didasarkan pada pernyataan langsung
  pemikiran mungkin benar dan mungkin tidak
  benar
Definisi Logika  ilmu yang memberikan prinsip-
 prinsip yang harus diikuti, agar dapat berfikir
 valid menurut aturan yang berlaku.
KEGUNAAN LOGIKA
1.Membantu setiap orang yang mempelajari logika untuk berpikir secara
rasional, kritis, lurus, tetap, tertib, metodis dan koheren.
2.Meningkatkan kemampuan berpikir secara abstrak, cermat, dan objektif.
3.Menambah kecerdasan dan meningkatkan kemampuan berpikir secara
tajam dan mandiri.
4.Memaksa dan mendorong orang untuk berpikir sendiri dengan
menggunakan asas-asas sistematis.
5.Meningkatkan cinta akan kebenaran dan menghindari kesalahan-
kesalahan berpkir, kekeliruan serta kesesatan.
6.Mampu melakukan analisis terhadap suatu kejadian.
7.Terhindar dari klenik , gugon-tuhon ( bahasa Jawa )
8.Apabila sudah mampu berpikir rasional,kritis ,lurus,metodis dan analitis
sebagaimana tersebut pada butir pertama maka akan meningkatkan citra
diri seseorang.
Mata Kuliah Logika
Menimbulkan Kesadaran
Kita Untuk Menggunakan
Prinsip - Prinsip Berfikir
    Secara Sistematis
DEFINISI ALGORITMA
• Urutan langkah-langkah logis
  penyelesaian masalah yang disusun
  secara sistematis

• Kata logis disini berarti sesuai dengan
  logika manusia
• Untuk menjadi sebuah algoritma, urutan
  langkah yang di tempuh untuk
  menyelesaikan masalah harus
  memberikan hasil yang benar.
SEJARAH ALGORITMA
Abu Ja’far Muhammad Ibnu Musa Al Khuwarizmi adalah
seorang penulis buku Arab yang berjudul Kitab Al Jabar Wal
Muqabala (Buku Pemugaran dan Pengurangan). Kata Al
Khuwarizmi di baca orang Barat menjadi Algorism.

Kata Algorism berarti proses menghitung dengan angka Arab.
Seseorang dikatakan algorist jika orang tersebut menggunakan
angka Arab.

Kata Algorism lambat laun berubah menjadi algorithm
disebabkan kata algorism sering di kelirukan dengan kata
arithmetic sehingga akhiran –sm berubah menjadi –thm. Kata
algorithm diserap kedalam bahasa Indonesia menjadi algoritma
DOMAIN ALGORITMA
Masalah  motivasi untuk membuat algoritma.

Algoritma  prosedur untuk menyelesaikan masalah.
Seringkali satu masalah dapat diselesaikan dengan lebih
dari satu cara (banyak kemungkinan).

Program  representasi formal dari suatu algoritma
dengan menggunakan bahasa pemrograman yang bisa
dimengerti oleh komputer.

Proses  aktivitas menjalankan langkah-langkah dalam
algoritma.
HAL YANG HARUS
    DIPENUHI DALAM
  MEMBUAT ALGORITMA

• INPUT  data yang harus diberikan pada
 komputer.
• OUTPUT  Informasi yang akan diperoleh
 dari komputer
• LOGIKA  Merencanakan proses program.
 Terdiri dari sejumlah instruksi   yang
 mengubah input menjadi output     yang
 diinginkan.
CONTOH ALGORITMA
Ada 2 buah gelas. Satu berisi teh dan satunya berisi
kopi. Bagaimana caranya menukar isi masing-
masing gelas ?




      TEH                KOPI
ALGORITMANYA
Siapkan gelas cadangan X
                                        X




Tuangkan teh kedalam
gelas cadangan X

                             X
                                            TEH
Tuangkan kopi kedalam
gelas teh (yang telah
kosong)
                            KOPI
                                             TEH
Tuangkan the (dari gelas
cadangan kedalam gelas
kopi.                                              X
                                 KOPI
LOGIKA BINER
• Dalam komputer terdapat logika tepatnya
  pada prosesor yang didalamnya terdapat
  ALU (Arithmetic Logical Unit).
• Logika yang ada yaitu AND, OR, XOR
       X    Y   AND     OR    XOR

        1   1    1      1      0

        1   0    0      1      1

        0   1    0      1      1

        0   0    0      0      0
LA
                    TIH
                          AN

10111 OR 111 
11111 XOR 1101 
11101 AND 1101

FLOWCHART

Sebelum membuat suatu
program sebaiknya dibuat
suatu urutan langkah logika ke
dalam flowchart ( bagan alur)
Flowchart
• Bagan-bagan yang mempunyai arus
• Menggambarkan langkah-langkah
  penyelesaian suatu masalah
• Merupakan salah satu cara penyajian
  algoritma




                                        14
Tujuan
• Menggambarkan suatu tahapan
  penyelesaian masalah
• Secara sederhana, terurai, rapi dan jelas
• Menggunakan simbol-simbol standar




                                              15
Model / Jenis Flowchart

    • System Flowchart
    • Program Flowchart




                          16
System Flowchart
• Menggambarkan suatu sistem peralatan
  komputer yang digunakan dalam proses
  pengolahan data serta hubungan antar
  peralatan tersebut
• Tidak digunakan untuk menggambarkan
  urutan langkah untuk memecahkan masalah
• Hanya untuk menggambarkan prosedur
  dalam sistem yang dibentuk

                                            17
Program Flowchart
• Menggambarkan urutan logika dari suatu
  prosedur pemecahan masalah
• Dua jenis metode penggambaran program
  flowchart :
  – Conceptual flowchart, menggambarkan alur
    pemecahan masalah secara global
  – Detail flowchart, menggambarkan alur
    pemecahan masalah secara rinci

                                               18
Simbol-simbol Flowchart

• Flow direction symbols
   – Digunakan untuk menghubungkan simbol satu dengan
     yang lain
   – Disebut juga connecting line
• Processing symbols
   – Menunjukan jenis operasi pengolahan dalam suatu
     proses / prosedur
• Input / Output symbols
   – Menunjukkan jenis peralatan yang digunakan sebagai
     media input atau output

                                                          19
Flow Direction Symbols

   • Simbol arus / flow
      – Menyatakan jalannya arus suatu proses

   • Simbol communication link
      – Menyatakan transmisi data dari satu lokasi ke lokasi lain

   • Simbol connector
      – Menyatakan sambungan dari proses ke proses lainnya
        dalam halaman yang sama

   • Simbol offline connector
      – Menyatakan sambungan dari proses ke proses lainnya
        dalam halaman yang berbeda
                                                                    20
Processing Symbols
• Simbol process
   – Menyatakan suatu tindakan (proses) yang dilakukan
     oleh komputer
• Simbol manual
   – Menyatakan suatu tindakan (proses) yang tidak
     dilakukan oleh komputer
• Simbol decision
   – Menujukkan suatu kondisi tertentu yang akan
     menghasilkan dua kemungkinan jawaban : ya / tidak
• Simbol predefined process
   – Menyatakan penyediaan tempat penyimpanan suatu
     pengolahan untuk memberi harga awal
• Simbol terminal
   – Menyatakan permulaan atau akhir suatu program

                                                         21
Processing Symbols

  • Simbol keying operation
     – Menyatakan segala jenis operasi yang
       diproses dengan menggunakan suatu
       mesin yang mempunyai keyboard
  • Simbol offline-storage
     – Menunjukkan bahwa data dalam simbol
       ini akan disimpan ke suatu media tertentu
  • Simbol manual input
     – Memasukkan data secara manual dengan
       menggunakan online keyboard
                                                   22
Input / Output SymbOlS

    • Simbol input/output
       – Menyatakan proses input atau output tanpa
         tergantung jenis peralatannya
    • Simbol punched card
       – Menyatakan input berasal dari kartu atau output
         ditulis ke kartu
    • Simbol magnetic tape
       – Menyatakan input berasal dari pita magnetis
         atau output disimpan ke pita magnetis
    • Simbol disk storage
       – Menyatakan input berasal dari dari disk atau
         output disimpan ke disk

                                                           23
Output SymbOlS
 • Simbol document
   – Mencetak keluaran dalam bentuk
     dokumen (melalui printer)
 • Simbol display
   – Mencetak keluaran dalam layar
     monitor




                                      24
KaIdah pembuatan
    FlOwchart
       Start


       Input


       Proses


       Output


        End
                   25
pengOlahan data
     START


     READ


                Ya
    HABIS ?

        Tidak
    PROCESS


     WRITE


                END
                      26
Contoh 1
         Start

    Input panjang

      Input lebar


Luas  panjang * lebar


      Print Luas


         End
                         27
STUDI KASUS 1
Buatlah flowchart ( Diagram Alur ) Jika terdapat 2
(dua) bilangan desimal, dimana jika salah satu dari
bilangan tersebut lebih besar maka akan tercetak
bilangan yang besar, jika tidak maka cetak bilangan
yang terkecil.




                                                      28
Start



Read A



Read B




          Y   Cetak A
A>B


    T
Cetak B




 End
                        29
STUDI KASUS 2
Pensil dapat di beli secara satuan dan lusinan

Harga satuan pensil adalah Rp. 1.000, sedangkan harga selusin
pensil Rp. 5.000. Buatlah diagram alur untuk harga pembelian X
buah pensil.

Penjelasan :

Jika kita beli 15 buah pensil dengan harga satuan maka harus
membayar Rp. 15.000 , sedangkan jika kita membayar dengan 1
lusin serta 3 buah buah sisanya maka kita harus membayar Rp.
8.000


                                                                 30
Baca X



   L  INT (X/12)



    S  X – L * 12



P  5000 * L + 1000* S



       Cetak P



         End

                         31
STUDI KASUS 3
Buatlah flowchart ( diagram alur ) jika kita
mempunyai s detik diubah menjadi x jam y
menit dan z detik




                                               32
START                A




    BACA S         Y  INT (A/60)




X  INT (S/3600)   Z  A – 60 * Y




                      CETAK
A  S – 3600 * X      X, Y, Z




       A               END



                                    33
STUDI KASUS 4
Buatlah flowchart (bagan alur) untuk pembelian buku.

Jika kita membeli buku dalam jumlah besar, maka penerbit
akan memberikan rabat (discount) dengan ketentuan sebagai
berikut :

1.Pembelian kurang dari 10 buku, maka tidak ada rabat.
2.Pembelian 10 buku sampai 29 buku, rabat 10 %.
3.Pembelian 30 buku ke atas, rabat 20 %




                                                            34
MULAI


   BACA X



                    ya
     X<                   H  5000*X
     10 ?

            tidak


     X<             ya
                         H  0.9*5000*X
     30 ?

            tidak

H  0.8*5000*X


  CETAK H



   SELESAI                                35
LOOPING / PERULANGAN

(1) Variabel A diberi harga 1
                                                    A1         (1)




(2) Variabel A Berubah menjadi                     AA+1        (2)
2



(3) Variabel B diberi harga sebesar                BA*A        (3)
    harga A DIKALIKAN HARGA A




(4) Variabel B di dicetak (jadi tercetak           CETAK B
                                                                (4)
    4).

    Kemudian kembali ke (2) , (3), (4) dan
    kembali lagi ke (2) begitu seterusnya
                                             HASILNYA  4,9,16, ……

                                                                      36
5


BUATLAH DIAGRAM ALUR UNTUK
MENCETAK KUADRAT BILANGAN –
BILANGAN 1 SAMPAI DENGAN 10


                              37
MULAI


 A1




            Y
 A>
                SELESAI
 10 ?

        T

BA*A




CETAK B



A  A+1


                          38
QUIZ
1. BUAT FLOWCHART
   DENGAN OUTPUT
   2,4,6,8,10

2. 110 or 97
    207 xor 102
    315 and 221
                    39
6
                U S
          A S
    D   IK
   U
ST        Buatlah diagram alur untuk mencetak
          suku barisan. Dengan suku pertama 3
          dan beda 4 sampai suku yang harganya
          tidak melebihi 100.




                                                 40
start


S3



B4


             Y
S > 100          end

         T




Cetak S



S S+B



                       41
7
          US
       AS           Mulai       A

     IK
   UD
ST                  A0      C  A+B


                                        Y
                    B 1      C > 50        Selesai

                                    T
                   CETAK A   CETAK C



                   CETAK B
                              AB



                     A        BC



                                                      42
PSEUDO-CODE


Kode atau tanda yang menyerupai
(pseudo) atau merupakan pejelasan
cara menyelesaikan suatu masalah.

Pseudo-code sering digunakan oleh
manusia untuk menuliskan algoritma.


                                      43
STUDI KASUS 7

Mencari bilangan terbesar dari
dua bilangan yang diinputkan




                                 44
Pseudo-code:
1. Masukkan bilangan pertama

2. Masukkan bilangan kedua

3. Jika bilangan pertama > bilangan kedua maka
   kerjakan langkah 4, jika tidak, kerjakan langkah 5.

4. Tampilkan bilangan pertama

5. Tampilkan bilangan kedua
                                                         45
Algoritma

1. Masukkan bilangan pertama (a)

2. Masukkan bilangan kedua (b)

3. if a > b then kerjakan langkah 4

4. print a

5. print b


                                      46
CONTOH LAIN PEUDO-CODE & ALGORITMA


      Pseudo-code                        Algoritma
Nilai A ditambah dengan 5        A A+5

Cetak nilai A bila lebih besar dari If A > 10 THEN PRINT A
10

Dari dua bilangan A dan B, cari IF A > B THEN PRINT A ELSE
bilanan yang terbesar           PRINT B




                                                             47
LANGKAH MEMBUAT PROGRAM KOMPUTER


1. Mendefinisikan masalah
   Ini merupakan langkah pertama yang sering dilupakan orang. Menurut hukum
   Murphy (oleh Henry Ledgard):

        “Semakin cepat menulis program, akan semakin
        lama kita dapat menyelesaikannya”.
  Hal tersebut berlaku untuk permasalahan yang kompleks. Tentukan masalahnya,
  apa saja yang harus dipecahkan dengan menggunakan komputer, dan apa
  inputan serta outputnya.




                                                                                48
2. Menemukan solusi
    Setelah masalah didefinisikan, maka langkah berikutnya adalah menentukan
    solusi. Jika masalah terlalu kompleks, maka ada baiknya masalah tersebut
    dipecah menjadi modul-modul kecil agar lebih mudah diselesaikan.


 3. Memilih algoritma
    Pilihlah algoritma yang benar-benar sesuai dan efisien untuk permasalahan
    tersebut.

 4. Menulis program
    Pilihlah bahasa yang mudah dipelajari, mudah digunakan, dan lebih baik lagi
    jika sudah dikuasai, memiliki tingkat kompatibilitas tinggi dengan perangkat
    keras dan platform lainnya.


. 5. Menguji program
     Setelah program jadi, silahkan uji program tersebut dengan segala macam
     kemungkinan yang ada, termasuk error-handlingnya sehingga program
     tersebut akan benar-benar handal dan layak digunakan



                                                                                   49
6. Menulis dokumentasi
   Menulis dokumentasi sangat penting agar pada suatu saat jika kita akan
   melakukan perubahan atau membaca source code yang sudah kita tulis dapat
   kita ingat-ingat lagi dan kita akan mudah membacanya. Caranya adalah dengan
   menuliskan komentar-komentar kecil tentang apa maksud kode tersebut, untuk
   apa, variabel apa saja yang digunakan, untuk apa, dan parameter-parameter
   yang ada pada suatu prosedur dan fungsi.

7. Merawat program
   Program yang sudah jadi perlu dirawat untuk mencegah munculnya bug yang
   sebelumnya tidak terdeteksi. Atau mungkin juga pengguna membutuhkan
   fasilitas baru yang dulu tidak ada.




                                                                                 50
BASIC
  (BEGINNER’S ALL-PURPOSE SYMBOLIC INSTRUCTION CODE)



Bahasa pemrograman BASIC merupakan
bahasa pemrograman yang cukup sesuai bagi
pemula. Namun sungguhpun demikian bahasa
tersebut cukup baik untuk dipergunakan
memecahkan berbagai masalah mulai dari yang
paling sederhana sampai dengan yang rumit.




                                                       51
Contoh

    BASIC           ALGORITMA

10 LET A = 4       10 A = 4
20 LET B = 5       20 B = 5
30 LET C = A + B   30 C = A + B
40 PRINT C         40 PRINT C
50 END
RUN



                                  52
LATIHAN

10 A = 4       10 DATA 3,7
11 B = 5       11 READ A,B
12 C = A + B   12 A = A + 1
13 D = A – B   13 PRINT A
14 PRINT C     14 A = A + 1
15 PRINT D     15 PRINT A
               16 A = A + B
               17 PRINT A

                              53
STATEMEN FOR - TO
    START


   FOR N = 1
     TO 4


   K = N*N



   CETAK K



    NEXT N



     END


                    54
10 READ DATA A, B             10 X = 1
20 C = (A+B)/2                20 PRINT X
30 PRINT C                    30 IF X = 5 THEN 60
40 PRINT B                    40 X= X+1
                              50 GO TO 20
                              60 END

Harga 1 kg jeruk untuk pembelian 5 kg atau lebih rp. 6.000 dan
kurang dari 5 kg adalah Rp. 7.000. buat diagram alur dan lengkapi
algoritma di bawah ini

10 Data ……
20 Read N
30 IF N < 5 THEN 60
40 ………..
50 GO TO 70
60 ……….
70 Print B
80 end
                                                                    55
LATIHAN
1.BUATLAH ALGORITMA DENGAN
  OUTPUT 4,6,8,10,12

2.BUATLAH ALGORITMA & FLOWCHART
  UNTUK MENGHITUNG NILAI RATA2
  MAHASISWA, JIKA NILAI RATA2 2
  MATAKULIAH LEBIH BESAR DARI 75
  MAKA MAHASISWA TERSEBUT “LULUS”,
  JIKA TIDAK MAHASISWA TERSEBUT
  “GAGAL”                        56

Logika dan algoritma stmik terbaru

  • 1.
    LOGIKA & ALGORITMA By : Anton Sukamto Anton.sukamto74 gmail.com
  • 2.
    DEFINISI LOGIKA Logika identikdengan masuk akal dan penalaran. Penalaran  salah satu bentuk pemikiran Pemikiran  pengetahuan tak langsung yang didasarkan pada pernyataan langsung pemikiran mungkin benar dan mungkin tidak benar Definisi Logika  ilmu yang memberikan prinsip- prinsip yang harus diikuti, agar dapat berfikir valid menurut aturan yang berlaku.
  • 3.
    KEGUNAAN LOGIKA 1.Membantu setiaporang yang mempelajari logika untuk berpikir secara rasional, kritis, lurus, tetap, tertib, metodis dan koheren. 2.Meningkatkan kemampuan berpikir secara abstrak, cermat, dan objektif. 3.Menambah kecerdasan dan meningkatkan kemampuan berpikir secara tajam dan mandiri. 4.Memaksa dan mendorong orang untuk berpikir sendiri dengan menggunakan asas-asas sistematis. 5.Meningkatkan cinta akan kebenaran dan menghindari kesalahan- kesalahan berpkir, kekeliruan serta kesesatan. 6.Mampu melakukan analisis terhadap suatu kejadian. 7.Terhindar dari klenik , gugon-tuhon ( bahasa Jawa ) 8.Apabila sudah mampu berpikir rasional,kritis ,lurus,metodis dan analitis sebagaimana tersebut pada butir pertama maka akan meningkatkan citra diri seseorang.
  • 4.
    Mata Kuliah Logika MenimbulkanKesadaran Kita Untuk Menggunakan Prinsip - Prinsip Berfikir Secara Sistematis
  • 5.
    DEFINISI ALGORITMA • Urutanlangkah-langkah logis penyelesaian masalah yang disusun secara sistematis • Kata logis disini berarti sesuai dengan logika manusia • Untuk menjadi sebuah algoritma, urutan langkah yang di tempuh untuk menyelesaikan masalah harus memberikan hasil yang benar.
  • 6.
    SEJARAH ALGORITMA Abu Ja’farMuhammad Ibnu Musa Al Khuwarizmi adalah seorang penulis buku Arab yang berjudul Kitab Al Jabar Wal Muqabala (Buku Pemugaran dan Pengurangan). Kata Al Khuwarizmi di baca orang Barat menjadi Algorism. Kata Algorism berarti proses menghitung dengan angka Arab. Seseorang dikatakan algorist jika orang tersebut menggunakan angka Arab. Kata Algorism lambat laun berubah menjadi algorithm disebabkan kata algorism sering di kelirukan dengan kata arithmetic sehingga akhiran –sm berubah menjadi –thm. Kata algorithm diserap kedalam bahasa Indonesia menjadi algoritma
  • 7.
    DOMAIN ALGORITMA Masalah motivasi untuk membuat algoritma. Algoritma  prosedur untuk menyelesaikan masalah. Seringkali satu masalah dapat diselesaikan dengan lebih dari satu cara (banyak kemungkinan). Program  representasi formal dari suatu algoritma dengan menggunakan bahasa pemrograman yang bisa dimengerti oleh komputer. Proses  aktivitas menjalankan langkah-langkah dalam algoritma.
  • 8.
    HAL YANG HARUS DIPENUHI DALAM MEMBUAT ALGORITMA • INPUT  data yang harus diberikan pada komputer. • OUTPUT  Informasi yang akan diperoleh dari komputer • LOGIKA  Merencanakan proses program. Terdiri dari sejumlah instruksi yang mengubah input menjadi output yang diinginkan.
  • 9.
    CONTOH ALGORITMA Ada 2buah gelas. Satu berisi teh dan satunya berisi kopi. Bagaimana caranya menukar isi masing- masing gelas ? TEH KOPI
  • 10.
    ALGORITMANYA Siapkan gelas cadanganX X Tuangkan teh kedalam gelas cadangan X X TEH Tuangkan kopi kedalam gelas teh (yang telah kosong) KOPI TEH Tuangkan the (dari gelas cadangan kedalam gelas kopi. X KOPI
  • 11.
    LOGIKA BINER • Dalamkomputer terdapat logika tepatnya pada prosesor yang didalamnya terdapat ALU (Arithmetic Logical Unit). • Logika yang ada yaitu AND, OR, XOR X Y AND OR XOR 1 1 1 1 0 1 0 0 1 1 0 1 0 1 1 0 0 0 0 0
  • 12.
    LA TIH AN 10111 OR 111  11111 XOR 1101  11101 AND 1101 
  • 13.
    FLOWCHART Sebelum membuat suatu programsebaiknya dibuat suatu urutan langkah logika ke dalam flowchart ( bagan alur)
  • 14.
    Flowchart • Bagan-bagan yangmempunyai arus • Menggambarkan langkah-langkah penyelesaian suatu masalah • Merupakan salah satu cara penyajian algoritma 14
  • 15.
    Tujuan • Menggambarkan suatutahapan penyelesaian masalah • Secara sederhana, terurai, rapi dan jelas • Menggunakan simbol-simbol standar 15
  • 16.
    Model / JenisFlowchart • System Flowchart • Program Flowchart 16
  • 17.
    System Flowchart • Menggambarkansuatu sistem peralatan komputer yang digunakan dalam proses pengolahan data serta hubungan antar peralatan tersebut • Tidak digunakan untuk menggambarkan urutan langkah untuk memecahkan masalah • Hanya untuk menggambarkan prosedur dalam sistem yang dibentuk 17
  • 18.
    Program Flowchart • Menggambarkanurutan logika dari suatu prosedur pemecahan masalah • Dua jenis metode penggambaran program flowchart : – Conceptual flowchart, menggambarkan alur pemecahan masalah secara global – Detail flowchart, menggambarkan alur pemecahan masalah secara rinci 18
  • 19.
    Simbol-simbol Flowchart • Flowdirection symbols – Digunakan untuk menghubungkan simbol satu dengan yang lain – Disebut juga connecting line • Processing symbols – Menunjukan jenis operasi pengolahan dalam suatu proses / prosedur • Input / Output symbols – Menunjukkan jenis peralatan yang digunakan sebagai media input atau output 19
  • 20.
    Flow Direction Symbols • Simbol arus / flow – Menyatakan jalannya arus suatu proses • Simbol communication link – Menyatakan transmisi data dari satu lokasi ke lokasi lain • Simbol connector – Menyatakan sambungan dari proses ke proses lainnya dalam halaman yang sama • Simbol offline connector – Menyatakan sambungan dari proses ke proses lainnya dalam halaman yang berbeda 20
  • 21.
    Processing Symbols • Simbolprocess – Menyatakan suatu tindakan (proses) yang dilakukan oleh komputer • Simbol manual – Menyatakan suatu tindakan (proses) yang tidak dilakukan oleh komputer • Simbol decision – Menujukkan suatu kondisi tertentu yang akan menghasilkan dua kemungkinan jawaban : ya / tidak • Simbol predefined process – Menyatakan penyediaan tempat penyimpanan suatu pengolahan untuk memberi harga awal • Simbol terminal – Menyatakan permulaan atau akhir suatu program 21
  • 22.
    Processing Symbols • Simbol keying operation – Menyatakan segala jenis operasi yang diproses dengan menggunakan suatu mesin yang mempunyai keyboard • Simbol offline-storage – Menunjukkan bahwa data dalam simbol ini akan disimpan ke suatu media tertentu • Simbol manual input – Memasukkan data secara manual dengan menggunakan online keyboard 22
  • 23.
    Input / OutputSymbOlS • Simbol input/output – Menyatakan proses input atau output tanpa tergantung jenis peralatannya • Simbol punched card – Menyatakan input berasal dari kartu atau output ditulis ke kartu • Simbol magnetic tape – Menyatakan input berasal dari pita magnetis atau output disimpan ke pita magnetis • Simbol disk storage – Menyatakan input berasal dari dari disk atau output disimpan ke disk 23
  • 24.
    Output SymbOlS •Simbol document – Mencetak keluaran dalam bentuk dokumen (melalui printer) • Simbol display – Mencetak keluaran dalam layar monitor 24
  • 25.
    KaIdah pembuatan FlOwchart Start Input Proses Output End 25
  • 26.
    pengOlahan data START READ Ya HABIS ? Tidak PROCESS WRITE END 26
  • 27.
    Contoh 1 Start Input panjang Input lebar Luas  panjang * lebar Print Luas End 27
  • 28.
    STUDI KASUS 1 Buatlahflowchart ( Diagram Alur ) Jika terdapat 2 (dua) bilangan desimal, dimana jika salah satu dari bilangan tersebut lebih besar maka akan tercetak bilangan yang besar, jika tidak maka cetak bilangan yang terkecil. 28
  • 29.
    Start Read A Read B Y Cetak A A>B T Cetak B End 29
  • 30.
    STUDI KASUS 2 Pensildapat di beli secara satuan dan lusinan Harga satuan pensil adalah Rp. 1.000, sedangkan harga selusin pensil Rp. 5.000. Buatlah diagram alur untuk harga pembelian X buah pensil. Penjelasan : Jika kita beli 15 buah pensil dengan harga satuan maka harus membayar Rp. 15.000 , sedangkan jika kita membayar dengan 1 lusin serta 3 buah buah sisanya maka kita harus membayar Rp. 8.000 30
  • 31.
    Baca X L  INT (X/12) S  X – L * 12 P  5000 * L + 1000* S Cetak P End 31
  • 32.
    STUDI KASUS 3 Buatlahflowchart ( diagram alur ) jika kita mempunyai s detik diubah menjadi x jam y menit dan z detik 32
  • 33.
    START A BACA S Y  INT (A/60) X  INT (S/3600) Z  A – 60 * Y CETAK A  S – 3600 * X X, Y, Z A END 33
  • 34.
    STUDI KASUS 4 Buatlahflowchart (bagan alur) untuk pembelian buku. Jika kita membeli buku dalam jumlah besar, maka penerbit akan memberikan rabat (discount) dengan ketentuan sebagai berikut : 1.Pembelian kurang dari 10 buku, maka tidak ada rabat. 2.Pembelian 10 buku sampai 29 buku, rabat 10 %. 3.Pembelian 30 buku ke atas, rabat 20 % 34
  • 35.
    MULAI BACA X ya X< H  5000*X 10 ? tidak X< ya H  0.9*5000*X 30 ? tidak H  0.8*5000*X CETAK H SELESAI 35
  • 36.
    LOOPING / PERULANGAN (1)Variabel A diberi harga 1 A1 (1) (2) Variabel A Berubah menjadi AA+1 (2) 2 (3) Variabel B diberi harga sebesar BA*A (3) harga A DIKALIKAN HARGA A (4) Variabel B di dicetak (jadi tercetak CETAK B (4) 4). Kemudian kembali ke (2) , (3), (4) dan kembali lagi ke (2) begitu seterusnya HASILNYA  4,9,16, …… 36
  • 37.
    5 BUATLAH DIAGRAM ALURUNTUK MENCETAK KUADRAT BILANGAN – BILANGAN 1 SAMPAI DENGAN 10 37
  • 38.
    MULAI A1 Y A> SELESAI 10 ? T BA*A CETAK B A  A+1 38
  • 39.
    QUIZ 1. BUAT FLOWCHART DENGAN OUTPUT 2,4,6,8,10 2. 110 or 97 207 xor 102 315 and 221 39
  • 40.
    6 U S A S D IK U ST Buatlah diagram alur untuk mencetak suku barisan. Dengan suku pertama 3 dan beda 4 sampai suku yang harganya tidak melebihi 100. 40
  • 41.
    start S3 B4 Y S > 100 end T Cetak S S S+B 41
  • 42.
    7 US AS Mulai A IK UD ST A0 C  A+B Y B 1 C > 50 Selesai T CETAK A CETAK C CETAK B AB A BC 42
  • 43.
    PSEUDO-CODE Kode atau tandayang menyerupai (pseudo) atau merupakan pejelasan cara menyelesaikan suatu masalah. Pseudo-code sering digunakan oleh manusia untuk menuliskan algoritma. 43
  • 44.
    STUDI KASUS 7 Mencaribilangan terbesar dari dua bilangan yang diinputkan 44
  • 45.
    Pseudo-code: 1. Masukkan bilanganpertama 2. Masukkan bilangan kedua 3. Jika bilangan pertama > bilangan kedua maka kerjakan langkah 4, jika tidak, kerjakan langkah 5. 4. Tampilkan bilangan pertama 5. Tampilkan bilangan kedua 45
  • 46.
    Algoritma 1. Masukkan bilanganpertama (a) 2. Masukkan bilangan kedua (b) 3. if a > b then kerjakan langkah 4 4. print a 5. print b 46
  • 47.
    CONTOH LAIN PEUDO-CODE& ALGORITMA Pseudo-code Algoritma Nilai A ditambah dengan 5 A A+5 Cetak nilai A bila lebih besar dari If A > 10 THEN PRINT A 10 Dari dua bilangan A dan B, cari IF A > B THEN PRINT A ELSE bilanan yang terbesar PRINT B 47
  • 48.
    LANGKAH MEMBUAT PROGRAMKOMPUTER 1. Mendefinisikan masalah Ini merupakan langkah pertama yang sering dilupakan orang. Menurut hukum Murphy (oleh Henry Ledgard): “Semakin cepat menulis program, akan semakin lama kita dapat menyelesaikannya”. Hal tersebut berlaku untuk permasalahan yang kompleks. Tentukan masalahnya, apa saja yang harus dipecahkan dengan menggunakan komputer, dan apa inputan serta outputnya. 48
  • 49.
    2. Menemukan solusi Setelah masalah didefinisikan, maka langkah berikutnya adalah menentukan solusi. Jika masalah terlalu kompleks, maka ada baiknya masalah tersebut dipecah menjadi modul-modul kecil agar lebih mudah diselesaikan. 3. Memilih algoritma Pilihlah algoritma yang benar-benar sesuai dan efisien untuk permasalahan tersebut. 4. Menulis program Pilihlah bahasa yang mudah dipelajari, mudah digunakan, dan lebih baik lagi jika sudah dikuasai, memiliki tingkat kompatibilitas tinggi dengan perangkat keras dan platform lainnya. . 5. Menguji program Setelah program jadi, silahkan uji program tersebut dengan segala macam kemungkinan yang ada, termasuk error-handlingnya sehingga program tersebut akan benar-benar handal dan layak digunakan 49
  • 50.
    6. Menulis dokumentasi Menulis dokumentasi sangat penting agar pada suatu saat jika kita akan melakukan perubahan atau membaca source code yang sudah kita tulis dapat kita ingat-ingat lagi dan kita akan mudah membacanya. Caranya adalah dengan menuliskan komentar-komentar kecil tentang apa maksud kode tersebut, untuk apa, variabel apa saja yang digunakan, untuk apa, dan parameter-parameter yang ada pada suatu prosedur dan fungsi. 7. Merawat program Program yang sudah jadi perlu dirawat untuk mencegah munculnya bug yang sebelumnya tidak terdeteksi. Atau mungkin juga pengguna membutuhkan fasilitas baru yang dulu tidak ada. 50
  • 51.
    BASIC (BEGINNER’SALL-PURPOSE SYMBOLIC INSTRUCTION CODE) Bahasa pemrograman BASIC merupakan bahasa pemrograman yang cukup sesuai bagi pemula. Namun sungguhpun demikian bahasa tersebut cukup baik untuk dipergunakan memecahkan berbagai masalah mulai dari yang paling sederhana sampai dengan yang rumit. 51
  • 52.
    Contoh BASIC ALGORITMA 10 LET A = 4 10 A = 4 20 LET B = 5 20 B = 5 30 LET C = A + B 30 C = A + B 40 PRINT C 40 PRINT C 50 END RUN 52
  • 53.
    LATIHAN 10 A =4 10 DATA 3,7 11 B = 5 11 READ A,B 12 C = A + B 12 A = A + 1 13 D = A – B 13 PRINT A 14 PRINT C 14 A = A + 1 15 PRINT D 15 PRINT A 16 A = A + B 17 PRINT A 53
  • 54.
    STATEMEN FOR -TO START FOR N = 1 TO 4 K = N*N CETAK K NEXT N END 54
  • 55.
    10 READ DATAA, B 10 X = 1 20 C = (A+B)/2 20 PRINT X 30 PRINT C 30 IF X = 5 THEN 60 40 PRINT B 40 X= X+1 50 GO TO 20 60 END Harga 1 kg jeruk untuk pembelian 5 kg atau lebih rp. 6.000 dan kurang dari 5 kg adalah Rp. 7.000. buat diagram alur dan lengkapi algoritma di bawah ini 10 Data …… 20 Read N 30 IF N < 5 THEN 60 40 ……….. 50 GO TO 70 60 ………. 70 Print B 80 end 55
  • 56.
    LATIHAN 1.BUATLAH ALGORITMA DENGAN OUTPUT 4,6,8,10,12 2.BUATLAH ALGORITMA & FLOWCHART UNTUK MENGHITUNG NILAI RATA2 MAHASISWA, JIKA NILAI RATA2 2 MATAKULIAH LEBIH BESAR DARI 75 MAKA MAHASISWA TERSEBUT “LULUS”, JIKA TIDAK MAHASISWA TERSEBUT “GAGAL” 56