Capaian Pembelajaran Mata Kuliah
•Mahasiswa mampumenjelaskankonstruksidasar
pemrograman (C2, A2)
•Mahasiswa mampumengaplikasikanberbagaikonsepdasar
pemrograman pada pembuatanprogram untuk menyelesaikan
masalah pemrograman (C3, A3)
Perhatian
•Tidakdisarankancopy-paste kodeprogram daripresentasiini,
karenaadabeberapasymbol yang dianggapsebagaiUnicode
oleh editor yang andagunakan, sehinggaakandianggap
sebagaisymbol yang salah oleh compiler, sebaiknyadiketik
ulangsaja
1.5. Bahasa Pemrograman
•Hinggasaatinijumlahbahasapemrogramansangatbanyak.
Berdasarkantujuanaplikasinya,bahasapemrogramandapat
digolongkanmenjadi:
•Bahasapemrorgamanbertujuankhusus(cobol,fortran,
assembly,prolog,dll)
•Bahasapemrorgamanbertujuanumum(C,C++,C#,Java,
VB.Net,dll)
1.6. KategoriBahasa Pemrograman
•Berdasarkankedekatanbahasapemrorgamandenganbahasa
alami(bahasamanusia), makabahasapemrogramanjuga
dapatdikelompokkanmenjadi:
–BahasaTingkat Rendah(Low Level Language).
–Bahasatingkatmenengah(Medium Level Language / MLL).
Contohnya: Assembly
–Bahasa Tingkat Tinggi (High Level Language).
–DalamperkembangannyaBahasa pemrogramandikembangkanagar
semakinmudahtanpaaturan-aturanyang kaku, dinamakanBahasa
pemrogramangenerasi4
1.6. KategoriBahasa Pemrograman(lanj…)
1.6. KategoriBahasa Pemrograman(lanj…)
1.6.1. Bahasa Tingkat Rendah
•Bahasajenisinidirancangagarsetiapinstruksinyalangsung
dikerjakanolehkomputer,tanpaharusmelaluipenerjemah
(translator).
•Yangtermasukbahasatingkatrendahadalahbahasamesin.
•Bahasamesinadalahsekumpulankodebinar(0dan1).Setiap
bahasamesinlangsungdikenalidandikerjakan.
1.6.1.1. ContohBahasa Tingkat Rendah
•Contohbahasatingkatrendahadalahbahasamesin.
1.6.2. Bahasa Tingkat Menengah
•Bahasajenisinidirancangagarlebihmudahdaribahasamesin.
•Yangtermasukbahasatingkatmenengahadalahbahasa
assembly.
•Denganmenggunakanbahasaassemblysedikitlebihmudah
dalammembuatprogrambiladibandingkandengan
menggunakanbahasamesin.
•Instruksiyangdigunakanseperti:MOV,SUB,CMP,JMP,JGE,JL,
LOOP,JNZ,danyanglainnya
1.6.2.1 ContohBahasa Tingkat Menengah
•Contohbahasatingkatmenengah,sepertibahasaassembler
1.6.3. Bahasa Tingkat Tinggi
•SeringkalidisebutBahasapemrogramangenerasi3
•Bahasajenisinimembuatprogrammenjadilebihmudah
dipahamiolehmanusia,karenasecarasintakslebihdekat
denganbahasamanusia.
•Kelemahannya,programtidaklangsungdimengertioleh
komputer.Iaperluditerjemahkankedalambahasamesin
sebelumdieksekusiolehCPU.
1.6.3. Bahasa Tingkat Tinggi (lanj…)
•Semuabahasapemrograman,kecualibahasamesindan
bahasaassemblyadalahbahasatingkattinggi(pascal,basic,C,
C++,Java,dll).
1.7. Cara KerjaCompiler & Interpreter
•Compiler:Programyangdibuatdalambahasatingkattinggi
(sourcecode)diterjemahkanmenjadibahasamesin.
•Interpreter:Programyangdibuatdalambahasatingkattinggi
(sourcecode)diterjemahkanmenjadibahasamesinper
perintah(perbaris).
1.7.1. Blok Diagram Kompilasi
1.7.2. Proses Kompilasi
1.8. Bahasa PemrogramanGenerasi4
•Bahasa pemrogramanGenerasi4 adalahBahasa pemrograman
non procedural.
•MenawarkankemudahandibandingkanBahasa pemrograman
proseduralataupunpemrogramanberorientasiobjek,
sehinggakomputermelakukansesuatutanpamemberitahu
komputerapayang harusdilakukansecaradetail
•Programmer cukupmemberikanperintahdengankeyword,
function, procedure ataupunmethod yang sudahtersediaagar
komputermelakukansesuatu
1.8. Bahasa PemrogramanGenerasi4
•DibalikBahasa pemrogramangenerasi4, sudahdidukungoleh
pemrogramanberorientasiobjek, sehinggaprogrammer tidak
direpotkandengankonseppemrogramanberorientasiobjek
lagi, cukupmembuatobjek-objekdariclass-class yang sudah
tersedia
•Seringkalidipergunakanpada pemrogramandatabase dan
pemrogramanscript
•Contoh: PHP, Perl, Phyton, Ruby, dsb
1.9. Bahasa PemrogramanGenerasi5
•Bahasa pemrogramanyang dirancanguntukmemerintahkan
komputermelakukansesuatudengancerdas
•MenerapkanNLP sehinggalebihmemudahkanprogrammer
untukmemberiperintahpada komputerdenganBahasa yang
lebihmanusiawi
•SeringkalidigunakanuntukmengembangkanKecerdasan
Buatandenganlebihmudahdaripada3th generation language
•Contoh: Matlab, Mercury, OPS5, Prolog, Vp-Expert
4.1 Pseudo-Code
•Pseudo-code merupakankodesemuyang tidakterbataspada
syntax dan keyword
•Seringkaliyang dipergunakanadalahsyntax dan keyword dari
suatuBahasa pemrogramanyang dikuasaioleh team tanpa
memperdulikankesalahansyntax dan keyword
4.2.susunan
•Tidakadaaturanbakuuntukmenyusunpseudo-code,
tergantungperjanjiandi dalamteam
•SetidaknyaPseudo-code harusmemilikijudulprogram
•Deklarasivariable tidakharusada, tetapijikaadacukup
membantu
•Isi darialgoritmamerupakanurutanperintah-perintah
mempergunakansyntax dan keyword yang dapatdikenaliteam
4.3. ContohPseudo-code
PROGRAM Luas_lingkaran
DEKLARASI:
phi
luas, jari: real
ALGORITMA:
input(jari)
read (jari)
luas= phi*jari*jari
write (luas)
5. PENGANTARPHYTON
5.1. MengenalPhyton
•Python adalahbahasapemrogramanyang populerdan
serbagunayang dapatdigunakanuntukilmudata,
pengembanganweb, otomatisasi, dan banyaklagi.
•SebagaiBahasa PemrogramanGenerasi4, Phytonsangat
mudahdipergunakan, dengansyntax yang sederhanadan lebih
manusiawidaripadamiddle level language dan high level
language, sehinggapelajardapatmempelajarialgoritma
denganmudah
5.3. ContohProgram Phyton
•Nama source code
–Biasanyaberextention*.py
•Komentarprogram yang tidakakan
dieksekusi
–Remark didahuluitanda#
•Perintahprogram untukmencetakdi
layer
–Syntax: print(<data>)
–Data dapatberupateksataupunbilangan
•NomorBariskodeprogram
•Hasil run program
5.4. PerintahPrint
•Perintahprint adalahfungsi
untukmencetakdata yang
menjadiparameter darifungsi
tersebut.
•Parameter perintahprint dapat
satu, duaataulebih
•Parameter dapatberupadata
teksataupunnumerik
5.5. Remark / Komentar
•Comment ditandaidengan
membubuhkantanda# di depan
komentar
•Semuateksdi belakangtanda#
tidakakandikompilasiataupun
dieksekusi
•Komentardapatdiletakkanpada
baristersendiriataupun
dibelakangsebuahperintah
5.6 Indentasi
•Identasipada Phytonditerapkandeganmemberikanwhite
spasipada awalbaris
•Phytonmenerapkanindentasiuntukmenandaisub-blokdari
kodeprogramnya
•Misalkansebagaisub-blokdariif, makasetelahtandacolon (:)
barisberikutnyayang masuksebagaiindentasimasih
merupakansub-blokataubagiandarikeyword if tersebut
•Berakhirnyaindentasimenandaiakhirdaribagiansub-program
tersebut
5.6 Indentasi(lanjut)
•Contoh:
if a>b :
c = a * 10
print(“sepuluhkali lipat”,a,”adalah”,c)
else:
c = a / 10
print(“sepersepuluh”, a, “adalah”,c)
•Bagianyang diberiwarnabirumerupakanbagiandariperintah
jikaa>b bernilaitrue, sedangkanbagianyang berwarnahijau
merupakanbagiandarielse nya
Ringkasan
•Algoritmaadalahurutanlangkah-langkahuntukmenyelesaikansuatu
persoalan.
•Kalimatdeskriptifmerupakankalimatyangmendeskripsikanurutan
perintah-perintahsuatualgoritmadalambentukkalimatbaku
•FlowchartadalahNotasialgoritmadalambentukdiagramurutan
perintah
•Pseudo-codemerupakankodesemuyangtidakterbataspadasyntax
dankeyword
TMSM -Introduction to Data Structure 58