37
Andreas Hadiyono Refreshing Matkul Refreshing Matkul Algoritma Pemograman Algoritma Pemograman 1A 1A

Refreshing Matkul Algoritma Pemograman 1Aandre_hadiyono.staff.gunadarma.ac.id/Downloads... · 2 Algoritma “urutan langkah-langkah logis penyelesaian masalah yang disusun secara

  • Upload
    others

  • View
    20

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Refreshing Matkul Algoritma Pemograman 1Aandre_hadiyono.staff.gunadarma.ac.id/Downloads... · 2 Algoritma “urutan langkah-langkah logis penyelesaian masalah yang disusun secara

Andreas Hadiyono

Refreshing Matkul Refreshing Matkul Algoritma Pemograman Algoritma Pemograman

1A1A

Page 2: Refreshing Matkul Algoritma Pemograman 1Aandre_hadiyono.staff.gunadarma.ac.id/Downloads... · 2 Algoritma “urutan langkah-langkah logis penyelesaian masalah yang disusun secara

2

Algoritma

● “urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis dan logis”.

● Berasal dari nama penulis buku arab Abu Ja’far Muhammad Ibnu Musa Al-Khuwarizmi

● Merupakan jantung ilmu komputer atau informatika

● Harus dinyatakan dalam bentuk yang dimengerti oleh pemroses

Page 3: Refreshing Matkul Algoritma Pemograman 1Aandre_hadiyono.staff.gunadarma.ac.id/Downloads... · 2 Algoritma “urutan langkah-langkah logis penyelesaian masalah yang disusun secara

3

Belajar Memprogram vs Belajar Bahasa Pemrogaman

● Belajar memprogram :● Belajar tentang metodologi pemecahan masalah● Menuangkannya dalam suatu notasi tertentu

yang mudah dibaca dan dipahami● Belajar bahasa pemrograman :

● Belajar memakai suatu bahasa aturan-aturan tata bahasanya, instruksi-instruksinya, tata cara pengoperasian compiler-nya, dan memanfaatkan instruksi-instruksi tersebut untuk membuat program

Page 4: Refreshing Matkul Algoritma Pemograman 1Aandre_hadiyono.staff.gunadarma.ac.id/Downloads... · 2 Algoritma “urutan langkah-langkah logis penyelesaian masalah yang disusun secara

4

Page 5: Refreshing Matkul Algoritma Pemograman 1Aandre_hadiyono.staff.gunadarma.ac.id/Downloads... · 2 Algoritma “urutan langkah-langkah logis penyelesaian masalah yang disusun secara

5

Belajar Memprogram● Belajar memprogram ≠ belajar bahasa

pemrograman● Belajar tentang strategi pemecahan

masalah, metodologi dan sistematika pemecahan masalah kemudian menuliskannya dalam notasi yang disepakati bersama

● Bersifat pemahaman persoalan, analisis dan sintesis

● Titik berat : designer program

Page 6: Refreshing Matkul Algoritma Pemograman 1Aandre_hadiyono.staff.gunadarma.ac.id/Downloads... · 2 Algoritma “urutan langkah-langkah logis penyelesaian masalah yang disusun secara

6

Belajar Bahasa Pemrograman

● Belajar memakai suatu bahasa pemrograman, aturan sintaks, tatacara untuk memanfaatkan instruksi yang spesifik untuk setiap bahasa

● Titik berat : coder

Page 7: Refreshing Matkul Algoritma Pemograman 1Aandre_hadiyono.staff.gunadarma.ac.id/Downloads... · 2 Algoritma “urutan langkah-langkah logis penyelesaian masalah yang disusun secara

7

Produk yang dihasilkan pemrogram

● Program dengan rancangan yang baik (metodologis, sistematis)

● Dapat dieksekusi oleh mesin● Berfungsi dengan benar● Sanggup melayani segala

kemungkinan masukan● Disertai dokumentasi

Page 8: Refreshing Matkul Algoritma Pemograman 1Aandre_hadiyono.staff.gunadarma.ac.id/Downloads... · 2 Algoritma “urutan langkah-langkah logis penyelesaian masalah yang disusun secara

8

Penyajian Algoritma

● Natural Language● Flowchart● Pseudo-code● Diagram blok struktur program● Diagram warnier● Tabel keputusan dan pohon keputusan

Page 9: Refreshing Matkul Algoritma Pemograman 1Aandre_hadiyono.staff.gunadarma.ac.id/Downloads... · 2 Algoritma “urutan langkah-langkah logis penyelesaian masalah yang disusun secara

9

Contoh Algoritma

• Mengirimkan surat kepada teman :1. Ambil kertas surat2. Tulis surat3. Ambil amplop4. Masukan surat ke dalam amplop5. Tulis alamat pada amplop6. Tempel perangko7. Bawa ke kantor pos

Page 10: Refreshing Matkul Algoritma Pemograman 1Aandre_hadiyono.staff.gunadarma.ac.id/Downloads... · 2 Algoritma “urutan langkah-langkah logis penyelesaian masalah yang disusun secara

