algoritma pemrograman 1a**ahmad_hidayat.staff.gunadarma.ac.id/downloads/files... · banyak...

34
ALGORITMA PEMROGRAMAN 1A** (PP-011302:S1-KA) Pertemuan 1 & 2 Ahmad hidayat

Upload: others

Post on 02-Oct-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: ALGORITMA PEMROGRAMAN 1A**ahmad_hidayat.staff.gunadarma.ac.id/Downloads/files... · Banyak instruksinya berhingga 2. Tidak ada keraguan / harus jelas 3. Terstruktur Rangkaian proses

ALGORITMA PEMROGRAMAN 1A**(PP-011302:S1-KA)Pertemuan 1 & 2

Ahmad hidayat

Page 2: ALGORITMA PEMROGRAMAN 1A**ahmad_hidayat.staff.gunadarma.ac.id/Downloads/files... · Banyak instruksinya berhingga 2. Tidak ada keraguan / harus jelas 3. Terstruktur Rangkaian proses

What is?

2

Komputer Algoritma Program Komputer

Page 3: ALGORITMA PEMROGRAMAN 1A**ahmad_hidayat.staff.gunadarma.ac.id/Downloads/files... · Banyak instruksinya berhingga 2. Tidak ada keraguan / harus jelas 3. Terstruktur Rangkaian proses

Komputer

Alat elektronik untuk menunjang ilmu pengetahuan dan

teknologi yang digunakan untuk memproses dan

menyiapkan data maupun informasi yang cepat dan akurat

dan juga dapat membantu memecahkan masalah.

3

Page 4: ALGORITMA PEMROGRAMAN 1A**ahmad_hidayat.staff.gunadarma.ac.id/Downloads/files... · Banyak instruksinya berhingga 2. Tidak ada keraguan / harus jelas 3. Terstruktur Rangkaian proses

Fokus utama program Komputer secara

umum

4

Page 5: ALGORITMA PEMROGRAMAN 1A**ahmad_hidayat.staff.gunadarma.ac.id/Downloads/files... · Banyak instruksinya berhingga 2. Tidak ada keraguan / harus jelas 3. Terstruktur Rangkaian proses

Algoritma

Algoritma adalah inti/jantung dari ilmu komputer.

Algoritma adalah urutan-urutan dari instruksi langkah-langkah untuk

menyelesaikan suatu masalah.

Algoritma adalah memperinci langkah-langkah proses pelaksanaan

dalam pemecahan suatu masalah.

Disusun sebelum membuat program/aplikasi.

5

Page 6: ALGORITMA PEMROGRAMAN 1A**ahmad_hidayat.staff.gunadarma.ac.id/Downloads/files... · Banyak instruksinya berhingga 2. Tidak ada keraguan / harus jelas 3. Terstruktur Rangkaian proses

1. Banyak instruksinya berhingga

2. Tidak ada keraguan / harus jelas

3. Terstruktur

Rangkaian proses yang berisi langkah-langkah dari suatu

algoritma yang akan diproses harus ditetapkan dengan

pasti, tidak berbelit-belit

4. Batasan dari input dan output Input harus sesuai dengan

jenis algoritma yang bersangkutan dan harus menghasilkan

output yang pasti.

5. Efektivitas & efisien

6. Batasan ruang lingkup

Sifat-sifat Algoritma

Page 7: ALGORITMA PEMROGRAMAN 1A**ahmad_hidayat.staff.gunadarma.ac.id/Downloads/files... · Banyak instruksinya berhingga 2. Tidak ada keraguan / harus jelas 3. Terstruktur Rangkaian proses

CONTOH Algoritma

Algoritma ketika ingin mengirimkan surat kepada teman, yaitu :

1. Tulis surat pada secarik kertas

2. Ambil sampul surat

3. Masukkan surat ke dalam amplop

4. Tutup amplop surat menggunakan perekat

5. Tempel perangko pada surat

6. Bawa surat ke kantor pos untuk di poskan

Page 8: ALGORITMA PEMROGRAMAN 1A**ahmad_hidayat.staff.gunadarma.ac.id/Downloads/files... · Banyak instruksinya berhingga 2. Tidak ada keraguan / harus jelas 3. Terstruktur Rangkaian proses

Contoh Algoritma Program

Prosedur untuk menyelesaikan masalah komputansi akar

bulat positif dari suatu bilangan bulat atau ( integer ) positif

a, yaitu :

Baca a

Masukan x sama dengan 1

Hitung y sebesar X*X

Jika y sama dengan a maka cetak x sebagai akar dari a.

Tambahkan x dengan 1

Pergi ke langkah 3

Page 9: ALGORITMA PEMROGRAMAN 1A**ahmad_hidayat.staff.gunadarma.ac.id/Downloads/files... · Banyak instruksinya berhingga 2. Tidak ada keraguan / harus jelas 3. Terstruktur Rangkaian proses

