SlideShare ist ein Scribd-Unternehmen logo
1 von 56
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

Weitere ähnliche Inhalte

Ähnlich wie Logika dan algoritma stmik terbaru

Flowchart (diagram alur)_20100108112718
Flowchart (diagram alur)_20100108112718Flowchart (diagram alur)_20100108112718
Flowchart (diagram alur)_20100108112718
kawidian_putri
 
Algoritma dan flowchart
Algoritma dan flowchartAlgoritma dan flowchart
Algoritma dan flowchart
purispace
 
01 pengantar algoritma & flowchart
01 pengantar algoritma & flowchart01 pengantar algoritma & flowchart
01 pengantar algoritma & flowchart
Den Askhari
 
AaaaaaaaaaaaaaaLGORITMA PEMROGRAMAN.pptx
AaaaaaaaaaaaaaaLGORITMA PEMROGRAMAN.pptxAaaaaaaaaaaaaaaLGORITMA PEMROGRAMAN.pptx
AaaaaaaaaaaaaaaLGORITMA PEMROGRAMAN.pptx
MuhammadQudrat2
 
Algoritma dan flowchart
Algoritma dan flowchartAlgoritma dan flowchart
Algoritma dan flowchart
lukmanbooms
 

Ähnlich wie Logika dan algoritma stmik terbaru (20)

Algoritma Pemrograman
Algoritma Pemrograman Algoritma Pemrograman
Algoritma Pemrograman
 
alur pemrograman.pptx
alur pemrograman.pptxalur pemrograman.pptx
alur pemrograman.pptx
 
Flowchart (diagram alur)_20100108112718
Flowchart (diagram alur)_20100108112718Flowchart (diagram alur)_20100108112718
Flowchart (diagram alur)_20100108112718
 
Algoritma dan flowchart
Algoritma dan flowchartAlgoritma dan flowchart
Algoritma dan flowchart
 
Flowchart.pptx
Flowchart.pptxFlowchart.pptx
Flowchart.pptx
 
Algoritma 1 pertemuan 3
Algoritma 1 pertemuan 3Algoritma 1 pertemuan 3
Algoritma 1 pertemuan 3
 
Pk 1 kimia algo and flowchart
Pk 1 kimia algo and flowchartPk 1 kimia algo and flowchart
Pk 1 kimia algo and flowchart
 
Pk 1 kimia algo and flowchart
Pk 1 kimia algo and flowchartPk 1 kimia algo and flowchart
Pk 1 kimia algo and flowchart
 
01 pengantar algoritma & flowchart
01 pengantar algoritma & flowchart01 pengantar algoritma & flowchart
01 pengantar algoritma & flowchart
 
Algoritma dan pemrograman 1
Algoritma dan pemrograman 1Algoritma dan pemrograman 1
Algoritma dan pemrograman 1
 
Materi Pemrograman Dasar 1.2 Flowchat.pptx
Materi Pemrograman Dasar 1.2 Flowchat.pptxMateri Pemrograman Dasar 1.2 Flowchat.pptx
Materi Pemrograman Dasar 1.2 Flowchat.pptx
 
Materi ap#1
Materi ap#1Materi ap#1
Materi ap#1
 
Materi_1_Pengantar_Algoritma.pptx
Materi_1_Pengantar_Algoritma.pptxMateri_1_Pengantar_Algoritma.pptx
Materi_1_Pengantar_Algoritma.pptx
 
AaaaaaaaaaaaaaaLGORITMA PEMROGRAMAN.pptx
AaaaaaaaaaaaaaaLGORITMA PEMROGRAMAN.pptxAaaaaaaaaaaaaaaLGORITMA PEMROGRAMAN.pptx
AaaaaaaaaaaaaaaLGORITMA PEMROGRAMAN.pptx
 
Algoritma dan flowchart
Algoritma dan flowchartAlgoritma dan flowchart
Algoritma dan flowchart
 
Flowchat pemreograman dasar kelas XI.pptx
Flowchat pemreograman dasar kelas XI.pptxFlowchat pemreograman dasar kelas XI.pptx
Flowchat pemreograman dasar kelas XI.pptx
 
2 definisi dan simbol flowchart
2 definisi dan simbol flowchart2 definisi dan simbol flowchart
2 definisi dan simbol flowchart
 
2 definisi dan simbol flowchart
2 definisi dan simbol flowchart2 definisi dan simbol flowchart
2 definisi dan simbol flowchart
 
Materi Pemrograman Dasar 1.1 Algoritma Pemrograman EDIT (2).pptx
Materi Pemrograman Dasar 1.1 Algoritma Pemrograman EDIT (2).pptxMateri Pemrograman Dasar 1.1 Algoritma Pemrograman EDIT (2).pptx
Materi Pemrograman Dasar 1.1 Algoritma Pemrograman EDIT (2).pptx
 
Algoritma dan flowchart
Algoritma dan flowchartAlgoritma dan flowchart
Algoritma dan flowchart
 

Mehr von rully2012

Hardware komputer
Hardware komputerHardware komputer
Hardware komputer
rully2012
 
Bahasa inggris
Bahasa inggrisBahasa inggris
Bahasa inggris
rully2012
 
Security firewall 2
Security firewall 2Security firewall 2
Security firewall 2
rully2012
 
Security firewall 1
Security firewall 1Security firewall 1
Security firewall 1
rully2012
 
