Disusun Oleh :
NAMA : Dwi Dini Hariyati
NPM : 1614370052
KELAS :Reguler Pagi-B
KATA PENGANTAR
Alhamdulillah, puji syukur penulis haturkan kehadirat Allah SWT. Atas rahmat-Nya lah Penulis
dapat menyelesaikan makalah ini tepat pada waktunya. Tak lupa Penulis juga menghaturkan
terima kasih yang sebesar-besarnya kepada semua pihak yang telah mendukung dan membantu
Penulis dalam menyelesaikan makalah ini.
Dalam makalah yang berjudul ALGORITMA DAN PEMROGRAMAN ini, akan dibahas
mengenai pengertian Algoritma dan Pemrograman, sejarah Algoritma itu sendiri, kemudian
dasar-dasar pemrograman yang menjelaskan tentang variabel, tipe data, dan operatoryang
terdapat dalam bahasa pemrograman. Selain itu, untuk mempermudahpemahaman juga sebagai
bahan latihan, Penulis juga menyertakan contohprogram yang dapat dipraktekkan oleh para
pembaca.
Namun demikian, Penulis merasa masih banyak sekali kekurangan dalampenyusunan makalah
ini, sesuai dengan pepatah yang mengatakan bahwa tak adagading yang tak retak. Oleh karena
itu, segala saran dan kritik yang membangundari yang lebih berkompeten di bidang Algoritma
dan Pemrograman, penulis terima denganpenuh rasa terima kasih.
Akhir kata, Penulis berharap makalah ini dapat bermanfaat bagi parapembaca, khususnya bagi
yang akan mempelajari Algoritma dan Pemrograman.
DAFTAR ISI
KATA PENGANTAR.. ii
DAFTAR
ISI iii
BAB I PENDAHULUAN. 1
1.1.LATAR BELAKANG 1
1.2.TUJUAN 1
BAB 2
PEMBAHASAN
PENUTUP
3.1.KESIMPULAN.. 18
3.2.SARAN.. 18
DAFTAR PUSTAKA.
BAB 1
PENDAHULUAN
LATAR BELAKANG
Pesatnya teknologi, terutama teknologi komputer sudah tak bisa dipungkiri lagi, bagi yang
mengikuti perkembangannya, ia tidak akan dipandang sebelah mata. Sebaliknya, bagi yang tidak
mengikuti perkembangannya, bersiaplah untuk mundur secara suka rela dari panggung
kompetisi. Ibarat wabah, teknologi komputer sudah menyusupi hampir semua bidang kehidupan
manusia. Dari pemerintah pusat sampai tingkat pemerintah desa, perusahaan-perusahaan,
supermarket, minimarket, perguruan tinggi, SLTA, SLTP, bahkan SD hampir semuanya
mengenal komputer. Saat ini, yang mempunyai lingkungan yang semakin luas dan
banyak diminati, juga dapat digunakan untuk menghasilkan uang adalah dunia pemrograman
komputer. Dalam dunia pemrograman komputer, dikenal algoritma dan banyak bahasa
pemrograman, seperti C, C++, Pascal, Basic, Java, dan lain-lain. Oleh karena itulah, yang akan
dibahas dalam makalah ini adalah Algoritma dan Pemrograman.
TUJUAN
Makalah ini disusun dengan tujuan sebagai sarana untuk mengikuti pesatnya perkembangan
teknologi komputer di masa sekarang ini, salah satunya di dunia pemrograman yang sekarang
semakin banyak diminati. Selain itu, tujuan disusunnya makalah ini adalah untuk memenuhi
tugas matakuliah Pemrograman I, dikarenakan Penulis masih berstatus sebagai mahasiswa
Jurusan Teknik Informatika, Fakultas Teknik dan Ilmu Komputer,Universitas Indraprasta PGRI.
BAB II
PEMBAHASAN
2.1.
Ditinjau dari asal usul katanya kata Algoritma sendiri mempunyai sejarah yang aneh.
Oranghanya menemukan kata Algorism yang berarti proses menghitung dengan angka arab.
Andadikatakan Algorist jika anda menghitung menggunakan Angka Arab. Para ahli
bahasaberusaha menemukan asal kata ini namun hasilnya kurang memuaskan. Akhirnya para
ahlisejarah matematika menemukan asal kata tersebut yang berasal dari nama penulis bukuarab
yang terkenal yaitu Abu Jafar Muhammad Ibnu Musa Al-Khuwarizmi.
Al-Khuwarizmi dibaca orang barat menjadi Algorism. Al-Khuwarizmi menulis buku
yangberjudul Kitab Al Jabar Wal-Muqabala yang artinya Buku pemugaran dan
pengurangan(The book of restoration and reduction). Dari judul buku itu kita juga memperoleh
akarkata Aljabar (Algebra). Perubahan kata dari Algorism menjadi Algorithm muncul
karenakata Algorism sering dikelirukan dengan Arithmetic, sehingga akhiran sm berubah
menjadithm. Karena perhitungan dengan angka Arab sudah menjadi hal yang biasa. Maka
lambatlaun kata Algorithm berangsur-angsur dipakai sebagai metode perhitungan
(komputasi)secara umum, sehingga kehilangan makna kata aslinya. Dalam Bahasa Indonesia,
kataAlgorithm diserap menjadi Algoritma.
Bahasa Pemrograman merupakan notasi yang dipergunakan untuk mendeskripsikan proses
komputasi dalam format yang dapat dibaca oleh komputer dan manusia. Proses komputasi
umumnya didefinisikan secara formal menggunakan konsep matematika dari Mesin Turing. Pada
dasarnya bahasa Pemrograman dirancang untuk memfasilitasi komunikasi antara manusia
dengan komputer.
Sebuah bahasa pemrograman disebut Turing Complete jika dapat dipergunakan untuk
mendeskripsikan semua komputasi yang dapat dilakukan Mesin Turing, yaitu
memiliki variableinteger dan operator aritmatik, pernyataan penugasan, pernyataan
sekuensial, pernyataan seleksi, dan pernyataan iterasi.
2.2.
DEFINISI ALGORITMA
Algoritma adalah jantung ilmu komputer atau informatika. Banyak cabang ilmu computer yang
diacu dalam terminologi algoritma. Namun, jangan beranggapan algoritma selaluidentik dengan
ilmu komputer saja. Dalam kehidupan sehari-haripun banyak terdapatproses yang dinyatakan
dalam suatu algoritma. Cara-cara membuat kue atau masakan yangdinyatakan dalam suatu resep
juga dapat disebut sebagai algoritma. Pada setiap resep selaluada urutan langkah-lankah
membuat masakan. Bila langkah-langkahnya tidak logis, tidakdapat dihasilkan masakan yang
diinginkan. Ibu-ibu yang mencoba suatu resep masakanakan membaca satu per satu langkahlangkah pembuatannya lalu ia mengerjakan prosessesuai yang ia baca. Secara umum, pihak
(benda) yang mengerjakan proses disebutpemroses (processor). Pemroses tersebut dapat berupa
manusia, komputer, robot atau alatalatelektronik lainnya. Pemroses melakukan suatu proses
dengan melaksanakan ataumengeksekusi algoritma yang menjabarkan proses tersebut.
Melaksanakan Algoritma berarti mengerjakan langkah-langkah di dalam Algoritmatersebut.
Pemroses mengerjakan proses sesuai dengan algoritma yang diberikan kepadanya.Juru masak
membuat kue berdasarkan resep yang diberikan kepadanya, pianis memainkanlagu berdasarkan
papan not balok. Karena itu suatu Algoritma harus dinyatakan dalambentuk yang dapat
dimengerti oleh pemroses. Jadi suatu pemroses harus :
1. Mengerti setiap langkah dalam Algoritma.
2. Mengerjakan operasi yang bersesuaian dengan langkah tersebut.
2.2.2. Mekanisme Pelaksanan Algoritma Oleh Pemroses
Komputer hanyalah salah satu pemroses. Agar dapat dilaksanakan oleh komputer,algoritma
hasrus ditulis dalam notasi bahasa pemrograman sehingga dinamakan program.Jadi program
adalah prwujudan atau implementasi teknis Algoritma yang ditulis dalambahasa pemrogaman
tertentu sehingga dapat dilaksanakan oleh komputer.
2.2.3. Belajar Memprogram Dan Belajar Bahasa Pemrograman
Belajar memprogram tidak sama dengan belajar bahasa pemrograman. Belajarmemprogram
adalah belajar tentang metodologi pemecahan masalah, kemudianmenuangkannya dalam suatu
notasi tertentu yang mudah dibaca dan dipahami. Sedangakanbelajar bahasa pemrograman
berarti belajar memakai suatu bahasa aturan-aturan tatabahasanya, instruksi-instruksinya, tata
cara pengoperasian compiler-nya, danmemanfaatkan instruksi-instruksi tersebut untuk membuat
program yang ditulis hanyadalam bahasa itu saja.
Sampai saat ini terdapat puluhan bahasa pemrogram. Yang dapat dibedakan berdasarkantujuan
dan fungsinya. Diantaranya adalah :
1. Belajar Memprogram
Disertai dokumentasi.
2.2.4. Algoritma
1. Aksi :
kejadian yang terjadi pada selang waktu terbatas (dimulai saat T0 danberakhir pada saat
T1).
1. Contoh :
Karena ruang lingkup luas, maka harus didefinisikan keadaan awal dan efeknetto yang
direncanakan ( Initial State dan Final State).
Initial State (keadaan awal) : T0 kentang sudah ada dikantong kentang, danditaruh di rak
dapur dimana ibu Tati akan mengupasnya.
Final State (keadaan akhir) : T1 kentang dalam keadaan terkupas di panci,siap untuk
dimasak dan kantong kertasnya harus dikembalikan ke rak lagi.
Efek kumulatif dari semua aksi yang terjadi menjadi efek netto dari kejadian.
Penggolongan suatu kejadian menjadi aksi adalah relatif tergantung darisudut pandang.
Contoh mengupas kentang dapat dijelaskan :
Kupas kentang
Contoh lain (jika tidak dipandang perlu untuk menjelaskan kantong kentangdiambil dari
rak sebelum ambil panci) :
Ambil kantong kentang dari rak dan ambil panci dari almari
Kupas kentang
Jika esok hari ibu Tati mengupas kentang lagi untuk makan malam juga, dankita mengamati halhal yang sama, apakah hal tsb bisa disebut sama?Ini tergantung jawabannya
bisa sama bisa tidak.
Tidak karena ibu Tati tidak mungkin mengupas kentang yang sama dengankemarin.
Sama karena kemiripan pola yang dilakukan.
2.2.5. Notasi Algoritma Independen Terhadap Bahasa Pemrograman DanMesin
Komputer
dibuat bertingkat (mulai dari global menuju terperinci), algoritma merupakanbentuk fleksibel
untuk diterapkan keberbagai bahasa pemrograman.
JadiAlgoritmaadalah:
1. penyusunaan aspekproses logika dari suatu pemecahan masalah tanpamelihat
karakteristik bahasa pemrograman yang akan digunakan.
2. Urutan notasi logika yang merupakan hasil analiss dan rancangansistematik dari strategi
pemecahan maslah, untuk menggambarkanurutan langkah kerja yang jika dikerjakan
akan membawa ketujuannya.
3. Urutan logika langkah kerja untuk meyelesaikan suatu masalah.
Contoh algoritma dalam kehidupan sehari-hari, misalnya: menjahit pakaian,membuat kue, jadwal
harian, panduan merakit komputer, dan lain-lain.
Beberapa notasi yang digunakan dalam penulisan algoritma :
1. Notasi I : untaian kalimat deskriptif
2. Notasi II : diagram alir (flow chart)
3. Notasi III : psudo-code
8
Notasi III :
Algoritma Luas_Segiempat
Menghitung luas segiempat dengan memasukkan nilai lebar dan panjang
segiempat
Deklarasi
Luas,panjang,lebar :integer
Deskripsi
Input(n)
Luas= panjang * lebar
Output(Luas)
Judul (Header)
Kamus
Algoritma
Pada setiap bagian tersebut apabila akan dituliskan komentar mengenai setiap bagiantersebut
dituliskan diantara tanda kurung kurawa contoh { Komentar }. Notasi algoritmisyang dituliskan
diantara tanda ini tidak akan dieksekusi oleh program.
Judul
{ Komentar mengenai Algoritma seperti cara kerja program, Kondisi awal dan
kondisi akhir dari algoritma }
Contoh :
Judul (Header)
Judul adalah bagian teks algoritma yang digunakan sebagai tempat mendefinisikan namadengan
menentukan apakah teks tersebut adalah program, prosedur, fungsi. Setelah juduldisarankan
untuk menuliskan spesifikasi singkat dari teks algoritma tersebut. Namaalgoritma sebaiknya
singkat namun cukup menggambarkan apa yang akan dilakukan olehalgoritma tersebut.
Contoh :
Catatan :
Untuk memisahkan antara kata dalam judul algoritma menggunakan tanda _ bukanlahsuatu
keharusan. Anda dapat menuliskan LuasLingkaran atau Luas_Lingkaran. Tetapisebaiknya anda
tidak menggunakan spasi untuk memisahkan antara kata di dalam namaalgoritma.
Kamus (Deklarasi)
Kamus adalah bagian teks algoritma sebagai tempat untuk mendefinisikan :
Nama type
Nama konstanta
Nama variable
Nama fungsi
Nama prosedur
Semua nama tersebut baru dapat dipakai di dalam algoritma jika telah didefinisikan
terlebihdahulu didalam kamus. Penulisan sekumpulan nama dalam kamus sebaiknya
dikelompokanmenurut jenis nama tersebut.Nama variabel belum terdefinisi nilainya ketika
didefinisikan. Pendefinisian namakonstanta sekaligus memberikan harga konstanta tersebut,
Sequence (runtutan)
Analisa kasus
Perulangan
Setiap langkah algoritma dibaca dari atas ke bawah. Urutan deskripsi penulisanmenentuan
urutan langkah pelaksanaan perintah.
Contoh :
Algoritma
input(c,d) {menerima masukan 2 bilangan c dan d}
ifc < d then {operasi kondisional}
e a + b {e di assignment oleh nilai a dan b}
else
e a boutput (e) {hasil keluaran berupa bilangan e}
Catatan :
Untuk kata-kata input, output, if then else, output akan dipelajari lebih mendalam dalam bab-bab
selanjutnya.
Contoh Penyelesaian Masalah Oleh Algoritma
Mencetak String Selamat Belajar Algoritma dan Pemrograman ke piranti Keluaran.
Program Cetak_string
{mencetak string Selamat Belajar Algoritma dan Pemrograman ke
piranti
keluaran}
Kamus
{tidak ada}
Algoritma
Output (Selamat Belajar Algoritma dan Pemrograman)
Menentukan nilai terbesar dari bilangan bulat yang dibaca dari piranti masukan danmenuliskan
hasilnya ke piranti keluaran.
Program Nilai_Maksimal
{Menentukan nilai tertinggi yang dibaca dari piranti masukan dan
hasilnya dicetak ke piranti keluaran}
Kamus
hasil,x,y : integer {hasil merupakan variabel untuk menampung nilai
keluaran}
{x,y adalah variabel untuk menampung nilai masukan}
Algoritma
input(x,y)
{operasi kondisional}
hasil x
else
hasil y
output(hasil)
program maximal;
uses wincrt;
type
tabint =array[1..100] of integer;
var
M: array[1..100]of integer;
nilai: tabint;
n,i:integer;
max,temp:integer;function maxtab(n:integer):integer;
begin
write(masukkan jumlah bilangan =);readln(M[i]);
for i:= 1 to n do
begin
if(M[i])>max then
max:=M[i];
end;writeln(Nilai maximum adalah:,max);
for i:=1 to n do
begin
if (i mod 2=1) then
begin
temp:= M[i];
M[i]:= M[i+1];
M[i+1]:= temp;
end;
writeln(M[i]);
end;
end.
Bab III
Tugas 2.6 no 1
Tugas 2.6 no 2
Tugas 3.7 no 1
Tugas 3.7 no 2
Tugas 3.7 no 3
Tugas 4.4 no 1
Tugas 4.4 no 2
Tugas 4.4 no 3
Tugas 4.4 no 4
Tugas 5.7 no 1
Tugas 5.7 no 2
Tugas 5.7 no 3
Tugas 5.7 no 4
BAB IV
PENUTUP
Kesimpulan
Imperative program beranalogi dibawah bahasa pemograman yang memacu atau berorientasi
pada objek objek system informasi yang mengarah pada system informasi. Pembuatan program
program komputer dengan penguasaan data yang ada pada bahasa pemograman untuk dikuasai
agar menjadi seorang programmer handal. Beberapa sub dari bidang pemograman imperative
diantaranya adalah variable dan penugasan ; perintah tidak struktur ; perintah tidak terstruktur ;
subprogram, prosedur dan fungsi; dan penanganan eksepsi. Mengenali dan memberi contoh
variable dan penguasaaanya, mengenali bentuk perintah tidak terstruktur, mengenali bentuk
perintah terstruktur, dapat menjelaskan bentuk-bentuk struktur control,dapat menuliskan
subprogram, prosedur, dan fungsi, dan dapat mengenali serta menjelaskan beberapa bentuk
eksepsi dan penangananya.
3.2
Saran
Saran saya sebagai penulis ialah, bahwa setidaknya kita harus selalu konsisten dalam belajar agar
dapat bersaing di era globalisasi.
Demikian pula dalam mempelajari algoritma dan pemrograman, sehingga kita selaku mahasiswa
atau peserta didik dapat dibekali dengan kecakapan menggunakan komputer sebagai sarana
dalam mencapai tujuan sehari-hari. Sekiranya saran yang saya buat ini jika ada kata dan
penulisan yang salah mohon dimaafkan. Wassalamualaikum Wr. Wb.
DAFTAR PUSTAKA
http://hannan.h08.alumni.ipb.ac.id/2010/06/12/pengertian-pemrograman/
http://ikc.dinus.ac.id/berseri/alex-algoritma/index.php
googlecode.com/files/a980b55869178243a3cca38490ce9711.pdf
http://wildankim16bsiaja.blogspot.co.id/2015/12/pertemuan-2-algoritmapemrogaman.html
https://burangasitamaymo.wordpress.com/2015/06/25/makalah-algoritma-danpemrograman/