Prosedur dibentuk ke dalam Program

basic

10 INPUT A

20 X = 1

30 Y = X*X

40 IF Y = A THEN PRINT X : END

50 X = X + 1

60 GO TO 30

Page 10: ALGORITMA PEMROGRAMAN 1A**ahmad_hidayat.staff.gunadarma.ac.id/Downloads/files... · Banyak instruksinya berhingga 2. Tidak ada keraguan / harus jelas 3. Terstruktur Rangkaian proses

Program

sekumpulan instruksi/tugas yang disusun dengan urutan tertentuyang melakukan suatu pekerjaan dan dikenal/dimengerti olehkomputer.

Bahasa Pemrograman

Bahasa yang digunakan untuk membuat program.

Proses penterjemahan dapat dilakukan oleh :– Interpreter– Compiler

Pemrograman

Page 11: ALGORITMA PEMROGRAMAN 1A**ahmad_hidayat.staff.gunadarma.ac.id/Downloads/files... · Banyak instruksinya berhingga 2. Tidak ada keraguan / harus jelas 3. Terstruktur Rangkaian proses

1. Bahasa tingkat rendah (Low level language) : bahasa

yang berorientasi mesin. Ditulis dalam bentuk kode Hexa.

Bahasa mesin (machine language)

Bahasa rakitan (assembly language).

2. Bahasa tingkat tinggi (High level language) : bahasa yang

berorientasi kepada bahasa manusia

BASIC

Pascal

dll

Klasifikasi bahasa pemrograman :

Page 12: ALGORITMA PEMROGRAMAN 1A**ahmad_hidayat.staff.gunadarma.ac.id/Downloads/files... · Banyak instruksinya berhingga 2. Tidak ada keraguan / harus jelas 3. Terstruktur Rangkaian proses

Bagan-bagan/simbol-simbol yang mempunyai arus,

menggambarkan langkah-langkah penyelesaian suatu masalah.

Merupakan cara penyajian dari suatu algoritma.

Flowchart menolong analis dan programmer untuk memecahkan

masalah kedalam segmen-segmen yang lebih kecil dan menolong

dalam menganalisis alternatif-alternatif lain dalam pengoperasian.

Flowchart/Diagram Alir

Page 13: ALGORITMA PEMROGRAMAN 1A**ahmad_hidayat.staff.gunadarma.ac.id/Downloads/files... · Banyak instruksinya berhingga 2. Tidak ada keraguan / harus jelas 3. Terstruktur Rangkaian proses

Menggambarkan suatu tahapan penyelesaian masalah

menggunakan tampilan gambar simbol agar mudah

dipahami.

Secara sederhana, terurai, rapi dan jelas.

Menggunakan simbol-simbol standar.

Tujuan Membuat Flowchat

Page 14: ALGORITMA PEMROGRAMAN 1A**ahmad_hidayat.staff.gunadarma.ac.id/Downloads/files... · Banyak instruksinya berhingga 2. Tidak ada keraguan / harus jelas 3. Terstruktur Rangkaian proses

Jenis Flowchart

Flowchart Sistem (System Flowchart)

Flowchart Paperwork / Flowchart Dokumen

(Document Flowchart)

Flowchart Skematik (Schematic Flowchart)

Flowchart Program (Program Flowchart)

Flowchart Proses (Process Flowchart)

Page 15: ALGORITMA PEMROGRAMAN 1A**ahmad_hidayat.staff.gunadarma.ac.id/Downloads/files... · Banyak instruksinya berhingga 2. Tidak ada keraguan / harus jelas 3. Terstruktur Rangkaian proses

Flowchart Sistem merupakan bagan yang menunjukkan alur

kerja atau apa yang sedang dikerjakan di dalam sistem

secara keseluruhan dan menjelaskan urutan dari prosedur-

prosedur yang ada di dalam sistem.

Tidak digunakan untuk menggambarkan urutan langkah

untuk memecahkan masalah.

Hanya untuk menggambarkan prosedur dalam sistem yang

dibentuk.

Flowchart Sistem(System Flowchart)

Page 16: ALGORITMA PEMROGRAMAN 1A**ahmad_hidayat.staff.gunadarma.ac.id/Downloads/files... · Banyak instruksinya berhingga 2. Tidak ada keraguan / harus jelas 3. Terstruktur Rangkaian proses

Contoh Flowchart Sistem

Page 17: ALGORITMA PEMROGRAMAN 1A**ahmad_hidayat.staff.gunadarma.ac.id/Downloads/files... · Banyak instruksinya berhingga 2. Tidak ada keraguan / harus jelas 3. Terstruktur Rangkaian proses

