Popular Posts

Software Engineering

Materi Pemrograman Dasar

1)       Pengertian Algoritma
Pandangan mengenai komputer sebagai sebuah mesin yang “pintar” adalah pandapat yang salah, karena komputer hanyalah suatu alat yang diberi serangkaian perintah oleh manusia sehingga dapat menyelesaikan permasalahan secara cepat, akurat, bahkan berulang-ulang tanpa kenal lelah dan bosan. Sekumpulan instruksi yang merupakan penyelesaian masalah itu dinamakan program. Agar program dapat dilaksanakan oleh komputer, program tersebut harus ditulis dalam suatu bahasa yang dimengerti oleh komputer. Bahasa komputer yang digunakan dalam menulis program dinamakan bahasa pemrograman. Urutan langkah-langkah yang sistematis untuk menyelesaikan sebuah masalah dinamakan algoritma. Jadi algoritma adalah urutan logis pengambilan keputusan untuk pemecahan masalah. Kata logis merupakan kata kunci. Langkah-langkah tersebut harus logis, ini berarti nilai kebenarannya harus dapat ditentukan, benar atau salah. Langkah-langkah yang tidak benar dapat memberikan hasil yang salah. Sebagai contoh tinjau persoalan mempertukarkan isi dua buah bejana, A dan B. Bejana A berisi larutan yang berwarna merah, sedangkan bejana B berisi air berwarna biru. Kita ingin mempertukarkan isi kedua bejana itu sedemikian sehingga bejana A berisi larutan berwarna biru dan bejana B berisi larutan berwarna merah. Ada 2 algoritma untuk menyelesaikan permasalahan tersebut, yaitu :
a)    Algoritma yang pertama, ada dua langkah :
(1)       Tuangkan larutan dari bejana A ke dalam bejana B
(2)       Tuangkan larutan dari bejana B ke dalam bejana A
Algoritma tukar isi bejana di atas tidak menghasilkan pertukaran yang benar, karena langkah-langkahnya tidak logis sehingga yang terjadi adalah percampuran keduanya.
b)    Algoritma yang kedua, ada 3 langkah :
(1)       Tuangkan larutan dari bejana A ke dalam bejana C
(2)       Tuangkan larutan dari bejana B ke dalam bejana A
(3)       Tuangkan larutan dari bejana C ke dalam bejana B
Sekarang, dengan algoritma tukar isi bejana yang sudah diperbaiki ini, isi bejana A dan B dapat dipertukarkan dengan benar.
Dari kedua contoh algoritma di atas dapat diambil 2 pesan penting. Pertama, algoritma harus benar. Kedua, algoritma harus berhenti, dan setelah berhenti, algoritma memberi hasil yang benar.
2)       Pengertian Pemrograman
Komputer hanyalah salah satu pemroses. Agar dapat dilaksanakan oleh komputer, algoritma harus ditulis dalam notasi bahasa pemrograman sehingga dinamakan program. Jadi program adalah perwujudan atau implementasi algoritma yang ditulis dalam bahasa pemrograman tertentu sehingga dapat dilaksanakan oleh komputer. Program ditulis dalam salah satu bahasa pemrograman, dan kegiatan membuat program disebut pemrograman (programmming). Orang yang menulis program disebut pemrogram (programmer). Tiap-tiap langkah di dalam program disebut pernyataan atau instruksi.  Jadi, program tersusun atas sederetan instruksi. Bila suatu instruksi dilaksanakan, maka operasi-operasi yang bersesuaian dengan instruksi tersebut dikerjakan oleh komputer.
3)       Mekanisme Pelaksanaan Algoritma oleh Pemroses
Secara garis besar komputer tersususn atas empat komponen utama: piranti masukan, piranti keluaran, unit pemroses utama dan memori.  Unit pemroses utama (Central Processing Unit – CPU) adalah “otak” komputer, yang berfungsi mengerjakan operasi-operasi dasar seperti operasi perbandingan, operasi perhitungan, operasi membaca dan operasi menulis. Memori adalah komponen yang berfungsi menyimpan atau mengingat-ingat.Yang disimpan di dalam memeori adalah program (berisi operasi-operasi yang akan dikerjakan oleh CPU) dan data atau informasi (sesuatu yang diolah oleh operasi-operasi). Piranti masukan atau keluaran (I/O devices) adalah alat yang memasukkan data atau program kedalam memori, dan alat yang digunakan komputer untuk mengkomunikasikan hasil-hasil aktivitasnya.  Contoh piranti masukan adalah : keyboard, mouse, scanner dan disk. Contoh alat keluaran adalah : monitor, printer, plottter dan disk.
4)       Bahasa Pemrograman
Saat ini kita dapat berkomunikasi dengan komputer dengan menggunakan bahasa yang kita mengerti. Hal ini dapat kita lakukan karena para ahli telah berhasil membuat kamus yang disebut dengan bahasa pemrograman yang akan menterjemahkan bahasa yang kita buat menjadi bahasa mesin, kamus ini disebut dengan Compiler. Proses penterjemahan bahasa manusia ke bahasa mesin disebut dengan kompilasi. Adapaun bahasa-bahasa pemrograman tersebut antara lain :

