Anda di halaman 1dari 28

Konsep Dasar

Algoritma dan pemrograman


Muhammad Sipan
Tujuan Instruksional Umum
• Mengerti dan memahami konsep dasar algoritma dan pemrograman
(flowchart, variabel, kostanta, nama dan type, struktur dasar logika,
input dan output, perulangan, percabangan dll).
• Mampu membuat flowchart dan mengaplikasikan dalam bahasa
pemrograman
• Mampu membuat program dengan software Visual C++
Materi Perkuliahan
1. Konsep dasar algoritma dan pemrograman (pengertian algoritma dan
pemrograman, tahapan pembuatan program, tahapan penyelesaian
permasalahan, struktur data algoritma, pedoman penyusunan algoritma.
2. Pengenalan C++ ( struktur program C++ dan Variabel)
3. Tipe data ( deklarasi dan konstanta, dan tipe data)
4. Operator dan statemen I/O(operator dan statemen I/O).
5. Pernyataan seleksi ( pernyataan if, if-else, case, switch).
6. Pernyataan pengulangan( statemen for, while, while-do, break dan continue,
goto).
7. Fungsi ( deklarasi fungsi, parameter, rekursi, dan fungsi-fungsi bawaan C++).
Materi Perkuliahan……………..Lanjutan
8. Array ( array, representasi array, array dimensi 1, …..multi dimensi)
9. Pengurutan data ( pengurutan data dan metode pengurutan data).
10. Pencarian data ( pencarian data dan metode pencarian data).
11. String ( deklarasi string, manipulasi string, dan string sebagai
parameter fungsi).
12. Struktur ( data struktur, mengakses anggota struktur, dan struktur
sebagai parameter fungsi).
13. Pointer ( deklarasi pointer, array pointer, dan string pointer).
14. Operasi file ( membuka, membaca, dan menutup file, dan file teks.
Daftar pustaka
• Jeri R. Hanly, Elliot B. Koffman, Problem Solving and Program Design in C. Addison
Wesley, 2002,3rd edition.
• Niklaus Wirth, Algorithms Data Structures Program. Prentice Hall, 1991.
• P.Deitel and H.Deitel, C++ How To Program. Pearson Education, 2008.
• Robert Sedgewick, ALGORITHMS. Addison-Wesley Publishing Company, 1983.
• Thomas H. Cormen, Charles E.Leiserson, and Ronald L. Rivest, Introduction to
Algorithms. McGraw-Hill, 2003.
• Paul Bradley, Fundamental of Algorithmics, 1996
• Abdul Kadir, Pemrograman C++, 1995
• Cormen, T.H. et al., 2003, Introduction to Algorithm, Edisi ke-2, MIT Press
• Sigit Wasista, Pemrograman Terstruktur, 2006
Sistem Penilaian
UAS : 40%
UTS : 30%
Tugas : 20%
Absensi : 5%
Tata tertib perkuliahan
• Mahasiswa wajib minimal menggunakan kaos berkerah dan
bersepatu. Selain diatas Wajib Keluar Kelas.
• Maksimal waktu keterlambatan 10 mnt, Lebih dari 10 mnt Diwajibkan
Mahasiswa tidak masuk kelas saja.
• Absensi Pembelajaran online di mulai jam kuliah dan diakhiri 30 menit
kemudian
Definisi Algoritma
• Urutan langkah-langkah untuk menyelesaikan masalah secara
sistematis dan logis atau spesifikasi urutan langkah untuk melakukan
pekerjaan tertentu.
• Tahapan sistematis dalam program, sedangkan program adalah
kumpulan pernyataan komputer.
Pemilihan Algoritma
• Algoritma haruslah benar
• Algoritma harus memberikan hasil yang baik
• Effisiensi algoritma, effisiensi waktu dan memori
Hal penting dalam membuat algoritma
• Teks algoritma berisi deskripsi langkah-2 penyelesaian masalah
• Tidak ada notasi baku dalam penulisan teks algoritma
• notasi algoritma disesuaikan dengan bahasa pemrograman
• Algoritma merupakan hasil pemikiran konseptual
Penyelesaian masalah dengan program

1. Menganalisa masalah dan membuat


program
• Menggunakan bahasa manusia
• Menggunakan Pseudocode
suatu bentuk algoritma yang menggunakan berbagai notasi, yang
bertujuan untuk menyederhanakan bentuk kalimat manusia
• Menggunakan Flowchart
Suatu standart untuk menggambarkan urutan langkah dalam suatu
proses.
2. Menuangkan algoritma kedalam bentuk program

#include<iostream.h>
void main()

{
int p, l, k;
cout <<"masukkan nilai p=";
cin>>p;
cout <<"masukkan nilai l=";
cin>>l;
k=2*(p+l);
cout <<"hasil keliling adalah = "<<k<<endl;

}
3. Mengeksekusi Program
Untuk mengetahui kebenaran dari program yang dibuat. Kemungkinan
kesalahan dalam proses kompilasi:
Kesalahan sintaksis: kesalahan penulisan
Kesalahan logika : kesalahan yang terjadi karena logika salah
Kesalahan runtime : kesalahan karena operasi dalam program tidak
dapat dilakukan oleh komputer
Menilai sebuah algoritma
• Realibility
• Pemrosesan yang efisien
• General
• Expandable
• Mudah dimengerti
• Portability
• Jumlah langkah atau instruksi berhingga
• Harus terminate
• Output yang dihasilkan tepat
FLOWCHART
• Gambaran atau bagan yang menggambarkan urutan proses.
• Bagan-bagan yang mempunyai arus yang menggambarkan langkah-
langkah penyelesaian suatu masalah.
• Merupakan cara penyajian dari suatu algoritma.
Dua Macam flowchart

1. System Flowchart
Urutan proses dalam system dengan
menunjukkan alat media input, output serta
jenis media penyimpanan dalam proses
pengolahan data.
2. Program Flowchart
Urutan instruksi yang digambarkan dengan simbol tertentu untuk
memecahkan masalah dalam program
Urutannya:
START
READ
PROSES
WRITE
END
Flow Direction Symbol (Penyambung Alur)

Simbol Connector
Untuk menyatakan jalannya arus suatu proses
Simbol Offline Connector
Untuk menyatakan sambungan dari satu proses ke proses lainnya
dalam halaman/lembar yang sama
Simbol arus / flow
Untuk menyatakan jalannya arus suatu proses
Processing Symbol (Simbol
Proses)
simbol proses
untuk menyatakan suatu tindakan (proses) yang dilakukan oleh
komputer
Simbol Manual
Untuk menyatakan suatu tindakan (proses) yang tidak dilakukan
oleh komputer
Simbol Decision / logika
Untuk menunjukkan suatu kondisi tertentu akan menghasilkan dua
kemungkinan jawaban, ya atau tidak
Simbol Predefined Proses
Untuk menyatakan penyediaan tempat penyimpanan suatu
pengolahan untuk memberi harga awal
Simbol Terminal
Untuk menyatakan permulaan atau akhir suatu program
Simbol Manual Input
Untuk memasukkan data secara manual dengan menggunakan
online keyboard
Input-Output Symbol
Simbol Input-Output
Untuk menyatakan proses input dan output tanpa tergantung
dengan jenis peralatannya
Simbol Punched Card
Untuk menyatakan input berasal dari kartu atau output ditulis
kekartu
Simbol Magnetic-tape unit
Untuk menyatakan input berasal dari pita magnetik atau output
disimpan kepita magnetic
Simbol Disk Storage
Untuk menyatakan input berasal dari disk atau output disimpan ke
disk
Simbol Document
Untuk mencetak laporan ke printer

Simbol Display
Untuk menyatakan peralatan output yang digunakan berupa layar
(video, komputer)
Contoh
Mencari akar bulat positif dari bilangan bulat positif (a)
• Masukkan bilangan positif a
• Berikan harga awal x sama dengan 1
• Hitung y sebesar x * x
• Jika y sama dengan a maka cetak x sebagai akar dari a. Selesai
• Tambahkan nilai x dengan 1
• Pergi kelangkah 3
Struktur Dasar Algoritma
• Struktur Runtutan (Sequence)
digunakan untuk program yang pernyataannya sequential atau berurutan
• Struktur Pemilihan (Selection)
digunakan untuk program yang menggunakan pemilihan atau penyeleksian kondisi
• Struktur Perulangan (Perulangan)
digunakan untuk program yang pernyataannya akan dieksikusi berulang-ulang
Contoh -2
• Buat algoritma untuk menentukan apakah suatu
bilangan merupakan bilangan ganjil atau
bilangan genap.
Algoritma:
1.Masukkan sebuah bilangan sembarang
2.Bagi bilangan tersebut dengan bilangan 2
3.Hitung sisa hasil bagi pada langkah 2
4.Bila sisa hasil bagi sama dengan 0 maka bilangan
itu adalah bilangan genap tetapi bila sisa hasil
bagi sama dengan 1 maka bilangan itu adalah
bilangan ganjil
Latihan Soal

1. Buatlah algoritma untuk menghitung luas dan keliling lingkaran


dengan masukan jari-jari lingkaran.
2. Buatlah flowchart dari algoritma tersebut
TERIMA KASIH
Materi Selanjutnya……………………
DASAR PEMROGRAMAN

Anda mungkin juga menyukai