Algoritma 1 pertemuan 1

Preview:

Citation preview

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

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.

“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 ] “

“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)

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

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

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

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

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 ?

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

Buat sebuah algoritma untuk memilih bilangan terbesar dari 3 buah bilangan

Nantinya ini bisa digeneralisir menjadi n buah bilangan

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

Maks = bilangan pertama

Maks < bilangan kedua

Maks = bilangan kedua

Maks < bilangan ketiga

Maks = bilangan ketiga

Ya

Ya

Selesai

Mulai

Tidak

Tidak

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

if (maks < bilangan ketiga)maks ← bilangan ketiga

LearningAlgorithms

bypractical ways

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

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

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

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

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

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

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

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

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 ]

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

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

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.

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

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

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

MUN 2011 Algoritma dan Pemrograman

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

Ppt Dosen Korlap ibu Aulia

Thank You

Percayalah semua pengorbanan yang kamu

Lakukan tidak akan pernah sia_SIAKARENA TUHAN MELIHAT ITU SEMUA

Recommended