Bahasa Pemrograman
Tipe
Dibuat
FORTRAN
Prosedural
1950
BASIC
Prosedural
1960
LISP
Fungsional
1950
Prolog
Deklaratif
1970
Ada
Prosedural
1970
SmalTalk
Berorientasi Objek
1970
Pascal
Prosedural
1970
C
Prosedural
1970
C++
Berorientasi Objek
1980
         
5)       Dasar-dasar Algoritma
a)        Proses, Instruksi dan Aksi
Pada dasarnya, sebuah algoritma merupakan deskripsi pelaksanaan suatu proses. Algoritma disusun oleh sederetan langkah instruksi yang logis. Tiap langkah instruksi tersebut melakukan suatu tindakan atau aksi. Bila suatu aksi dilaksanakan, maka sejumlah operasi yang bersesuaian dengan aksi itu dikerjakan oleh pemroses. Efek dari pengerjaan suatu aksi dapat diamati dengan membandingkan keadaan pada saat aksi belum dimulai, t0, dan keadaan pada saat aksi selesai dikerjakan, t1.
To      : Keadaan sebelum aksi dikerjakan
                             Aksi
T1      : Keadaan setelah aksi dikerjakan
Sebagai contoh, tinjau kembali algoritma yang menggambarkan proses mempertukarkan larutan dari dua buah bejana A dan B. Pada setiap pelaksanaan aksi kita amati keadaan awal dan keadaan akhirnya.
To   : bejana A berisi larutan berwarna merah,    bejana B berisi larutan berwarna biru (bejana C masih kosong).
          (1)     Tuangkan larutan dari bejana A ke dalam bejana C
T1     : bejana A kosong, bejana C berisi larutan berwarna        
           Merah

To   : bejana A kosong,  bejana B berisi larutan berwarna biru.
          (2)      Tuangkan larutan dari bejana B ke dalam bejana A
T1     : bejana A berisi larutan berwarna  biru, bejana B kosong

To   : bejana B kosong,  bejana C berisi larutan berwarna merah.
          (3)       Tuangkan larutan dari bejana C ke dalam bejana B
T1     : Bejana B berisi larutan berwarna  merah, bejana A sudah berisi larutan berwarna biru (bejana C  kosong).
Keadaan awal dan keadaan akhir algoritma dapat dijadikan acuan bagi pemrogram dalam merancang suatu algoritma. Keadaan akhir mencerminkan hasil yang diinginkan dari sebuah keadaan awal. Algoritma berisi langkah-langkah pencapaian keadaan akhir dari keadaan awal yang didefinisikan.
Tahap-tahap penyusunan algoritma seringkali dimulai dari langkah yang global lebiha dahulu. Langkah global ini diperhalus sampai ke langkah yang lebih rinci. Pendekatan desain algoritma seperti ini dinamakan perancangan puncak turun (top-down design). Cara pendekatan seperti ini angat bermanfaat dalam membuat algoritma untuk masalah yang cukup rumit atau kompleks.
b)       Struktur Dasar Algoritma
Algoritma berisi langkah-langkah penyelesaian suatu masalah. Langkah-langkah tersebut dapat berupa runtunan aksi, pemilihan aksi dan pengulangan aksi. Ketiga jenis langkah tersebut membentuk konstruksi suatu algoritma. Jadi, sebuah algoritma dapat dibangun dari 3 buah struktur dasar, yaitu :
(1)  Runtunan (sequence)
(2)  Pemilihan (selection)
(3)  Pengulangan (repetition)
c)        Runtunan
Sebuah runtunan terdiri dari satu atau lebih instruksi. Tiap instruksi dikerjakan secara berurutan sesuai dengan urutan penulisannya. Urutan instruksi menentukan keadaan akhir dari suatu algoritma. Bila urutannya diubah, maka hasil akhirnya mungkin juga akan berubah.
d)       Pemilihan
Ada kalanya sebuah instruksi dikerjakan jika kondisi tertentu dipenuhi. Penulisan pemilihan secara umum :
If kondisi then
          Aksi
