ALGORITMA DAN PEMROGRAMAN
Deskripsi mata kuliah:
Mata kulaih ini memberikan dasar-dasar pembuatan dengan menggunakan:
1. Algoritma
2. Flowchart
3. Pseudocode
4. Pemrograman
Serta cara menganalisa dan menyelesaikan sebuah permasalahan.
1. Algoritma:
Susunan langkah-langkah untuk menyelesaikan suatu persoalan secara logis, efisien dan terstruktur.
- Logis = langkah-langkah tersebut benar
- efisien = setiap langkah langsung menuju ke tujuan
- terstruktur = langkah-langkah tersebut tersusun urut secara logis dan efisien
2. Flowchart:
Penggunaan algoritma menggunakan simbol-simbol khusus
3. Pseudocode:
Penulisan algoritma menggunakan serangkaian kata-kata menyerupai bahasa pemrograman komputer.
4. Pemrograman:
Kegiatan pembuatan program komputer untuk menyelesaikan persoalan tertentu.
Pengolahan Data:
Media input: mouse, keyboard, sensor
Input diproses menghasilkan Output
Program Komputer
1. Program
2. Pemrograman
3. Interpreter
4. Complier
5. Bahasa Pemrograman
6. Metode Pemrograman
1. Program : kumpulan intruksi yang disusun sedemikiannya agar komputer melakukan suatu tindakan tertentu.
2. Pemrograman : kegiatan pembuatan program komputer untuk menyelesikan persoalan tertentu.
3. Interpreter : metode penerjemaha kode program secara baris demi baris untuk kemudian langsung dikerjakan oleh komputer. Kesalahan yang terdapat dalam kode program akan menyebabkan proses terhenti di tengah jalan.
4. Complier : metode penerjemahan kode program secara ke seluruhan sebelum dikerjakan oleh komputer. Seluruh kode program sudah dipastikan dalam kondisi benar sebelum dikerjakan.
6. Metode Pemrograman : Teknik pembuatan program
- Lincar = spaghetti style. Go to
- Modularity = procedural
- Strutured = Go to
- Object oriented = object based
*Program
Definisi=kata,ekspresi,pernyataan,atau kombinasinya yang disusun dan dirangkai menjadi satu kesatuan prosedur (yang)
- Berupa urutan langkah menyelesaikan masalah (dan)
- Diimplementasikan dengan menggunakan bahasa pemrograman (sehingga)
- Dapat dieksekusi oleh komputer
*Pemrograman
Definisi=proses untuk mengimplomentasikan algoritma menjadi program
*pemrograman terstruktur
- pemrograman yang memiliki rancang bangun terstruktur dan tidak berbelit-belit (sehingga)
- mudah ditelusuri ,dipaham,dan dikembangkan oleh siapa saja
*bahasa pemrograman
Definisi: prosedur atau tatacara penulisan program
→ Dua faktor penting
- sinsaks, aturan gramasikal yang mengatur tata cara penulisan kata
- semantik,aturan untuk menyatakan suatu arti
→ fungsi:
- sebagai media untuk menyusuri dan memahami program
- sebagai alat komunikasi antara pembuat program (program)dengan komputer
- sebagai alat komunikasi antara orang yang satu dengan yang lain
→ klasifikasi
- tingkat rendah (low level language)
- tingkat menengah (middle level language)
- tingkat tinggi (wigh level language)
- berorientasi objek (object oriented language)
→ pendekatan bahasa pemrograman (anjuran)
- daerahpendekatan
· tipe data
· operator
· sintaks (tata tulis) statement
Pengolahan data
1. Tipe data
2. Variabel
3. Konstanta
4. Operator
5. Ekspresi
1.Tipe data
Data yang diproses oleh komputer ada 3 jenis :
1. numerik
2. karakter
3. logika
Pada dasarnya data yang diproses di dalam komputer berjenis numerik. Tipe data yang lain merupakan pengembangan dan interprestasi lain dari data bertipe numerik.
→ Tipe data numerik
-
-
→ Tipe Karakter
- karakter tunggal (char)
- deretan karakter (string)
→ Tipe logika
- status 0→salah
- status 1→benar
Sebuah data logika menggunakan 1byte memory. Ukuran memory dinyatakan dengan satuan byte 1byte=8BYTE
Pemilihan tipe data
1. Sesuaikan dengan jenis data yang akan diolah
Pilihlah tipe data sesuai dengan jenis data yang akan diolah. Analisa setiap jenis data yang akan diolah secara seksama tidak setiap data numerik ada kalanya data bertipe numerik akan diproses sebagai string. Misal : nomor telp, nomor induk mahasiswa dll.
2. Sesuaikan dengan kebutuhan memori
Pilihlah data yang sesuai dengan kebutuhan pengolahan data dan yang menggunakan memori secara efisien.
Sebagai contoh data numerik dengan tipe pecahan terbagi menjadi tipe float dan double. Kedua tipe data ini sama-sama mengolah data bilangan pecahan, tetapi berbeda dalam pemakaian memori karena range keduanya berbeda.
Variabel
1. Sebutan bagi lokasi memori yang digunakan untuk menyimpan data
2. Hanya bisa menyimpan sebuah data dengan tipe tertentu
3. Penyimpana data baru akan menghapus data lama
4. Selama proses berlangsung isi variabel bisa diubah-ubah
Penamaan Variabel
1. diawali dengan huruf kecil kata berikutnya diawali dengan huruf kapital
2. tidak boleh mengandung spasi atau simbol khusus seperti [ ] - = ?
3. lebih dari satu kata harus ditulis dempet
4. variabel string maupun char diakhiri dengan karakter $
Penamaan yang benar
- gaji
- total pendapatan
- nama $
- alamat $
Penamaan yang salah
- gaji (diawali dengan angka)
- total-pendapatan (ada minus)
- nama mahasiswa (ada spasi)
- alamat (ada minus)
Konstanta
→ Sebutan bagi lokasi memori yang digunakan untuk menyimpan data
→ Hanya bisa menyimpan sebuah data dengan tipe tertentu
→ Selama proses berlangsung isi konstanta tidak boleh berubah
Penamaan Konstanta
→ Diawali dengan huruf kapital
→ Idem variabel
Operator
→ Karakter khusus yang digunakan untuk melakukan proses tertentu
→ Memerlukan data untuk proses à disebut operand
→ Ada yang bersifat unary (membutuhkan/operand)
→ Ada yang bersifat binary(membutuhkan/operand)
Jenis-jenis Operator
1. Operator Matematika : digunakan untuk melakukan proses matematika
=: Pemberian nilai
*: Perkalian
/: Pembagian dll
2. Operator relasi : digunakan untuk melakukan proses perbandingan
=: persamaan
≠: pertidaksamaan
>: lebih dari
≥: lebih dari atau sama dengan
<: kurang dari
≤: kurang dari atau sama dengan
*pembacaan diawali dengan “apakah”
*hasil proses bernilai benar/salah
3. Operator Logika : digunakan untuk melakukan proses logika
AND : Logika DAN
OR : logika OR
Hasil proses akan bernilai satu: benar atau salah
Tabel Kebenaran Operator Logika
X
|
Y
|
X AND Y
|
X OR Y
|
I
|
I
|
I
|
I
|
I
|
0
|
0
|
I
|
0
|
I
|
0
|
I
|
0
|
0
|
0
|
0
|
Ekspresi (Pernyataan)
1. Ekspresi Matematika
2. Ekspresi Relasional
3. Ekspresi Logika
4. Elspresi Gabungan
Ekspresi (Pernyataan):
1. Ekspresi Matematika
3*4-5+2/52
Ekspresi ini diselesaikan dengan urutan sebagai berikut:
3x4-5+2/52
{(3x4)-5}+(2/52)
(12-5)+(2/25)
7+0,08
7,08
2. Ekspresi Relasional
· 10=3 → apakah 10 sama dengan 3?
· 10≠3 → apakah 10 tidak sama dengan 3?
· 10>3 → apakah 10 lebih dari 3?
· 10≥3 → apakah 10 lebih dari atau sama dengan 3?
· 10<3 → apakah 10 kurang dari 3?
· 10≤3 → apakah 10 kurang dari atau sama dengan 3?
3. Ekspresi Logika
· Cuaca-cerah And jalanan-ramai
· Ada angkutan OR ada tumpangan
4. Ekspresi Gabungan
Urutan proses: (x+y>z) AND (a*b<c)
- x+y dihitung dulu
- hasil perhitungan dibandingkan dengan z
- a*b dihitung dulu
- hasil perhitungan dibandingkan dengan c
- hasil perhitungan langkah 2&4 dikombinasikan dengan operator AND