Algoritma 1 pertemuan 1

32
Abu Ja’far Muhammad Ibnu Musa Al- Khuwarizmi

Transcript of Algoritma 1 pertemuan 1

Page 1: Algoritma 1 pertemuan 1

Abu Ja’far Muhammad Ibnu Musa Al-KhuwarizmiAbu Ja’far Muhammad Ibnu Musa Al-Khuwarizmi

Page 2: Algoritma 1 pertemuan 1

Berasal dari nama penulis buku arab yang terkenal yaitu Abu Ja’far Muhammad Ibnu Musa Al-Khuwarizmi.

Al-Khuwarizmi dibaca orang barat menjadi Algorism.

Karena perhitungan dengan angka Arab sudah menjadi hal yang biasa, maka lambat laun kata algorithm berangsur-angsur dipakai sebagai metode perhitungan (komputasi) secara umum, sehingga kehilangan makna kata aslinya.

Dalam bahasa Indonesia, kata algorithm diserap menjadi algoritma.

Page 3: Algoritma 1 pertemuan 1

“Algoritma adalah urutan langkah-langkah yang disusun secara logis dan sistematis”.

“Algoritma adalah urutan langkah-langkah memecahkan masalah [ MUN11 ] “

“Algoritma adalah deretan instruksi yg jelas untuk memecahkan masalah, yaitu untuk memperoleh keluaran yang di inginkan [ COR92 ] “

Page 4: Algoritma 1 pertemuan 1

“Algoritma adalah urutan langkah-langkah yang disusun secara logis dan sistematis”.

Perbedaannya dengan program, yaitu program merupakan kumpulan pernyataan komputer, sedangkan metode dan tahapan sistematis dalam program adalah algoritma. Program ditulis dengan menggunakan bahasa pemrograman. Jadi bisa disebut bahwa program adalah suatu implementasi dari bahasa pemrograman.

Beberapa pakar memberi formula bahwa: Program = Algoritma + Bahasa (Struktur Data)

Page 5: Algoritma 1 pertemuan 1

Diselesaikan

OlehKOMPUTER

Langkah-langkah harus tersusun secara

LOGISdan Efisienagar dapat menyelesaikan tugas dengan BENAR

dan Efisien.

ALGORITMAadalah langkah-langkah yang diambil dalam menyelesaikan suatu tugas

Page 6: Algoritma 1 pertemuan 1

TEKNIK,Karena Algoritma adalah suatu pekerjaan yang bersifat rancang bangun

Seni,karena Algoritma penuh

dengan kreativitas dan imajinasi yang jenius

ALGORITMAmerupakan gabungan antara SENI dan TEKNIK

Page 7: Algoritma 1 pertemuan 1

Dalam kehidupan sehari_hari kita banyak menemukan langkah_langkah pengerjaan sesuatu, meskipun kita tidak menyebutnya algoritma misalnya :

Resep membuat masakan Mengkatifkan vocher pulsa Panduan praktikum Menggunakan alat kerja dll

Page 8: Algoritma 1 pertemuan 1

Finiteness Algoritma harus berhenti after a finite number

of steps Definiteness

Setiap langkah harus didefinisikan secara tepat, tidak boleh membingungkan (ambiguous)

Input Sebuah algoritma memiliki nol atau lebih input

yang diberikan kepada algoritma sebelum dijalankan

Output Sebuah algoritma memiliki satu atau lebih

output, yang biasanya bergantung kepada input

Effectiveness Setiap algoritma diharapkan miliki sifat efektif

Page 9: Algoritma 1 pertemuan 1

Misalkan sisi sungai kita namakan A dan sisi sungai sebrangya kita namakan B. keadaanya awalnya, di sisi A ada pemuda (P), srigala (S), kambing (K), dan sayur (Y).

Keadaan akhir yang kita inginkan adalah di sisi B ada pemuda (P), srigala (S), kambing (K), dan sayur (Y),

Bagaimanakah algoritmanya ?

Page 10: Algoritma 1 pertemuan 1

Dalam bahasa natural (Bahasa Indonesia, Bahasa Inggris, dan bahasa manusia lainnya) Tapi sering membingungkan (ambiguous)

Menggunakan flow chart (diagram alir) Bagus secara visual akan tetapi repot kalau

algoritmanya panjang Menggunakan pseudo-code

Sudah lebih dekat ke bahasa pemrograman, namun sulit dimengerti oleh orang yang tidak mengerti pemrograman

Page 11: Algoritma 1 pertemuan 1