Dalam bahasa indonesia, if berarti “jika” dan then  artinya “maka”. Kondisi adalah persyaratan yang dapat bernilai salah atau benar. Aksi hanya dilakukan jika kondisi bernilai benar. Perhatikan kata yang digarisbawahi, if dan then merupakan kata kunci(keywords) untuk struktur pemilihan ini. Dalam kehidupan sehari-hari, kita sering menuliskan pernyataan tindakan bila suatu persyaratan dipenuhi. Misalnya :
                   If Zaki memperoleh juara kelas then
                             Ayah akan membelikannya sepeda
                   If jalan panenan macet then
                             Ambil alternatif jalan dipati ukur
Struktur pemilihan if-then hanya memberikan satu pilihan aksi jika kondisi dipenuhi (bernilai benar), dan tidak memberi pilihan aksi lain jika bernilai salah. Bentuk pemilihan yang lebih umum ialah memilih satu dari dua buah aksi bergantung pada nilai kondisinya :
                   If kondisi then
                             Aksi 1
                   Else
                             Aksi 2
Else artinya “kalau tidak”. Bila kondisi bernilai benar, aksi 1 akan dikerjakan, tetapi kalau tidak, aksi 2 yang akan dikerjakan. Misalnya pada pernyataan berikut :
                   If hari hujan then
                             Pergilah dengan naik beca
                   Else
                             Pergilah dengan naik motor
Jika kondisi “hari hujan” bernilai benar, maka aksi “pergilah dengan naik beca” dilakukan, sebaliknya aksi “pergilah dengan naik motor” akan dilakukan jika “hari hujan” tidak benar.
e)        Pengulangan
Salah satu kelebihan komputer adalah kemampuannya untuk melakukan melakukan pekerjaan yang sama berulang kali tanpa mengenal lelah. Struktur pengulangan disebut kalang (loop), dan bagian algoritma yang diulang (aksi) dinamakan badan kalang (loop body).
6)       Struktur Program Bahasa Pascal dan Bahasa C
a)    Algoritmik
Algoritma nama_algoritma
{kepala algoritma berisi penjelasan seperlunya}
Deklarasi {berisi variabel yang terlibat}
Deskripsi {berisi detail algoritma}

b)    Bahasa Pascal
            Program nama_program;
            [deklarasi label]
          [deklarasi konstan]
[deklarasi tipe]
[deklarasi variable]
[deklarasi subprogram]
Begin
            Pernyataan;
          ……
          Pernyataan
End.              
c)    Bahasa C
            #include <stdio.h>
            [deklarasi subprogram]
          Main()
            {
                        [deklarasi variabel]
                   Pernyataan;
                   ……
                   Return 0;
            }
7)       Variabel
Variabel (perubah) merupakan suatu nama yang menyiratkan lokasi memori komputer yang dapat digunakan untuk menyimpan nilai, dimana isinya dapat diubah-ubah. Variabel dapatdipandang sebagai abstraksi dari lokasi. Hasil evaluasi dari variabel adalah nilai dari variabel itu. Nilai dari suatu variabel dapat diubah dengan assignment statement. Sebuah assignment statement terdiri dari sebuah variabel di sebelah kirinya dan suatu ekspresi disebelah kanannya.

          Algoritmik
Bahasa Pascal
Bahasa C
Deskripsi
  Jumlah ß B1 + B2

Jumlah := B1 + B2

Jumlah = B1 + B2


       Variabel jumlah diubah nilainya menjadi nilai dari ekspresi B1 + B2 setelah dievaluasi. Dalam suatu program Pascal maupun C, setiap variabel yang akan digunakan terlebih dahulu dideklarasikan, dimana setiap variabel harus mempunyai tipe. Deklarasi variabel berguna untuk memberi informasi kepada compiler serta membantu programmer untuk berpikir secara jelas dan berencana.

          Algoritmik
Bahasa Pascal
Bahasa C
Deklarasi    B1,B2,jumlah:integer
Var  B1,B2,jumlah:integer;