Pengetahuan dasar komputer
Pengetahuan dasar komputerPengetahuan dasar komputer
Pengetahuan dasar komputer
rully2012
 
Manajemen sumber-daya-manusia
Manajemen sumber-daya-manusiaManajemen sumber-daya-manusia
Manajemen sumber-daya-manusia
rully2012
 
Teori motivasi
Teori motivasiTeori motivasi
Teori motivasi
rully2012
 
Manajemen umum bab 1
Manajemen umum bab 1Manajemen umum bab 1
Manajemen umum bab 1
rully2012
 
Bab iv stafing
Bab iv stafingBab iv stafing
Bab iv stafing
rully2012
 
Bab iii organizing
Bab iii organizingBab iii organizing
Bab iii organizing
rully2012
 
Bab ii perencanaan
Bab ii perencanaanBab ii perencanaan
Bab ii perencanaan
rully2012
 
Bab 1 ruang lingkup
Bab 1  ruang lingkupBab 1  ruang lingkup
Bab 1 ruang lingkup
rully2012
 
1 manajemen-dan-ruang-lingkupnya
1 manajemen-dan-ruang-lingkupnya1 manajemen-dan-ruang-lingkupnya
1 manajemen-dan-ruang-lingkupnya
rully2012
 
Manajemen sumber-daya-manusia
Manajemen sumber-daya-manusiaManajemen sumber-daya-manusia
Manajemen sumber-daya-manusia
rully2012
 

Mehr von rully2012 (14)

Hardware komputer
Hardware komputerHardware komputer
Hardware komputer
 
Bahasa inggris
Bahasa inggrisBahasa inggris
Bahasa inggris
 
Security firewall 2
Security firewall 2Security firewall 2
Security firewall 2
 
Security firewall 1
Security firewall 1Security firewall 1
Security firewall 1
 
Pengetahuan dasar komputer
Pengetahuan dasar komputerPengetahuan dasar komputer
Pengetahuan dasar komputer
 
Manajemen sumber-daya-manusia
Manajemen sumber-daya-manusiaManajemen sumber-daya-manusia
Manajemen sumber-daya-manusia
 
Teori motivasi
Teori motivasiTeori motivasi
Teori motivasi
 
Manajemen umum bab 1
Manajemen umum bab 1Manajemen umum bab 1
Manajemen umum bab 1
 
Bab iv stafing
Bab iv stafingBab iv stafing
Bab iv stafing
 
Bab iii organizing
Bab iii organizingBab iii organizing
Bab iii organizing
 
Bab ii perencanaan
Bab ii perencanaanBab ii perencanaan
Bab ii perencanaan
 
Bab 1 ruang lingkup
Bab 1  ruang lingkupBab 1  ruang lingkup
Bab 1 ruang lingkup
 
1 manajemen-dan-ruang-lingkupnya
1 manajemen-dan-ruang-lingkupnya1 manajemen-dan-ruang-lingkupnya
1 manajemen-dan-ruang-lingkupnya
 
Manajemen sumber-daya-manusia
Manajemen sumber-daya-manusiaManajemen sumber-daya-manusia
Manajemen sumber-daya-manusia
 

Logika dan algoritma stmik terbaru

  • 1. LOGIKA & ALGORITMA By : Anton Sukamto Anton.sukamto74 gmail.com
  • 2. 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.
  • 3. 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.
  • 4. Mata Kuliah Logika Menimbulkan Kesadaran Kita Untuk Menggunakan Prinsip - Prinsip Berfikir Secara Sistematis
  • 5. 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.
  • 6. 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
  • 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 2 buah gelas. Satu berisi teh dan satunya berisi kopi. Bagaimana caranya menukar isi masing- masing gelas ? TEH KOPI
  • 10. 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
  • 11. 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
  • 12. LA TIH AN 10111 OR 111  11111 XOR 1101  11101 AND 1101 
  • 13. FLOWCHART Sebelum membuat suatu program sebaiknya dibuat suatu urutan langkah logika ke dalam flowchart ( bagan alur)
  • 14. Flowchart • Bagan-bagan yang mempunyai arus • Menggambarkan langkah-langkah penyelesaian suatu masalah • Merupakan salah satu cara penyajian algoritma 14
  • 15. Tujuan • Menggambarkan suatu tahapan penyelesaian masalah • Secara sederhana, terurai, rapi dan jelas • Menggunakan simbol-simbol standar 15
  • 16. Model / Jenis Flowchart • System Flowchart • Program Flowchart 16
  • 17. 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
  • 18. 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
  • 19. 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
  • 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 • 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
  • 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 / 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
  • 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 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
  • 29. Start Read A Read B Y Cetak A A>B T Cetak B End 29
  • 30. 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
  • 31. Baca X L  INT (X/12) S  X – L * 12 P  5000 * L + 1000* S Cetak P End 31
  • 32. STUDI KASUS 3 Buatlah flowchart ( 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 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
  • 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 ALUR UNTUK 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 tanda yang menyerupai (pseudo) atau merupakan pejelasan cara menyelesaikan suatu masalah. Pseudo-code sering digunakan oleh manusia untuk menuliskan algoritma. 43
  • 44. STUDI KASUS 7 Mencari bilangan terbesar dari dua bilangan yang diinputkan 44
  • 45. 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
  • 46. 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
  • 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 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
  • 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’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
  • 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 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
  • 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