Buat sebuah algoritma untuk memilih bilangan terbesar dari 3 buah bilangan

Nantinya ini bisa digeneralisir menjadi n buah bilangan

Page 12: Algoritma 1 pertemuan 1

1. Ambil bilangan pertama dan set maks sama dengan bilangan pertama

2. Ambil bilangan kedua dan bandingkan dengan maks

3. Apabila bilangan kedua lebih besar dari maks, set maks sama dengan bilangan kedua

4. Ambil bilangan ketiga dan bandingkan dengan maks

5. Apabila bilangan ketiga lebih besar dari maks, set maks sama dengan bilangan ketiga

6. Variabel maks berisi bilangan terbesar. Tayangkan hasilnya

Page 13: Algoritma 1 pertemuan 1

Maks = bilangan pertama

Maks < bilangan kedua

Maks = bilangan kedua

Maks < bilangan ketiga

Maks = bilangan ketiga

Ya

Ya

Selesai

Mulai

Tidak

Tidak

Page 14: Algoritma 1 pertemuan 1

maks ← bilangan pertamaif (maks < bilangan kedua)maks ← bilangan kedua

if (maks < bilangan ketiga)maks ← bilangan ketiga

Page 15: Algoritma 1 pertemuan 1

LearningAlgorithms

bypractical ways

Page 16: Algoritma 1 pertemuan 1

Algoritmasecara Umum

A 5 B 4 T A + B WRITE(T)

Algoritma dalam Bahasa C

#include<stdio.h>void main(){ int A,B,T; A = 5; B = 4; T = A + B; printf(“%i”, T);}

Diketahui dua buah bilangan masing- masing bernilai 5 dan 4.Susun algoritma untuk mencetak total kedua buah bilangan tersebut.

#include<iostream.h>void main(){ int A,B,T; A = 5; B = 4; T = A + B; cout << T;}

Algoritma dalam Bahasa C++

Soal

Page 17: Algoritma 1 pertemuan 1

Algoritmasecara Umum

A 5 B 4 T A + B WRITE(T)

Dapat ditulis secara bebas asal dapat dimengerti oleh orang lain

A 5 B 4 T A + B WRITE(T)

Dapat diganti, misalnya dengan :

WRITE TPRINT ( T )PRINT TCETAK TTULIS TPrint TWrite Tdan sebagainyaasal dipahami

Dapat diganti misal :

A diisi 5

Seperti yang dicontohkan dalam buku

literatur

Page 18: Algoritma 1 pertemuan 1

Direncanakan yang

menyelesaikan tugas atau pekerjaan

tersebut adalah : KOMPUTER

ALGORITMAadalah langkah-langkah yang diambil dalam menyelesaikan suatu tugas

atau pekerjaan

A 5 B 4 T A + B WRITE(T)

ADA

4 LANGKAH

Satu langkah identik

dengan satu instruksi

Page 19: Algoritma 1 pertemuan 1

ALGORITMAadalah INSTRUKSI-INSTRUKSI yang diberikan kepada KOMPUTER untuk menyelesaikan suatu pekerjaan

SEHINGGA DAPAT DIKATAKAN :

Komputer memang dirancang untuk dapat

menerima dan melaksanakan instruksi

yang diberikan kepadanya

Page 20: Algoritma 1 pertemuan 1

Direncanakan yang

menyelesaikan tugas atau pekerjaan

tersebut adalah :

KOMPUTER

A 5 B 4 T A + B WRITE(T)

ALGORITMA YANG DITULIS

SEPERTI INI , TIDAK

DIPAHAMI OLEH KOMPUTER

Komputerhanya mengerti

bahasanya sendiriyang disebut

BAHASA MESIN

karena

Tidak disiapkan alat untuk menerjemahkan ALGORITMA

tersebut menjadi BAHASA MESIN

ALGORITMAadalah INSTRUKSI-INSTRUKSI yang diberikan kepada KOMPUTER untuk menyelesaikan suatu pekerjaan

Page 21: Algoritma 1 pertemuan 1

Algoritmasecara Umum

A 5 B 4 T A + B WRITE(T)

Algoritma dalam Bahasa C

#include<stdio.h>void main(){ int A,B,T; A = 5; B = 4; T = A + B; printf(“%i”, T);}

#include<iostream.h>void main(){ int A,B,T; A = 5; B = 4; T = A + B; cout << T;}

Algoritma dalam Bahasa C++

TIDAK DIMENGERTI OLEH KOMPUTER

DIMENGERTI OLEH KOMPUTER

karena