Int B1,B2,jumlah;
         
       Aturan penamaan suatu variabel
a)         Pada bahasa pascal penulisan dengan huruf besar dan kecil tidak dibedakan, sedangkan pada bahasa C dibedakan (Case Sensitif).
b)        Boleh terdiri dari angka dengan syarat penulisannya setelah huruf, misal :
Umur31
Sepeda3
c)         Tidak boleh mengandung spasi, terdiri dari underscore (karakter _), misal :
Suhu_ruang (boleh)
Suhu ruang (tidak boleh)
SuhuRuang (boleh)
d)        Tidak boleh ada 2 atau lebih nama yang sama
e)         Tidak boleh menggunakan reserved word (kata kunci),   misal :
Ø  Dalam pascal : program, end, begin, var, dll
Ø  Dalam C         : #include, void, dll
8)       Konstanta
Variabel yang mempunyai nilai yang sifatnya tidak bisa diubah, nilai ditentukan pada saat pendefinisian. Misal :
          <nama konstanta1> = <nilai1>;
          Phi = 3.14;
9)       Jenis/Tipe Data
Pada waktu suatu variabel dideklarasikan, maka tipenya sekaligus ditentukan. Tipe dari suatu variabel menyatakan :
a)         Jenis nilai yang dapat disimpan dalam lokasi memori untuk variabel tersebut, (membatasi himpunan nilai-nilai yang dapat dipunyai variabel tersebut).
b)        Jenis operasi yang dapat dilakukan terhadap variabel bersangkutan.
10)    Ekspresi Matematika
Ekspresi matematika adalah kalimat matematika yang akan memberikan nilai jika dievaluasi.
a)         Ekspresi aritmatika : Suatu ekspresi matematika yang memberikan hasil bertipe angka jika dievaluasi. Operator yang digunakan : +, -, *, /, (, )
Contoh :
Ø   6 * 5 + 7   à 37
Ø   4 * 6 / 3    à 8
b)        Ekspresi Logika : Suatu ekspresi matematika yang memberikan hasil berupa nilai kebenaran (benar/salah, true/false). Operator yang digunakan :
(1)      Perbandingan : =, <, >, <=, >=, <>
(2)      Logika             : and, or
Contoh :
Ø   True and true  à true
Ø   True and false à false
Ø   (4<=5) and (5>=1)
Ø   True and true  à true
11)  Prioritas Operator
Sebuah ekspresi matematika yang terdiri dari beberapa operator, beberapa operator dievaluasi terlebih dahulu dibandingkan operator yang lain. Sebuah operator didahulukan berarti mempunyai prioritas lebih tinggi. Urutan prioritas :
a)         Operator aritmatika
b)        Operator logika dan perbandingan
Contoh : 2 + 5 <= 5 + 7
              à 7 <= 12
              à true
Urutan prioritas operator aritmatika :
a)         *, /
b)        +, -
Jika 2 operator mempunyai prioritas sama, maka yang paling kiri didahulukan.
Contoh :
Ø  7 + 5 * 6 – 10     à 7 + 30 – 10    à 37 -10   à 27
Ø  (4 + 5) / (2 + 1)   à 9 / 3              à 3
(Ekspresi yang terletak dalam tanda kurung harus didahulukan).

          Aritmatika
Arti
Pascal
C
+
Penjumlahan
+
+
-
Pengurangan
-
-
div
Pembagian integer
div
/
modulo
Sisa pembagian
mod
%

Dalam bahasa pascal dan bahasa C, pernyataan yang berkaitan dengan operasi dasar adalah sebagai berikut :

Pernyataan
Algoritmik
Pascal
C
Input
read
read atau readln
scanf
output
write
write atau writeln
printf
Penugasan
ß
:=
=
Akhir pernyataan

;
;
 Fungsi yang sering digunakan :
Pascal
C
Arti
Sqr
Pow
Kuadrat
Sqrt
Sqrt
Akar kuadrat
Ln
Log
Logaritma alami
Exp
Exp
eksponensial

12)    Flowchart
Flowchart atau diagram alir merupakan sebuah diagram dengan simbol-simbol grafis yang menyatakan aliran algoritma atau proses yang menampilkan langkah-langkah yang disimbolkan dalam bentuk kotak, beserta urutannya dengan menghubungkan masing masing langkah tersebut menggunakan tanda panah.



0 komentar:

Posting Komentar