Pemrograman Dasar
Modul 1 Pemrograman Komputer
1.1 Algortima dan pemrograman Dasar
Perangko dari
Rusia pada Gambar di samping ini bergambar seorang pria dengan nama
Muhammad bin Musa al-Khwarizmi. Bagi kalian yang sedang berkecimpung
dalam dunia komputer maka seharusnya mengetahui siapa orang di samping
ini. Dia adalah seorang ilmuwan Islam yang karya karyanya dalam bidang matematika, astronomi, astrologi dan geografi banyak menjadi
dasar perkembangan ilmu modern. Dan dari namanya
istilah yang akan
kita pelajari dalam bab ini muncul. Dari Al-Khawarizmi kemudian berubah
menjadi algorithm dalam Bahasa
Inggris dan diterjemahkan menjadi algoritma dalam bahasa Indonesia.
1.2 Definisi Algortima
1. Algoritma adalah urutan langkah-langkah logis
penyelesaian masalah yang disusun secara sistematis. Algoritma yang dapat
menyelesaikan suatu permasalahan dalam waktu yang singkat memiliki tingkat
kerumitan yang rendah, sementara algoritma yang membutuhkan waktu lama untuk
menyelesaikan suatu masalah membutuhkan tingkat kerumitan yang tinggi.
1.3 Struktur Algortima Perhatikan algoritma sederhana
berikut : Jika seseorang
ingin mengirim surat kepada kenalannya di tempat lain, langkah yang harus
dilakukan adalah:
1. Menyiapkan Peralatan Tulis
2. Menulis surat
3. Surat dimasukkan ke dalam amplop tertutup
4. Amplop ditempeli perangko secukupnya.
5. Pergi ke Kantor Pos terdekat untuk mengirimkannya
Algoritma menghitung luas persegi panjang:
1. Masukkan panjang (P)
2. Masukkan lebar (L)
3. Luas P * L
4. Tulis Luas
Beberapa hal yang perlu diperhatikan dalam membuat
algoritma:
a)
Teks
algoritma berisi deskripsi langkah-langkah penyelesaian masalah.Deskripsi
tersebut dapat ditulis dalam notasi apapun asalkan mudah dimengerti dan
dipahami.
b)
Tidak
ada notasi yang baku dalam penulisan teks algoritma seperti notasi bahasa
pemrograman. Notasi yang digunakan dalam menulis algoritma disebut notasi algoritmik.
c)
Setiap
orang dapat membuat aturan penulisan dan notasi algoritmik sendiri. Hal ini
dikarenakan teks algoritma tidak sama dengan teks program. Namun, supaya notasi
algoritmik mudah ditranslasikan ke dalam notasi bahasa pemrograman tertentu, maka
sebaiknya notasi algoritmik tersebut berkorespondensi dengan notasi bahasa
pemrograman secara umum.
d)
Notasi
algoritmik bukan notasi bahasa pemrograman, karena itu pseudocode dalam notasi
algoritmik tidak dapat dijalankan oleh komputer. Agar dapat dijalankan oleh
komputer, pseudocode dalam notasi algoritmik harus ditranslasikan atau
diterjemahkan ke dalam notasi bahasa pemrograman yang dipilih. Perlu diingat
bahwa orang yang menulis program sangat terikat dalam aturan tata bahasanya dan
spesifikasi mesin yang menjalannya. Pseudocode adalah kode yang mirip
dengan instruksi kode program sebenarnya.
e)
Algoritma
sebenarnya digunakan untuk membantu kita dalam mengkonversikan suatu
permasalahan ke dalam bahasa pemrograman.
f)
Algoritma
merupakan hasil pemikiran konseptual, supaya dapat dilaksanakan oleh komputer,
algoritma harus ditranslasikan ke dalam notasi bahasa pemrograman.
Beda Algoritma dan Program ?
Program adalah kumpulan pernyataan komputer, sedangkan metode
dan tahapan sistematis dalam program adalah algoritma. Program ditulis dengan
menggunakanbahasa pemrograman. Jadi bisa disebut bahwa program adalah suatu
implementasi dari bahasa pemrograman.
Program = Algoritma + Bahasa (Struktur
Data)
Penerjemah Bahasa Pemrograman Untuk menterjemahkan bahasa pemrograman
yang kita tulis maka diperlukan Compiler dan interpreter.
Compiler adalah suatu program yang menterjemahkan bahasa
program (Source code) ke dalam bahasa obyek (object code) secara keseluruhan
program.
Interpreter berbeda dengan Compiler, interpreter menganalisis
dan mengeksekusi setiap baris dari program secara keseluruhan. Keuntungan dari
interpreter adalah dalam eksekusi yang bisa dilakukan dengan segera. Tanpa
melalui tahap kompilasi, untuk alas an ini interpreter digunakan pada saat
pembuatan program berskala besar.
Struktur Dasar Algoritma Algoritma berisi langkah-langkah
penyelesaian suatu masalah. Langkah-langkah tersebut dapat berupa runtunan aksi
(sequence), pemilihan aksi (selection), pengulangan aksi (iteration) atau
kombinasi dari ketiganya. Jadi struktur dasar pembangunan algoritma ada tiga,
yaitu:
1. Struktur Runtunan / Beruntun : Digunakan
untuk program yang pernyataannya sequential atau urutan.
2. Struktur Pemilihan / Percabangan :
Digunakan untuk program yang menggunakan pemilihan atau penyeleksian kondisi.
3. Struktur
Perulangan : Digunakan untuk program yang pernyataannya akan dieksekusi
berulang-ulang.
1.
Struktur
Algoritma Runtunan / Berurutan : Ada tiga struktur dasar yang digunakan dalam membuat algoritma yaitu
struktur berurutan (sequencing), struktur pemilihan/keputusan/percabangan
(branching) dan struktur pengulangan (looping). Sebuah algoritma biasanya akan
menggabungkan ketiga buah struktur ini untuk menyelesaikan masalah. Struktur
berurutan dapat kita samakan dengan mobil yang sedang berjalan pada jalur lurus
yang tidak terdapat persimpangan seperti tampak pada Gambar disamping Mobil
tersebut akan melewati kilometer demi kilometer jalan sampai tujuan tercapai. Struktur
berurutan terdiri satu atau lebih instruksi. Tiap instruksi dikerjakan
secara berurutan sesuai dengan urutan penulisannya, yaitu sebuah instruksi
dieksekusi setelah instruksi sebelumnya selesai dieksekusi. Urutan instruksi
menentukan keadaan akhir dari algoritma. Bila urutannya diubah, maka hasil
akhirnya mungkin juga berubah.
1.4 Jenis-Jenis Bahasa Pemrograman
1.
Bahasa
Pemrograman Tingkat rendah (Bahasa mesin, Biner)
2.
Bahasa
Pemrograman Tingkat tinggi
Contoh-contoh Bahasa Pemrograman yang ada :
1. Prosedural : Algol, Pascal, Fortran, Basic, Cobol,
C
2. Fungsional : LOGO, APL, LISP
3. Deklaratif : Prolog
Object oriented murni: Smalltalk, Eifel, Java, PHP
Cara penulisan algortima cara penulisan algoritma, yaitu :
1. Structured English (SE) SE merupakan alat yang cukup baik untuk
menggambarkan suatu algoritma. Dasar dari SE adalah Bahasa Inggris, namun kita
dapat memodifikasi dengan Bahasa Indonesia sehingga kita boleh menyebutnya
sebagai Structured Indonesian (SI). ”SE atau SI lebih tepat untuk
menggambarkan suatu algoritma yang akan dikomunikasikan kepada pemakai
perangkat lunak”
2. Pseudocode Pseudocode adalah kode yang mirip dengan instruksi
kode program sebenarnya. Pseudocode didasarkan pada bahasa pemrograman yang
sesungguhnya seperti BASIC, FORTRAN atau PASCAL. Pseudocode yang berbasis
bahasa PASCAL merupakan pseudocode yang sering digunakan. “Pseudo berarti
imitasi atau tiruan atau menyerupai, sedangkan code menunjuk pada kode program”
1.5
Membuat
Alur Logika Pemograman
A.
Penyajian
atau Penulisan Algoritma
Penyajian
algoritma secara garis besar bisa dalam 2 bentuk penyajian yaitu tulisan dan
gambar. Algoritma yang disajikan dengan tulisan yaitu dengan struktur bahasa
tertentu (misalnya bahasa Indonesia atau bahasa Inggris) dan pseudocode. Pseudocode
adalah kode yang mirip dengan kode pemrograman yang sebenarnya seperti
Pascal, atau C, sehingga lebih tepat digunakan untuk menggambarkan algoritma
yang akan dikomunikasikan kepada pemrogram. Sedangkan algoritma disajikan
dengan gambar, yaitu dengan Flowchart.
B.
Flowchart
(Diagram Alir) Flowchart
atau bagan alir adalah skema/bagan (chart) yang menunjukkan aliran (flow) di
dalam suatu program secara logika. Flowchart merupakan alat yang banyak
digunakan untuk menggambarkan algoritma dalam bentuk notasi-notasi tertentu.
Flowchart merupakan gambar atau bagan yang memperlihatkan urutan dan hubungan
antar proses beserta pernyataannya. Gambaran ini dinyatakan dengan simbol.
Dengan demikian setiap simbol menggambarkan proses tertentu. Sedangkan antara
proses digambarkan dengan garis penghubung. Dengan menggunakan flowchart akan
memudahkan kita untuk melakukan pengecekan bagianbagian yang terlupakan dalam
analisis masalah. Di samping itu flowchart juga berguna sebagai fasilitas untuk
berkomunikasi antara pemrogram yang bekerja dalam tim suatu proyek.
Contoh
bagan alir logika program berurutan (sequencing)
Soal !
1. Apa yang dimaksud dengan algoritma?
2. Sebutkan 5 bahasa pemrograman yang kamu ketahui?
3. Apa yang dimaksud dengan Flowchart ? Sebutkan 3 simbol program
flowchart!
Tulis jawaban di buku, dikumpulkan ketika sudah masuk sekolah.
Isi komentar dibawah isi dengan Nama dan kelas untuk absensi. Jika
mengalami kendala data internet atau jaringan bisa tanya ke WA 085784192730 /
Pak Fajar (slow respon).
66 Komentar
NAMA : BUDIMAN
BalasHapusKELAS : X MM 1
contoh absensi, ketik nama dan kelas kemudian pilih publikasikan
Nama :
HapusNAMA:NUR ANA ARFIANTI
HapusKELAS: X MM 2
Nama:NADIA PUTRI KUSUMA DEWI
Hapuskelas:X-Mm3
Nama : imam prasetyo
HapusKelas : X multimedia 2
Nama : sheila imama putri
Hapuskelas : mm 3
Nama:Diar ayu lestari
HapusKelas:X-MM3
Nama:Ria Ayu Subawaning
Hapuskelas:X-Mm1
Nama : TIARA NURHALIZA SETYORINI
BalasHapusKelas : X MM 1
Nama:Azka Dara Ryadi
HapusKelas: x-Multimedia 1
Nama:ALFITO ADITYA
HapusKelas:X-Multimedia 3
NAMA : VANISA FIOLIANA
BalasHapusKELAS : X MM 2
Nama: AHMAD FARIS NAUFAL
BalasHapusKelas: X MM 2
Nama : TIARA NURHALIZA SETYORINI
BalasHapusKelas : X MM 1
Nama:Mukhlis FebriAnto
BalasHapusKelas:X MM 3
Nama: FAIZUN AKMAL RIVALDI
BalasHapusKelas: X MM 3
Nama : M.Taufiqur Rohman
BalasHapusKelas: X MM 2
Nama : DANI NAWASARI
BalasHapusKELAS : X -MULTIMEDIA 1
Nama : DANI NAWASARI
BalasHapusKELAS : X -MULTIMEDIA 1
Nama:DIAN PRATAMA PUTRI
BalasHapusKelas:X-MULTIMEDIA 3
NAMA: RIA AGUSTRINIA
BalasHapusKELAS: X-MULTIMEDIA 3
Nama:m.zulfahmy Krisna mufty
BalasHapusKelas: X mm3
Tes
BalasHapusNama: Amelia Agustin
BalasHapusKelas: X-multimedia 2
Nama:MUHAMAT GANDI ARIANTO
BalasHapuskelas:X-MULTIMEDIA 3
NAMA : AMELIA CAHYA PRATIWI
BalasHapusKELAS : X MULTIMEDIA 1
Nama:Wulan Aulia Dauche Vina
BalasHapusKelas:XMM3
NAMA:ALIF ALFIANTI
BalasHapusKELAS:X MM 2
Nama:YASSIR MAULANA ALFITO
BalasHapusKelas:X-MULTIMEDIA 2
Nama: Naval arinnanda sabilla
BalasHapusKelas: X multimedia 3
Tes
BalasHapusNAMA : DINO ARDI LISTIANTO
BalasHapusKELAS : X MM 2
Nama : Juan Vika Akbar
BalasHapusKelas : X MM 3
Nama: LINDA ISTIANTI RAMANDANTI
BalasHapusKelas: MULTIMEDIA 1
NAMA:YUSUF IS WIJAYA
BalasHapusKELAS:X MM3
Nama:SHABRINA RAHMAWATI
BalasHapusKelas:X MM 3
Nama : Divia Laila Miftahul Janah
BalasHapusKelas : X-MM 3
NAMA: WILDHAN TAUFIQ
BalasHapusKLS : X MM 2
Nama:Diah ayu desianti
BalasHapusKls : X MM 2
Nama: ACHMAD CHAMDAN MUBAROK
BalasHapusKelas: X Multimedia 1
HUSNUL SYARIATUL ILMI
BalasHapusX MULTIMEDIA 1
Nama : Riski Pratiwi
BalasHapusKelas : X - MULTIMEDIA 1
NAMA: DWI ADI PRASETIA
BalasHapusKELAS: MM 2
Nama : AFIAH SILVIANTI.
BalasHapusKelas. : X- Multimedia 1
Nama :Aditya Bagas Bramatyo
BalasHapusKuzaky
Kelas: x-multimedia 2
Nama: MEGA DWI KUSUMA
BalasHapusKelas : X MM1
Nama:DWI JAYANTI
BalasHapusKelas:X MM 1
Nama: NICO DANUARTA
BalasHapusKelas:X MM 2
Nama:BINTI NUR AZIZAH
Hapuskelas:X MM 3
Nama: NICO DANUARTA
BalasHapusKelas:X MM 2
Nama:Wulan Aulia Dauche Vina
BalasHapusKelas:XMM3
Nama:ROYDI YUSTINO PRATAMA
BalasHapusKelas:MM 3
Nama : ANIS NUR Y.
BalasHapuskelas : X - MM 3
Nama : ANIS NUR Y.
BalasHapuskelas : X - MM 3
Nama : ANIS NUR Y.
BalasHapuskelas : X - MM 3
Nama:LAILYA ANGGRAENY
BalasHapusKelas :X MM 3
Nama:Putri Apreliya
BalasHapusKelas:X MM 3
Nama: ALFIKA YUGI AUGLIA
BalasHapusKelas: X MM 1
NAMA:SISKA WULAN PEBRIANTI
BalasHapusKELAS:X (MULTIMEDIA 1)
NOSEN:35
Nama : Mita Wulandari
BalasHapusKelas : X MM2
Absen : 21
Nama:SITI LAILATUL BADRIYAH
BalasHapusKelas:MM 1
Nama:rokim
BalasHapusKelas:X MM3
NAMA: INTAN ABBEL RAMADHANI
BalasHapusKELAS: X MM2
NAMA: DEBORA SETYA ANGGRAINI
BalasHapusKELAS: X-MM1
NO.ABSEN: 12
Junia isminanda (20)
BalasHapusMM x-1
NAMA : DINO ARDI LISTIANTO
BalasHapusKELAS : X MM 2