10

Menghitung luas persegi panjang

1. Input panjang2. Input lebar3. Luas panjang * lebar4. Print Luas

Page 11: Refreshing Matkul Algoritma Pemograman 1Aandre_hadiyono.staff.gunadarma.ac.id/Downloads... · 2 Algoritma “urutan langkah-langkah logis penyelesaian masalah yang disusun secara

11

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

Page 12: Refreshing Matkul Algoritma Pemograman 1Aandre_hadiyono.staff.gunadarma.ac.id/Downloads... · 2 Algoritma “urutan langkah-langkah logis penyelesaian masalah yang disusun secara

12

Start

Input

Proses

Output

End

Start

End

Input “Berapa data” ; N

Jml = 0

Input Bil

Next K

For K = 1 to N

Print “Jumlah = “; Jml

Jml = Jml + Bil

Page 13: Refreshing Matkul Algoritma Pemograman 1Aandre_hadiyono.staff.gunadarma.ac.id/Downloads... · 2 Algoritma “urutan langkah-langkah logis penyelesaian masalah yang disusun secara

13

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

Page 14: Refreshing Matkul Algoritma Pemograman 1Aandre_hadiyono.staff.gunadarma.ac.id/Downloads... · 2 Algoritma “urutan langkah-langkah logis penyelesaian masalah yang disusun secara

14

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

Page 15: Refreshing Matkul Algoritma Pemograman 1Aandre_hadiyono.staff.gunadarma.ac.id/Downloads... · 2 Algoritma “urutan langkah-langkah logis penyelesaian masalah yang disusun secara

15

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

Page 16: Refreshing Matkul Algoritma Pemograman 1Aandre_hadiyono.staff.gunadarma.ac.id/Downloads... · 2 Algoritma “urutan langkah-langkah logis penyelesaian masalah yang disusun secara

16

Processing Symbols● Simbol keying operation

● Menyatakan segal 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

Page 17: Refreshing Matkul Algoritma Pemograman 1Aandre_hadiyono.staff.gunadarma.ac.id/Downloads... · 2 Algoritma “urutan langkah-langkah logis penyelesaian masalah yang disusun secara

17

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

Page 18: Refreshing Matkul Algoritma Pemograman 1Aandre_hadiyono.staff.gunadarma.ac.id/Downloads... · 2 Algoritma “urutan langkah-langkah logis penyelesaian masalah yang disusun secara

18

Input / Output Symbols

● Simbol document● Mencetak keluaran dalam

bentuk dokumen (melalui printer)

● Simbol display● Mencetak keluaran dalam

layar monitor

Page 19: Refreshing Matkul Algoritma Pemograman 1Aandre_hadiyono.staff.gunadarma.ac.id/Downloads... · 2 Algoritma “urutan langkah-langkah logis penyelesaian masalah yang disusun secara

19

Contoh System Flowchart

Data jawaban ujian

Koreksi

Daftar Koreksi Data File

utama ujian

Periksa Ujian

Tabel Siswa

File siswa lulus

Laporan Hasil Ujian

Page 20: Refreshing Matkul Algoritma Pemograman 1Aandre_hadiyono.staff.gunadarma.ac.id/Downloads... · 2 Algoritma “urutan langkah-langkah logis penyelesaian masalah yang disusun secara

20

Kaidah Pembuatan Flowchart

Start

Input

Proses

Output

End

Page 21: Refreshing Matkul Algoritma Pemograman 1Aandre_hadiyono.staff.gunadarma.ac.id/Downloads... · 2 Algoritma “urutan langkah-langkah logis penyelesaian masalah yang disusun secara

21

Pengolahan dataSTART

READ

HABIS ?

PROCESS

WRITE

END

Tidak

Ya

Page 22: Refreshing Matkul Algoritma Pemograman 1Aandre_hadiyono.staff.gunadarma.ac.id/Downloads... · 2 Algoritma “urutan langkah-langkah logis penyelesaian masalah yang disusun secara

Original by Koko BachrudinCompiled by Andreas Hadiyono

Integrated Integrated Development Development

Environment(IDE)Environment(IDE)dan dan

Authoring Tool Authoring Tool Berbasis ObjectBerbasis Object

Page 23: Refreshing Matkul Algoritma Pemograman 1Aandre_hadiyono.staff.gunadarma.ac.id/Downloads... · 2 Algoritma “urutan langkah-langkah logis penyelesaian masalah yang disusun secara

Etoys

Page 24: Refreshing Matkul Algoritma Pemograman 1Aandre_hadiyono.staff.gunadarma.ac.id/Downloads... · 2 Algoritma “urutan langkah-langkah logis penyelesaian masalah yang disusun secara

Etoys

● Etoys is a child computer environment and object oriented prototype-based programing language for use in education

● Etoys is a media rich authoring environment with a scripted object model for many different objects that runs on different platforms and is free and open source.