disiapkan atau disediakan ALAT PENERJEMAH nya menjadi BAHASA MESIN

Page 22: Algoritma 1 pertemuan 1

Algoritma dalam Bahasa C

#include<stdio.h>void main(){ int A,B,T; A = 5; B = 4; T = A + B; printf(“%i”, T);}

#include<iostream.h>void main(){ int A,B,T; A = 5; B = 4; T = A + B; cout << T;}

Algoritma dalam Bahasa C++

Agar dapat diterjemahkan menjadi BAHASA MESIN, maka ALGORITMA harus ditulis dalam suatu Bahasa Pemrograman (Programming Language)

Contoh : Bahasa C

Page 23: Algoritma 1 pertemuan 1

Program adalah instruksi yang di susun untuk menyelesaikan sebuah masalah dengan menggunakan komputer

Algoritma yg ditulis dalam bahasa komputer dinamakan program

Bahasa komputer yg digunakan dalam menulis program dinamakan bahasa pemrograman

Orang yg membuat program komputer disebut pemrogram

Dan kegiatan merancang dan menulis program disebut pemrograman

Aktivitas menulis kode program disebut coding

Page 24: Algoritma 1 pertemuan 1

Belajar memprogram berarti mempelajari metodologi pemecahan masalah kemudian menuliskan algoritma pemecahan masalah dalam notasi tertentu [ LIE96 ].

Sedangkan belajar bahasa pemrograman berarti belajar memakai suatu bahasa komputer, aturan tata bahasanya, instruksi-instruksinya, tata cara pengoperasianya tersebut untuk membuat program yg ditulisn hanya dalam bahasa itu saja [ LIE96 ]

Page 25: Algoritma 1 pertemuan 1

Mengerti persoalan yg akan di selesaikan Menganalisa persoalan ( diagram alur ) Menulis program Menguji program Meyimpan sebagai dokumentasi

Page 26: Algoritma 1 pertemuan 1

Kebenaran logika dan penulisanprogram harus memiliki ketepatan, ketelitian, dan kebenaran dalam perhitungan sehingga hasilnya dapat di percaya.

Waktu minimum untuk menulis programwaktu minimum adalah waktu yang harus di sediakan secara wajar untuk menyusun program dari awal hingga siap di operasikan

Page 27: Algoritma 1 pertemuan 1

Kecepatan maksimum eksekusi programkecepatan maksimum program dapat di tingkatkan dengan struktur program yang benar dan tepat.

Ekspresi penggunaan memoriuntuk dapat meminimumkan penggunaan memori , maka perlu di perhatikan, pengunaan tipe data yang cocok sesuai program dan hindari penggunaan yang berulang-ulang terhadap variabel berindeks.

Page 28: Algoritma 1 pertemuan 1

Kemudahan dan merawat dan mengembangkan programprogram hendaknya memiliki struktur pemrograman yang baik, struktur data yang jelas, dan dilengkapi dengan dokumentasi sehingga mudah untuk di pahami, diuji dan dikembangkan.

User friendlyprogram harus memiliki fasilitas-fasilitas yang memberikan kemudahan kepada penggunanya

Page 29: Algoritma 1 pertemuan 1

Portabilitas usahakan program yang di buat dapat di operasikan dengan berbagai jenis sistem operasi dan perangkat keras yang berbeda

Pemrograman modularmodul program adalah sekumpulan instruksi yang memiliki operasi-operasi dan data yang didefinisikan; memiliki struktur internal yang tidak tergantung pada subprogram yang lain dan merupakan satu kesatuan yang utuh yang akan di eksekusi secara berulang-ulang

Page 30: Algoritma 1 pertemuan 1

Pemrogram adalah orang yg bekerja menyusun suatu program untuk

menghasilkan program yang baik di butuhkan pemrogram yang baik dan

berkualitas. Mampu menyusun algoritma dengan baik Menguasai bahasa dan teknik penulisan

program dengan baik Dapat bekerja sama dalam team kerja Dapat bekerja secara efisien dan tepat

waktu

Page 31: Algoritma 1 pertemuan 1

MUN 2011 Algoritma dan Pemrograman

Algoritma dan Pemrograman; Teori dan Praktik dalam Pascal Edisi Kedua_Normal_bab 1

Ppt Dosen Korlap ibu Aulia

Page 32: Algoritma 1 pertemuan 1

Thank You

Percayalah semua pengorbanan yang kamu

Lakukan tidak akan pernah sia_SIAKARENA TUHAN MELIHAT ITU SEMUA