Flowchart Program dihasilkan dari Flowchart Sistem.

Flowchart Program merupakan keterangan yang lebih rinci tentang

bagaimana setiap langkah program atau prosedur sesungguhnya

dilaksanakan. Flowchart ini menunjukkan setiap langkah program atau

prosedur dalam urutan yang tepat saat terjadi.

Programmer menggunakan flowchart program untuk menggambarkan

urutan instruksi dari program komputer.

Analis Sistem menggunakan flowchart program untuk menggambarkan

urutan tugas-tugas pekerjaan dalam suatu prosedur atau operasi.

Flowchart Program (Program Flowchart)

Page 18: ALGORITMA PEMROGRAMAN 1A**ahmad_hidayat.staff.gunadarma.ac.id/Downloads/files... · Banyak instruksinya berhingga 2. Tidak ada keraguan / harus jelas 3. Terstruktur Rangkaian proses

Conceptual flowchart, menggambarkan alur pemecahan

masalah secara global

Detail flowchart, menggambarkan alur pemecahan

masalah secara rinci

Dua jenis metode penggambaran

program flowchart

Page 19: ALGORITMA PEMROGRAMAN 1A**ahmad_hidayat.staff.gunadarma.ac.id/Downloads/files... · Banyak instruksinya berhingga 2. Tidak ada keraguan / harus jelas 3. Terstruktur Rangkaian proses

Contoh Flowchart Program

Page 20: ALGORITMA PEMROGRAMAN 1A**ahmad_hidayat.staff.gunadarma.ac.id/Downloads/files... · Banyak instruksinya berhingga 2. Tidak ada keraguan / harus jelas 3. Terstruktur Rangkaian proses

1. Flowchart digambarkan dari halaman atas ke bawah dan dari kiri ke kanan.

2. Aktivitas yang digambarkan harus didefinisikan secara hati-hati dan definisi iniharus dapat dimengerti oleh pembacanya.

3. Kapan aktivitas dimulai dan berakhir harus ditentukan secara jelas.

4. Setiap langkah dari aktivitas harus diuraikan dengan menggunakan deskripsikata kerja, misalkan MENGHITUNG PAJAK PENJUALAN.

5. Setiap langkah dari aktivitas harus berada pada urutan yang benar.

6. Lingkup dan range dari aktifitas yang sedang digambarkan harus ditelusuridengan hati-hati.

Percabangan-percabangan yang memotong aktivitas yang sedang digambarkantidak perlu digambarkan pada flowchart yang sama.

Simbol konektor harus digunakan dan percabangannya diletakan pada halamanyang terpisah atau hilangkan seluruhnya bila percabangannya tidak berkaitandengan sistem.

7. Gunakan simbol-simbol flowchart yang standar.

Pedoman-pedoman dalam membuatflowchart

Page 21: ALGORITMA PEMROGRAMAN 1A**ahmad_hidayat.staff.gunadarma.ac.id/Downloads/files... · Banyak instruksinya berhingga 2. Tidak ada keraguan / harus jelas 3. Terstruktur Rangkaian proses

1. Flow Direction Symbol Connecting Line symbol

Digunakan untuk menghubungkan simbol satu dengan yang lain

Disebut juga connecting line

2. Processing symbol

Menunjukan jenis operasi pengolahan dalam suatu proses / prosedur

3. Input/Output symbol

Menunjukkan jenis peralatan yang digunakan sebagai media input atau output.

Simbol-Simbol Flowchart

Page 22: ALGORITMA PEMROGRAMAN 1A**ahmad_hidayat.staff.gunadarma.ac.id/Downloads/files... · Banyak instruksinya berhingga 2. Tidak ada keraguan / harus jelas 3. Terstruktur Rangkaian proses

Flow Direction Symbol Connecting Line symbol

Page 23: ALGORITMA PEMROGRAMAN 1A**ahmad_hidayat.staff.gunadarma.ac.id/Downloads/files... · Banyak instruksinya berhingga 2. Tidak ada keraguan / harus jelas 3. Terstruktur Rangkaian proses

Processing symbol

Page 24: ALGORITMA PEMROGRAMAN 1A**ahmad_hidayat.staff.gunadarma.ac.id/Downloads/files... · Banyak instruksinya berhingga 2. Tidak ada keraguan / harus jelas 3. Terstruktur Rangkaian proses

Input/Output symbol

Page 25: ALGORITMA PEMROGRAMAN 1A**ahmad_hidayat.staff.gunadarma.ac.id/Downloads/files... · Banyak instruksinya berhingga 2. Tidak ada keraguan / harus jelas 3. Terstruktur Rangkaian proses

HIPO

(Hierarchy plus Input-Process-Output)

Merupakan alat dokumentasi program yang