Page 25: Refreshing Matkul Algoritma Pemograman 1Aandre_hadiyono.staff.gunadarma.ac.id/Downloads... · 2 Algoritma “urutan langkah-langkah logis penyelesaian masalah yang disusun secara

Etoys History

● Squeak was originally developed at Apple in 1996 by Dan Ingalls

● Squeak 4.0 is released under the MIT License, with some of the original Apple parts remaining under the Apache License. Contributions are required to be under MIT.

● Viewpoints Research Inc. supported Squeakland Foundation in 2009-2010, and in January of 2010, the Squeakland Foundation was launched as a separate entity

Page 26: Refreshing Matkul Algoritma Pemograman 1Aandre_hadiyono.staff.gunadarma.ac.id/Downloads... · 2 Algoritma “urutan langkah-langkah logis penyelesaian masalah yang disusun secara

Fitur

● didasarkan pada gagasan entitas virtual diprogram berperilaku pada layar komputer

● Code-less programing● Etoys menyediakan lingkungan authoring

media yang kaya dengan model, objek sederhana scripted untuk berbagai jenis objek yang dibuat oleh end-user

● Multi bahasa

Page 27: Refreshing Matkul Algoritma Pemograman 1Aandre_hadiyono.staff.gunadarma.ac.id/Downloads... · 2 Algoritma “urutan langkah-langkah logis penyelesaian masalah yang disusun secara

Platform

● Linux● Windows● MacOS X● Di situs resminya: “support hampir 20

jenis OS lain-nya”

Page 28: Refreshing Matkul Algoritma Pemograman 1Aandre_hadiyono.staff.gunadarma.ac.id/Downloads... · 2 Algoritma “urutan langkah-langkah logis penyelesaian masalah yang disusun secara

Kekurangan

● Perubahan batasan dan model implementasi masih membutuhkan pengertian algoritma

● Lisensi Source Code-nya proprietary

Page 29: Refreshing Matkul Algoritma Pemograman 1Aandre_hadiyono.staff.gunadarma.ac.id/Downloads... · 2 Algoritma “urutan langkah-langkah logis penyelesaian masalah yang disusun secara

Scratch

Page 30: Refreshing Matkul Algoritma Pemograman 1Aandre_hadiyono.staff.gunadarma.ac.id/Downloads... · 2 Algoritma “urutan langkah-langkah logis penyelesaian masalah yang disusun secara

Scracth

● Scratch is a programming language that allows people of any experience background and age to experiment with the concepts of fully versatile computer programming by using an alterable GUI

Page 31: Refreshing Matkul Algoritma Pemograman 1Aandre_hadiyono.staff.gunadarma.ac.id/Downloads... · 2 Algoritma “urutan langkah-langkah logis penyelesaian masalah yang disusun secara

Scratch History

It is developed by the Lifelong Kindergarten group at the MIT Media Lab by a team led by Mitchel Resnick and first appeared in the summer of

2007.

Page 32: Refreshing Matkul Algoritma Pemograman 1Aandre_hadiyono.staff.gunadarma.ac.id/Downloads... · 2 Algoritma “urutan langkah-langkah logis penyelesaian masalah yang disusun secara

Language and environment

● Scratch is used worldwide in many different settings: schools, museums, community centers, and homes. It is intended especially for 6- to 16-year-olds, but people of all ages have used Scratch

● main priority was to make the language and development environment intuitive and easily learned by children who had no previous programming experience.

Page 33: Refreshing Matkul Algoritma Pemograman 1Aandre_hadiyono.staff.gunadarma.ac.id/Downloads... · 2 Algoritma “urutan langkah-langkah logis penyelesaian masalah yang disusun secara

Environment Language

Page 34: Refreshing Matkul Algoritma Pemograman 1Aandre_hadiyono.staff.gunadarma.ac.id/Downloads... · 2 Algoritma “urutan langkah-langkah logis penyelesaian masalah yang disusun secara

Platform

● Windows● MacOS X● Linux

Page 35: Refreshing Matkul Algoritma Pemograman 1Aandre_hadiyono.staff.gunadarma.ac.id/Downloads... · 2 Algoritma “urutan langkah-langkah logis penyelesaian masalah yang disusun secara

Fitur

● didasarkan pada gagasan entitas virtual diprogram berperilaku pada layar komputer

● Pemrograman yang hampir code-less, tanpa meng-coding sama sekali

● Multi bahasa● Objek creator

Page 36: Refreshing Matkul Algoritma Pemograman 1Aandre_hadiyono.staff.gunadarma.ac.id/Downloads... · 2 Algoritma “urutan langkah-langkah logis penyelesaian masalah yang disusun secara

Kekurangan

● Perubahan batasan dan model implementasi masih membutuhkan pengertian algoritma

● Tidak memiliki fungsi Authoring tool seperti etoys

Page 37: Refreshing Matkul Algoritma Pemograman 1Aandre_hadiyono.staff.gunadarma.ac.id/Downloads... · 2 Algoritma “urutan langkah-langkah logis penyelesaian masalah yang disusun secara

TERIMA KASIH