dikembangkan dan didukung oleh IBM.

Tetapi kini HIPO juga telah digunakan sebagai alat bantu

untuk merancang dan mendokumentasikan siklus

pengembangan sistem

Page 26: ALGORITMA PEMROGRAMAN 1A**ahmad_hidayat.staff.gunadarma.ac.id/Downloads/files... · Banyak instruksinya berhingga 2. Tidak ada keraguan / harus jelas 3. Terstruktur Rangkaian proses

SASARAN HIPO

HIPO telah dirancang dan dikembangkan secara khusus

untuk menggambarkan suatu struktur bertingkat guna

memahami fungsi-fungsi dari modul-modul suatu sistem.

HIPO dirancang untuk menggambarkan modul-modul

yang harus diselesaikan oleh programer.

tidak digunakan untuk menunjukkan instruksi-instruksi

program yang akan digunakan.

HIPO menyediakan penjelasan yang lengkap dari input

yang akan digunakan, proses yang akan dilakukan serta

output yang diinginkan.

Page 27: ALGORITMA PEMROGRAMAN 1A**ahmad_hidayat.staff.gunadarma.ac.id/Downloads/files... · Banyak instruksinya berhingga 2. Tidak ada keraguan / harus jelas 3. Terstruktur Rangkaian proses

Diagram HIPO

HIPO menggunakan tiga macam diagram untuk masing-

masing tingkatannya, yaitu sebagai berikut :

1. Visual table of contents

2. Overview diagrams

3. Detail Diagram

Page 28: ALGORITMA PEMROGRAMAN 1A**ahmad_hidayat.staff.gunadarma.ac.id/Downloads/files... · Banyak instruksinya berhingga 2. Tidak ada keraguan / harus jelas 3. Terstruktur Rangkaian proses

Visual table of contentsDiagram ini menggambarkan

hubungan dari modul-modul

dalam suatu sistem secara

berjenjang

Page 29: ALGORITMA PEMROGRAMAN 1A**ahmad_hidayat.staff.gunadarma.ac.id/Downloads/files... · Banyak instruksinya berhingga 2. Tidak ada keraguan / harus jelas 3. Terstruktur Rangkaian proses

Overview diagrams

Overview diagrams digunakan untuk menunjukkan secara

garis besar hubungan dari input, proses dan output, dimana

bagian input menunjukkan item-item data yang akan

digunakan oleh bagian proses berisi langkah-langkah yang

menggambarkan kerja dari fungsi atau modul dan bagian

output berisi hasil pemrosesan data.

Page 30: ALGORITMA PEMROGRAMAN 1A**ahmad_hidayat.staff.gunadarma.ac.id/Downloads/files... · Banyak instruksinya berhingga 2. Tidak ada keraguan / harus jelas 3. Terstruktur Rangkaian proses

Detail Diagram Detail Diagram berisi elemen-elemen dasar dari paket yang

menggambarkan secara rinci kerja dari fungsi atau modul

Page 31: ALGORITMA PEMROGRAMAN 1A**ahmad_hidayat.staff.gunadarma.ac.id/Downloads/files... · Banyak instruksinya berhingga 2. Tidak ada keraguan / harus jelas 3. Terstruktur Rangkaian proses

DIA

Pencil

Star UML

Auto Cad

DLL

Aplikasi Pembuat Flowchart

Page 32: ALGORITMA PEMROGRAMAN 1A**ahmad_hidayat.staff.gunadarma.ac.id/Downloads/files... · Banyak instruksinya berhingga 2. Tidak ada keraguan / harus jelas 3. Terstruktur Rangkaian proses

Contoh Soal Flowchart:

Buatlah algoritma untuk menghitung sisa bagi antara

bilangan dengan 2, apakah sisa ataukah tidak sisa,jika sisa

maka maka cetak genap jika tidak sisa maka cetak ganjil.

Page 33: ALGORITMA PEMROGRAMAN 1A**ahmad_hidayat.staff.gunadarma.ac.id/Downloads/files... · Banyak instruksinya berhingga 2. Tidak ada keraguan / harus jelas 3. Terstruktur Rangkaian proses

Flowchart

Page 34: ALGORITMA PEMROGRAMAN 1A**ahmad_hidayat.staff.gunadarma.ac.id/Downloads/files... · Banyak instruksinya berhingga 2. Tidak ada keraguan / harus jelas 3. Terstruktur Rangkaian proses

Buat Kelompok sebanyak 6 buah, @ Kelompok 7-8 Orang

Buatlah Algoritma & Flowchart perhitungan luas, dan

keliling bangun datar.

• Persegi Panjang - Trapesium

• Segitiga - Belah ketupat

• Jajar Genjang - Lingkaran

Dimulai dari inputan hingga cetak hasil.

LATIHAN