Senin, 10 Januari 2011

Table perkalioan 1-10

perintah pengulangan

dasar teori
loop di gunakan untuk mengulangi suatu intruksi
sesuai dengan intruksi yang di tetapkan.
loop memiliki kondisi awl sbgai base line untuk di krjakan dan nilai /kondisi akhir sebagai tujuan

sasaran kompetensi:
-mahasiswa mampu menggunakan statement loop dlm program
-mahasiswa mampu menguasai kapan statement loop diperlukan(dalam keadaan seperti apa)

contoh:

a.for...next
mencetak angka 1-10
cls
i=0
for i=1 to 10
print i

SIMPEL DATA BASE

· 0 komentar

input data dengan simple database turbo basic 30

input data dengan simple database turbo basic
30


OPEN "R",#1,"MHS.DAT",59
FIELD #1,9 AS NIM$,20 AS NAMA$,30 AS ALAMAT$
CLS
LOCATE 4,25:PRINT "DATA MAHASISWA "
LOCATE 5,25:PRINT "_______________"
LOCATE 6,25:PRINT "NIM : "
LOCATE 7,25:PRINT "NAMA : "
LOCATE 8,25:PRINT "ALAMAT : "
LOCATE 9,25:PRINT "_______________"
LOCATE 6,40:INPUT,INIM$
IF INIM$ <> " " THEN
JDATA =LOF(1)/59
FOR X=1 TO JDATA
GET #1,X
IF NIM$=INIM$ THEN EXIT FOR
NEXT X
END IF
IF INIM$=NIM$ THEN
LOCATE 7,40:PRINT NAMA$
LOCATE 8,40:PRINT ALAMAT$
LOCATE 9,40:PRINT "DATA ADA"
ELSE
LOCATE 7,40:INPUT,INAMA$
LOCATE 8,40:INPUT,IALAMAT$
LSET NIM$=INIM$
LSET NAMA$=INAMA$
LSET ALAMAT$=IALAMAT$
JDATA=LOF(1)/59
PUT #1,JDATA+1
LOCATE 12,35:PRINT "DATA SUDAH DISIMPAN"
END IF

BILANGAN PRIMA

· 0 komentar

BILANGAN PRIMA

dim temp(100)
dim tmp(100)
dim ang(100)
cls
'a,b,c,d,e,x,temp
temp(1)=2
e=2
a=100
for b= 3 to a
for c=2 to b-1
if b mod c <> 0 and b mod 1=0 then
temp(e)=b
d=b
else
if b<>d then
e=e+1
elseif b=d then
temp(e)=0
e=e-1
end if
goto lompat
end if
next c
lompat:
next b
'for x=1 to e
' print "Hasil : " +str$(temp(x))
'next x

'cls
f=1
g=1
locate 2,25:print " FPB "
locate 3,25:print "================"
locate 4,25:print "Angka ="
locate 5,25:print "================"
locate 4,33:input,angka
locate 8,28:print str$(angka)

do while angka <> temp(f)
if angka mod temp(f)=0 then
tmp(g)=temp(f)
angka=angka \ temp(f)
ang(g)=angka
g=g+1
elseif angka mod temp(f)<>0 then
f=f+1
end if
loop

if angka

BILANGAN PRIMA

dim temp(100)
dim tmp(100)
dim ang(100)
cls
'a,b,c,d,e,x,temp
temp(1)=2
e=2
a=100
for b= 3 to a
for c=2 to b-1
if b mod c <> 0 and b mod 1=0 then
temp(e)=b
d=b
else
if b<>d then
e=e+1
elseif b=d then
temp(e)=0
e=e-1
end if
goto lompat
end if
next c
lompat:
next b
'for x=1 to e
' print "Hasil : " +str$(temp(x))
'next x

'cls
f=1
g=1
locate 2,25:print " FPB "
locate 3,25:print "================"
locate 4,25:print "Angka ="
locate 5,25:print "================"
locate 4,33:input,angka
locate 8,28:print str$(angka)

do while angka <> temp(f)
if angka mod temp(f)=0 then
tmp(g)=temp(f)
angka=angka \ temp(f)
ang(g)=angka
g=g+1
elseif angka mod temp(f)<>0 then
f=f+1
end if
loop

if angka=temp(f) then
tmp(g)=angka
ang(g)=angka
end if

for i=1 to g-1
locate 7+i*2,28+i*2:print "\"+str$(ang(i))
locate 7+i*2,25+i*2:print str$(tmp(i))+"/"
next i =temp(f) then
tmp(g)=angka
ang(g)=angka
end if

for i=1 to g-1
locate 7+i*2,28+i*2:print "\"+str$(ang(i))
locate 7+i*2,25+i*2:print str$(tmp(i))+"/"
next i

BILANGAN GENAP DAN GANJIL

· 0 komentar

PROGRAM MENENTUKAN BILANGAN GENAP/GANJIL

cls
print" =================================
print" (((program menentukan bilangan)))"
print" dari angka 1 -100"
print" =================================
print
print
input"masukan angka anda: ",a
for i=1 to 99 step 2
for g=2 to 100 step 2
if a=i then
locate 10,20:print"bilangan ganjil"
elseif a=g then
locate 10,20:print"bilangan genap"
elseif a>=101 then
locate 10,20:print"maaf ya..angka anda tak bisa di proses"
end if
next g
next i

IF BERSARANG

· 0 komentar
IF BERSARANG
If then
if …. Then
if .. Then.. Elseif … then… endif
elseif….then
if .. Then.. Elseif … then… endif
else
if .. Then.. Elseif … then… endif
endif

Else if then
if …. then
if .. Then.. Elseif … then… endif
elseif….then
if .. Then.. Elseif … then… endif
else
if .. Then.. Elseif … then… endif
endif

Else
if …. Then
if .. Then.. Elseif … then… endif
elseif….then
if .. Then.. Elseif … then… endif
else
if .. Then.. Elseif … then… endif
endif

endif



Diketahui sebuah permasalahan sebagai berikut

Nama Pesawat Tujuan Waktu Harga Tiket
LION Jakarta Pagi 1.500.000
Siang 1.000.000
Malam 500.000
RAL Jakarta Pagi 1.400.000
Siang 1.200.000
Malam 800.000
LION MEDAN Pagi 2.500.000
Siang 2.000.000
Malam 900.000
RAL MEDAN Pagi 3.500.000
Siang 3.000.000
Malam 700.000
Ketentuan Lain : Jenis Penumpang : Dewasa 100% Dari Harga Tiket Anak Anak : 50% Dari Harga Tiket Balita : 15 % Dari Harga Tiket


Langkah 1

Pesawat :

Pilihan 1 LION
Pilihan 2 RAL maka struktur if nya adalah
sebagai berikut

If pesawat =“LION” then masuk kepilihan tujuan
Else masuk kepilihan tujuan
endif

Langkah 2

Tujuan :

Pilihan 1 JAKARTA
Pilihan 2 MEDAN
maka struktur if nya adalah
sebagai berikut

If tujuan =“JAKARTA” then masuk kepilihan WAKTU
Else masuk kepilihan WAKTU
endif

If pesawat =“LION” then If tujuan =“JAKARTA” then masuk kepilihan WAKTU
Else masuk kepilihan WAKTU
endif
Else If tujuan =“JAKARTA” then masuk kepilihan WAKTU
Else masuk kepilihan WAKTU
endif
endif

Langkah 3

Pilihan 1 PAGI
Pilihan 2 SIANG
Pilihan 3 MALAM
maka struktur if nya adalah
sebagai berikut

If waktu =“PAGI” then jawaban harga
Elseif waktu =“SIANG”
jawaban harga
Else
jawaban harga
End if

if pesawat$ ="L" or pesawat$ ="l" then
if tujuan$="J" or tujuan$="j" then
if waktu$ ="P" or waktu$ ="p"then
harga =1500000
elseif waktu$ ="S" or waktu$ ="s" then
harga =1000000
else
harga =500000
end if
else
if waktu$ ="P" or waktu$ ="p"then
harga =2500000
elseif waktu$ ="S" or waktu$ ="s" then
harga =2000000
else
harga =900000
end if
end if
else
if tujuan$="J" or tujuan$="j" then
if waktu$ ="P" or waktu$ ="p" then
harga =1400000
elseif waktu$ ="S" or waktu$ ="s" then
harga =1200000
else
harga =800000
end if
else
if waktu$ ="P" or waktu$ ="p" then
harga =3500000
elseif waktu$ ="S" or waktu$ ="s" then
harga =3000000
else
harga =700000
end if
end if
end if

Langkah 4

JENIS PENUMPANG & DISKON :

Pilihan 1 DEWASA
Pilihan 2 ANAK
Pilihan 3 BALITA
maka struktur if nya adalah
sebagai berikut

If penumpang =“DEWASA” then jawaban DISKON Harga
Elseif penumpang =“ANAK”
jawaban DISKON Harga
Else
jawaban DISKON Harga
End if

if jenis$="D" or jenis$="d" then
diskon=0
hb=(harga*jumlah)
bayar=(harga*jumlah)-diskon
elseif jenis$="A" or jenis$="a" then
diskon=0.50*harga
hb=(harga*jumlah)
bayar=(harga*jumlah)-diskon
else
diskon=0.15*harga
hb=(harga*jumlah)
bayar=(harga*jumlah)-diskon
end if

Turbo basic

· 0 komentar
Saya akan menjelaskan dgn ringkas tentang pemograman dasar TURBO BASIC

1.STATEMEN
adalah pernyataan atau intruksi merupakan bagian dari pada program.
Contoh:
10 print"halo"
adalah perintah menampilkan halo di layar saat run

A.MEMASUKkAN DATA

memasukkan data biasanya adalah proses awal dari pengolahan data.suatu program harus dimungkinkan untuk dapat menerima data atau membaca suatu data yang di olah..basic dalam ini menyediakan beberapa statemen yg masing2 karakteristik sesuai dgn kebutuhan nya.yaitu:
*READ-DATA
*RESTORE
*INPUT
*LINE INPUT

disamping itu dgn menggunakan statemen ini,dapat juga memasukan data menggunakan fungsi INKEY$ dan INPUT$

=STATEMEN READ-DATA

statemen ini di pakai untuk tujuan membaca nilai dari suatu variabel dalam program BASIC.Nilai dari variabel nya di tunjukan oleh statemen DATA.
Jumlah data yg dibaca statemen READ harus sama atau lebih.bila lebih data akan di abaikan.
Statemen READ-DATA harus slalu ada bersama sama.
Contoh:
10 read A,B,C
20 print A,B,C
30 data 2,3,4
40 end
run
2 3 4

ket:variabel A akan membaca nilai 2,variabel B akan membaca nilai 3,variabel C akan membaca nilai 4.

=STATEMEN INPUT

nilai variabel yg diberikan pada statemen input tidak diletakkan dalam program,tetapi di masukan setelah program berjalan
contoh:
input A
input B
C=A*B
end

run
_3
_5
15

B.MENAMPILKAN HASIL

=STATEMEN PRINT
statement print dapat digunakan untuk menampilkan hasil di layar.
1.Contoh Menampilkan nilai string dan karakter

cls
print"romy allovean"
end

RUN
romy allovean

2.contoh menampilkan nilai logika

a=5
b=5
c=a+b
print c

RUN
10

ket:perintah print adalah untuk menampilkan nilai c.

Turbo basic

· 0 komentar
Saya akan menjelaskan dgn ringkas tentang pemograman dasar TURBO BASIC

1.STATEMEN
adalah pernyataan atau intruksi merupakan bagian dari pada program.
Contoh:
10 print"halo"
adalah perintah menampilkan halo di layar saat run

A.MEMASUKkAN DATA

memasukkan data biasanya adalah proses awal dari pengolahan data.suatu program harus dimungkinkan untuk dapat menerima data atau membaca suatu data yang di olah..basic dalam ini menyediakan beberapa statemen yg masing2 karakteristik sesuai dgn kebutuhan nya.yaitu:
*READ-DATA
*RESTORE
*INPUT
*LINE INPUT

disamping itu dgn menggunakan statemen ini,dapat juga memasukan data menggunakan fungsi INKEY$ dan INPUT$
· 0 komentar


S=1
K=1
FOR BARIS= 1 TO 10
FOR KOLOM= 1 TO 10
LOCATE S,K:PRINTBARI*KOLOM
K=K+4
NEXT KOLOM
K=1
S=S+1
NEXT BARIS

ALGORITMA & PEMROGRAMAN


BAB I PENGANTAR ALGORITMA DAN PROGRAM
1.1. Apakah Itu Algoritma
Ditinjau dari asal-usul katanya, kata Algoritma sendiri mempunyai sejarah
yang aneh. Orang hanya menemukan kata algorism yang berarti proses
menghitung dengan angka arab. Anda dikatakan algorist jika Anda
menghitung menggunakan angka arab. Para ahli bahasa berusaha
menemukan asal kata ini namun hasilnya kurang memuaskan. Akhirnya
para ahli sejarah matematika menemukan asal kata tersebut yang berasal
dari nama penulis buku arab yang terkenal yaitu Abu Ja’far Muhammad
Ibnu Musa Al-Khuwarizmi. Al-Khuwarizmi dibaca orang barat menjadi
Algorism. Al-Khuwarizmi menulis buku yang berjudul Kitab Al Jabar Wal-
Muqabala yang artinya “Buku pemugaran dan pengurangan” (The book of
restoration and reduction). Dari judul buku itu kita juga memperoleh akar
kata “Aljabar” (Algebra). Perubahan kata dari algorism menjadi algorithm
muncul karena kata algorism sering dikelirukan dengan arithmetic,
sehingga akhiran –sm berubah menjadi –thm. Karena perhitungan dengan
angka Arab sudah menjadi hal yang biasa, maka lambat laun kata algorithm
berangsur-angsur dipakai sebagai metode perhitungan (komputasi) secara
umum, sehingga kehilangan makna kata aslinya. Dalam bahasa Indonesia,
kata algorithm diserap menjadi algoritma.
1.1.1. Definisi Algoritma
“Algoritma adalah urutan langkah-langkah logis penyelesaian masalah
yang disusun secara sistematis dan logis”. Kata logis merupakan kata kunci
dalam algoritma. Langkah-langkah dalam algoritma harus logis dan harus
dapat ditentukan bernilai salah atau benar.
Dalam beberapa konteks, algoritma adalah spesifikasi urutan langkah untuk
melakukan pekerjaan tertentu. Pertimbangan dalam pemilihan algoritma
adalah, pertama, algoritma haruslah benar. Artinya algoritma akan memberikan
keluaran yang dikehendaki dari sejumlah masukan yang diberikan. Tidak
peduli sebagus apapun algoritma, kalau memberikan keluaran yang salah,
pastilah algoritma tersebut bukanlah algoritma yang baik.
Bab I: Pengantar Algoritma dan Program
2
Pertimbangan kedua yang harus diperhatikan adalah kita harus mengetahui
seberapa baik hasil yang dicapai oleh algoritma tersebut. Hal ini penting
terutama pada algoritma untuk menyelesaikan masalah yang memerlukan
aproksimasi hasil (hasil yang hanya berupa pendekatan). Algoritma yang
baik harus mampu memberikan hasil yang sedekat mungkin dengan nilai
yang sebenarnya.
Ketiga adalah efisiensi algoritma. Efisiensi algoritma dapat ditinjau dari 2
hal yaitu efisiensi waktu dan memori. Meskipun algoritma memberikan
keluaran yang benar (paling mendekati), tetapi jika kita harus menunggu
berjam-jam untuk mendapatkan keluarannya, algoritma tersebut biasanya
tidak akan dipakai, setiap orang menginginkan keluaran yang cepat. Begitu
juga dengan memori, semakin besar memori yang terpakai maka semakin
buruklah algoritma tersebut.
Dalam kenyataannya, setiap orang bisa membuat algoritma yang berbeda
untuk menyelesaikan suatu permasalahan, walaupun terjadi perbedaan
dalam menyusun algoritma, tentunya kita mengharapkan keluaran yang
sama. Jika terjadi demikian, carilah algoritma yang paling efisien dan cepat.

1.1.2. Beda Algoritma dan Program
Program adalah kumpulan pernyataan komputer, sedangkan metode dan
tahapan sistematis dalam program adalah algoritma. Program ditulis dengan
menggunakan bahasa pemrograman. Jadi bisa disebut bahwa program
adalah suatu implementasi dari bahasa pemrograman.
Beberapa pakar memberi formula bahwa:
Program = Algoritma + Bahasa (Struktur Data)
Bagaimanapun juga struktur data dan algoritma berhubungan sangat erat
pada sebuah program. Algoritma yang baik tanpa pemilihan struktur data
yang tepat akan membuat program menjadi kurang baik, demikian juga
sebaliknya.

Pembuatan algoritma mempunyai banyak keuntungan di antaranya:
1. Pembuatan atau penulisan algoritma tidak tergantung pada bahasa pemrograman manapun, artinya penulisan algoritma independen dari bahasa pemrograman dan komputer yang melaksanakannya. 2. Notasi algoritma dapat diterjemahkan ke dalam berbagai bahasa pemrograman. 3. Apapun bahasa pemrogramannya, output yang akan dikeluarkan sama karena algoritmanya sama.

Beberapa hal yang perlu diperhatikan dalam membuat algoritma:
1. Teks algoritma berisi deskripsi langkah-langkah penyelesaian masalah. Deskripsi tersebut dapat ditulis dalam notasi apapun asalkan mudah dimengerti dan dipahami. 2. Tidak ada notasi yang baku dalam penulisan teks algoritma seperti notasi bahasa pemrograman. Notasi yang digunakan dalam menulis algoritma disebut notasi algoritmik. 3. 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. 4. 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. 5. Algoritma sebenarnya digunakan untuk membantu kita dalam mengkonversikan suatu permasalahan ke dalam bahasa pemrograman. 6. Algoritma merupakan hasil pemikiran konseptual, supaya dapat dilaksanakan oleh komputer, algoritma harus ditranslasikan ke dalam notasi bahasa pemrograman. Ada beberapa hal yang harus diperhatikan pada translasi tersebut, yaitu: a. Pendeklarasian variabel Untuk mengetahui dibutuhkannya pendeklarasian variabel dalam penggunaan bahasa pemrograman apabila tidak semua bahasa pemrograman membutuhkannya. Bab I: Pengantar Algoritma dan Program 4 b. Pemilihan tipe data Apabila bahasa pemrograman yang akan digunakan membutuhkan pendeklarasian variabel maka perlu hal ini dipertimbangkan pada saat pemilihan tipe data. c. Pemakaian instruksi-instruksi Beberapa instruksi mempunyai kegunaan yang sama tetapi masingmasing memiliki kelebihan dan kekurangan yang berbeda. d. Aturan sintaksis Pada saat menuliskan program kita terikat dengan aturan sintaksis dalam bahasa pemrograman yang akan digunakan. e. Tampilan hasil Pada saat membuat algoritma kita tidak memikirkan tampilan hasil yang akan disajikan. Hal-hal teknis ini diperhatikan ketika mengkonversikannya menjadi program. f. Cara pengoperasian compiler atau interpreter. Bahasa pemrograman yang digunakan termasuk dalam kelompok compiler atau interpreter.

1.1.3. Algoritma Merupakan Jantung Ilmu Informatika
Algoritma adalah jantung ilmu komputer atau informatika. Banyak cabang
ilmu komputer yang mengarah ke dalam terminologi algoritma. Namun,
jangan beranggapan algoritma selalu identik dengan ilmu komputer saja.
Dalam kehidupan sehari-hari pun banyak terdapat proses yang dinyatakan
dalam suatu algoritma. Cara-cara membuat kue atau masakan yang
dinyatakan dalam suatu resep juga dapat disebut sebagai algoritma. Pada
setiap resep selalu ada urutan langkah-langkah membuat masakan. Bila
langkah-langkahnya tidak logis, tidak dapat dihasilkan masakan yang
diinginkan. Ibu-ibu yang mencoba suatu resep masakan akan membaca satu
per satu langkah-langkah pembuatannya lalu ia mengerjakan proses sesuai
yang ia baca. Secara umum, pihak (benda) yang mengerjakan proses disebut
pemroses (processor). Pemroses tersebut dapat berupa manusia, komputer,
robot atau alat-alat elektronik lainnya. Pemroses melakukan suatu proses
dengan melaksanakan atau “mengeksekusi” algoritma yang menjabarkan
proses tersebut.
Algoritma adalah deskripsi dari suatu pola tingkah laku yang dinyatakan
secara primitif yaitu aksi-aksi yang didefenisikan sebelumnya dan diberi
nama, dan diasumsikan sebelumnya bahwa aksi-aksi tersebut dapat kerjakan
sehingga dapat menyebabkan kejadian.

Melaksanakan algoritma berarti mengerjakan langkah-langkah di dalam
algoritma tersebut. Pemroses mengerjakan proses sesuai dengan algoritma
yang diberikan kepadanya. Juru masak membuat kue berdasarkan resep
yang diberikan kepadanya, pianis memainkan lagu berdasarkan papan not
balok. Karena itu suatu algoritma harus dinyatakan dalam bentuk yang
dapat dimengerti oleh pemroses. Jadi suatu pemroses harus:
1. Mengerti setiap langkah dalam algoritma.
2. Mengerjakan operasi yang bersesuaian dengan langkah tersebut.
Tabel 1.1. Contoh-Contoh Algoritma dalam Kehidupan Sehari-hari
No. Proses Algoritma Contoh Langkah dalam
Algoritma
1 Membuat kue Resep kue Masukkan telur ke dalam
wajan, kocok sampai
mengembang
2 Membuat pakaian Pola pakaian Gunting kain dari pinggir
kiri bawah ke arah kanan
sejauh 5 cm
3 Merakit mobil Panduan
merakit
Sambungkan komponen
A dengan komponen B
4 Kegiatan seharihari
Jadwal harian Pukul 06.00: mandi pagi,
pukul 07.00: berangkat
kuliah
5 Mengisi voucer HP Panduan
pengisian
Tekan 888, masukkan
nomor voucer

1.1.4. Mekanisme Pelaksanaan Algoritma oleh Pemroses
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 teknis algoritma yang ditulis dalam bahasa pemrograman
tertentu sehingga dapat dilaksanakan oleh komputer.
Kata “algoritma” dan “program” seringkali dipertukarkan dalam
penggunaannya. Misalnya ada orang yang berkata seperti ini: “program
pengurutan data menggunakan algoritma selection sort”. Atau pertanyaan
seperti ini: “bagaimana algoritma dan program menggambarkan grafik
tersebut?”. Jika Anda sudah memahami pengertian algoritma yang sudah


1.1.5. Belajar Memprogram dan Belajar Bahasa Pemrograman
Belajar memprogram tidak sama dengan belajar bahasa pemrograman.
Belajar memprogram adalah belajar tentang metodologi pemecahan
masalah, kemudian menuangkannya dalam suatu notasi tertentu yang
mudah dibaca dan dipahami. Sedangkan belajar bahasa pemrograman
berarti belajar memakai suatu bahasa aturan-aturan tata bahasanya,
pernyataan-pernyataannya, tata cara pengoperasian compiler-nya, dan
memanfaatkan pernyataan-pernyataan tersebut untuk membuat program
yang ditulis hanya dalam bahasa itu saja. Sampai saat ini terdapat puluhan
bahasa pemrogram, antara lain bahasa rakitan (assembly), Fortran, Cobol,
Ada, PL/I, Algol, Pascal, C, C++, Basic, Prolog, LISP, PRG, bahasabahasa
simulasi seperti CSMP, Simscript, GPSS, Dinamo. Berdasarkan
terapannya, bahasa pemrograman dapat digolongkan atas dua kelompok
besar:
1. Bahasa pemrograman bertujuan khusus. Yang termasuk kelompok
ini adalah Cobol (untuk terapan bisnis dan administrasi). Fortran
(terapan komputasi ilmiah), bahasa rakitan (terapan pemrograman
mesin), Prolog (terapan kecerdasan buatan), bahasa-bahasa
simulasi, dan sebagainya.
2. Bahasa perograman bertujuan umum, yang dapat digunakan untuk
berbagai aplikasi. Yang termasuk kelompok ini adalah bahasa
Pascal, Basic dan C. Tentu saja pembagian ini tidak kaku. Bahasabahasa
bertujuan khusus tidak berarti tidak bisa digunakan untuk
aplikasi lain. Cobol misalnya, dapat juga digunakan untuk terapan
ilmiah, hanya saja kemampuannya terbatas. Yang jelas, bahasabahasa
pemrograman yang berbeda dikembangkan untuk
bermacam-macam terapan yang berbeda pula.
Berdasarkan pada apakah notasi bahasa pemrograman lebih “dekat” ke
mesin atau ke bahasa manusia, maka bahasa pemrograman dikelompokkan
atas dua macam:
Bab I: Pengantar Algoritma dan Program
8
1. Bahasa tingkat rendah. Bahasa jenis ini dirancang agar setiap
instruksinya langsung dikerjakan oleh komputer, tanpa harus
melalui penerjemah (translator). Contohnya adalah bahasa mesin.
CPU mengambil instruksi dari memori, langsung mengerti dan
langsung mengerjakan operasinya. Bahasa tingkat rendah bersifat
primitif, sangat sederhana, orientasinya lebih dekat ke mesin, dan
sulit dipahami manusia. Sedangkan bahasa rakitan dimasukkan ke
dalam kelompok ini karena alasan notasi yang dipakai dalam bahasa
ini lebih dekat ke mesin, meskipun untuk melaksanakan
instruksinya masih perlu penerjemahan ke dalam bahasa mesin.
2. Bahasa tingkat tinggi, yang membuat pemrograman lebih mudah
dipahami, lebih “manusiawi”, dan berorientasi ke bahasa manusia
(bahasa Inggris). Hanya saja, program dalam bahasa tingkat tinggi
tidak dapat langsung dilaksanakan oleh komputer. Ia perlu
diterjemahkan terlebih dahulu oleh sebuah translator bahasa (yang
disebut kompilator atau compiler) ke dalam bahasa mesin sebelum
akhirnya dieksekusi oleh CPU. Contoh bahasa tingkat tinggi adalah
Pascal, PL/I, Ada, Cobol, Basic, Fortran, C, C++, dan sebagainya.
Bahasa pemrograman bisa juga dikelompokkan berdasarkan pada tujuan
dan fungsinya. Di antaranya adalah:
Gambar 1.2 Pembagian Bahasa Pemrograman
Secara sistematis berikut diberikan kiat-kiat untuk belajar memprogram dan
belajar bahasa pemrograman serta produk yang dapat dihasilkan:
a. Belajar Memprogram
• Belajar memprogram: belajar bahasa pemrograman.

• Belajar memprogram: belajar tentang strategi pemecahan masalah,
metodologi dan sistematika pemecahan masalah kemudian
menuliskannya dalam notasi yang disepakati bersama.
• Belajar memprogram: bersifat pemahaman persoalan, analisis dan
sintesis.
• Belajar memprogram, titik berat: designer program.
b. Belajar Bahasa Pemrograman
• Belajar bahasa pemrograman: belajar memakai suatu bahasa
pemrograman, aturan sintaks, tatacara untuk memanfaatkan pernyataan
yang spesifik untuk setiap bahasa.
• Belajar bahasa pemrograman, titik berat: coder.
c. Produk yang Dihasilkan Pemrogram
• Program dengan rancangan yang baik (metodologis, sistematis).
• Dapat dieksekusi oleh mesin.
• Berfungsi dengan benar.
• Sanggup melayani segala kemungkinan masukan.
• Disertai dokumentasi.
• Belajar memprogram, titik berat: designer program.
1.2. Menilai Sebuah Algoritma
Ketika manusia berusaha memecahkan masalah, metode atau teknik yang
digunakan untuk memecahkan masalah itu ada kemungkinan bisa banyak
(tidak hanya satu). Dan kita memilih mana yang terbaik di antara teknikteknik
itu. Hal ini sama juga dengan algoritma, yang memungkinkan suatu
permasalahan dipecahkan dengan metode dan logika yang berlainan. Yang
menjadi pertanyaan adalah bagaimana mengukur mana algoritma yang
terbaik?
Beberapa persyaratan untuk menjadi algoritma yang baik adalah:
• Tingkat kepercayaannya tinggi (realibility). Hasil yang diperoleh dari
proses harus berakurasi tinggi dan benar.
• Pemrosesan yang efisien (cost rendah). Proses harus diselesaikan
secepat mungkin dan frekuensi kalkulasi yang sependek mungkin.
Bab I: Pengantar Algoritma dan Program
10
• Sifatnya general. Bukan sesuatu yang hanya untuk menyelesaikan satu
kasus saja, tapi juga untuk kasus lain yang lebih general.
• Bisa dikembangkan (expandable). Haruslah sesuatu yang dapat kita
kembangkan lebih jauh berdasarkan perubahan requirement yang ada.
• Mudah dimengerti. Siapapun yang melihat, dia akan bisa memahami
algoritma Anda. Susah dimengertinya suatu program akan membuat
susah di-maintenance (kelola).
• Portabilitas yang tinggi (portability). Bisa dengan mudah
diimplementasikan di berbagai platform komputer.
• Precise (tepat, betul, teliti). Setiap instruksi harus ditulis dengan
seksama dan tidak ada keragu-raguan, dengan demikian setiap instruksi
harus dinyatakan secara eksplisit dan tidak ada bagian yang dihilangkan
karena pemroses dianggap sudah mengerti. Setiap langkah harus jelas
dan pasti.
Contoh: Tambahkan 1 atau 2 pada x.
Instruksi di atas terdapat keraguan.
• Jumlah langkah atau instruksi berhingga dan tertentu. Artinya, untuk
kasus yang sama banyaknya, langkah harus tetap dan tertentu meskipun
datanya berbeda.
• Efektif. Tidak boleh ada instruksi yang tidak mungkin dikerjakan oleh
pemroses yang akan menjalankannya.
Contoh: Hitung akar 2 dengan presisi sempurna.
Instruksi di atas tidak efektif, agar efektif instruksi tersebut diubah.
Misal: Hitung akar 2 sampai lima digit di belakang koma.
• Harus terminate. Jalannya algoritma harus ada kriteria berhenti.
Pertanyaannya adalah apakah bila jumlah instruksinya berhingga maka
pasti terminate?
• Output yang dihasilkan tepat. Jika langkah-langkah algoritmanya logis
dan diikuti dengan seksama maka dihasilkan output yang diinginkan.
1.3. Penyajian 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,

misalnya dengan flowchart. Secara umum, pseudocode mengekspresikan
ide-ide secara informal dalam proses penyusunan algoritma. Salah satu cara
untuk menghasilkan kode pseudo adalah dengan meregangkan aturan-aturan
bahasa formal yang dengannya versi akhir dari algoritma akan
diekspresikan. Pendekatan ini umumnya digunakan ketika bahasa
pemrograman yang akan digunakan telah diketahui sejak awal.
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 bagian-bagian yang terlupakan dalam analisis masalah. Di
samping itu flowchart juga berguna sebagai fasilitas untuk berkomunikasi
antara pemrogram yang bekerja dalam tim suatu proyek.
Ada dua macam flowchart yang menggambarkan proses dengan komputer,
yaitu:
1. Flowchart sistem yaitu bagan dengan simbol-simbol tertentu yang menggambarkan urutan prosedur dan proses suatu file dalam suatu media menjadi file di dalam media lain, dalam suatu sistem pengolahan data.
Beberapa contoh Flowchart sistem:
Dokumen Pengurutan Offline
Kegiatan Manual Hard Disk
2. Flowchart program yaitu bagan dengan simbol-simbol tertentu yang menggambarkan urutan proses dan hubungan antar proses secara mendetail di dalam suatu program.
Kaidah-Kaidah Umum Pembuatan Flowchart Program
Dalam pembuatan flowchart Program tidak ada rumus atau patokan yang
bersifat mutlak. Karena flowchart merupakan gambaran hasil pemikiran
dalam menganalisis suatu masalah dengan komputer. Sehingga flowchart

Input
(Bahan mentah)
Proses Output
(Bahan Jadi)
yang dihasilkan dapat bervariasi antara satu pemrogram dengan yang
lainnya.
Namun secara garis besar setiap pengolahan selalu terdiri atas 3 bagian
utama, yaitu:
�� Input,
�� Proses pengolahan dan
�� Output
Untuk pengolahan data dengan komputer, urutan dasar pemecahan suatu
masalah:
�� START, berisi pernyataan untuk persiapan peralatan yang
diperlukan sebelum menangani pemecahan persoalan.
�� READ, berisi pernyataan kegiatan untuk membaca data dari suatu
peralatan input.
�� PROSES, berisi kegiatan yang berkaitan dengan pemecahan
persoalan sesuai dengan data yang dibaca.
�� WRITE, berisi pernyataan untuk merekam hasil kegiatan ke
peralatan output.
�� END, mengakhiri kegiatan pengolahan.
Walaupun tidak ada kaidah-kaidah yang baku dalam penyusunan flowchart,
namun ada beberapa anjuran:
�� Hindari pengulangan proses yang tidak perlu dan logika yang
berbelit sehingga jalannya proses menjadi singkat.
�� Jalannya proses digambarkan dari atas ke bawah dan diberikan
tanda panah untuk memperjelas.
�� Sebuah flowchart diawali dari satu titik START dan diakhiri dengan
END.



Keterangan 1:

1.4. Struktur Dasar Algoritma
Algoritma berisi langkah-langkah penyelesaian suatu masalah. Langkahlangkah
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
Digunakan untuk program yang pernyataannya sequential atau urutan.
2. Struktur Pemilihan
Digunakan untuk program yang menggunakan pemilihan atau
penyeleksian kondisi.
3. Struktur Perulangan
Digunakan untuk program yang pernyataannya akan dieksekusi
berulang-ulang.

1.5. Tahapan dalam Pemrograman
Langkah-langkah yang dilakukan dalam menyelesaikan masalah dalam
pemrograman dengan komputer adalah:
1. Definisikan Masalah
Berikut adalah hal-hal yang harus diketahui dalam analisis masalah
supaya kita mengetahui bagaimana permasalahan tersebut:
a. Kondisi awal, yaitu input yang tersedia.
b. Kondisi akhir, yaitu output yang diinginkan.
c. Data lain yang tersedia.
d. Operator yang tersedia.
e. Syarat atau kendala yang harus dipenuhi.
Contoh kasus:
Menghitung biaya percakapan telepon di wartel. Proses yang perlu
diperhatikan adalah:
a. Input yang tersedia adalah jam mulai bicara dan jam selesai bicara.
b. Output yang diinginkan adalah biaya percakapan.
c. Data lain yang tersedia adalah besarnya pulsa yang digunakan dan
biaya per pulsa.
d. Operator yang tersedia adalah pengurangan (-), penambahan (+),
dan perkalian (*).
e. Syarat kendala yang harus dipenuhi adalah aturan jarak dan aturan
waktu.
2. Buat Algoritma dan Struktur Cara Penyelesaian
Jika masalahnya kompleks, maka dibagi ke dalam modul-modul. Tahap
penyusunan algoritma seringkali dimulai dari langkah yang global
terlebih dahulu. Langkah global ini diperhalus sampai menjadi langkah
yang lebih rinci atau detail. Cara pendekatan ini sangat bermanfaat
dalam pembuatan algoritma untuk masalah yang kompleks. Penghalusan
langkah dengan cara memecah langkah menjadi beberapa langkah.
Setiap langkah diuraikan lagi menjadi beberapa langkah yang lebih
sederhana. Penghalusan langkah ini akan terus berlanjut sampai setiap
langkah sudah cukup rinci dan tepat untuk dilaksanakan oleh pemroses.
3. Menulis Program
Algoritma yang telah dibuat, diterjemahkan dalam bahasa komputer
menjadi sebuah program. Perlu diperhatikan bahwa pemilihan algoritma
yang salah akan menyebabkan program memiliki untuk kerja yang
kurang baik. Program yang baik memiliki standar penilaian:
Bab I: Pengantar Algoritma dan Program
16
a. Standar teknik pemecahan masalah
- Teknik Top-Down
Teknik pemecahan masalah yang paling umum digunakan.
Prinsipnya adalah suatu masalah yang kompleks dibagi-bagi ke
dalam beberapa kelompok masalah yang lebih kecil. Dari
masalah yang kecil tersebut dilakukan analisis. Jika dimungkinkan
maka masalah tersebut akan dipilah lagi menjadi subbagiansubbagian
dan setelah itu mulai disusun langkah-langkah
penyelesaian yang lebih detail.
- Teknik Bottom-Up
Prinsip teknik bottom up adalah pemecahan masalah yang
kompleks dilakukan dengan menggabungkan prosedur-prosedur
yang ada menjadi satu kesatuan program sebagai penyelesaian
masalah tersebut.
b. Standar penyusunan program
- Kebenaran logika dan penulisan.
- Waktu minimum untuk penulisan program.
- Kecepatan maksimum eksekusi program.
- Ekspresi penggunaan memori.
- Kemudahan merawat dan mengembangkan program.
- User Friendly.
- Portability.
- Pemrograman modular.
4. Mencari Kesalahan
a. Kesalahan sintaks (penulisan program).
b. Kesalahan pelaksanaan: semantik, logika, dan ketelitian.
5. Uji dan Verifikasi Program
Pertama kali harus diuji apakah program dapat dijalankan. Apabila
program tidak dapat dijalankan maka perlu diperbaiki penulisan
sintaksisnya tetapi bila program dapat dijalankan, maka harus diuji
dengan menggunakan data-data yang biasa yaitu data yang diharapkan
oleh sistem. Contoh data ekstrem, misalnya, program menghendaki
masukan jumlah data tetapi user mengisikan bilangan negatif. Program
sebaiknya diuji menggunakan data yang relatif banyak.

6. Dokumentasi Program
Dokumentasi program ada dua macam yaitu dokumentasi internal dan
dokumentasi eksternal. Dokumentasi internal adalah dokumentasi yang
dibuat di dalam program yaitu setiap kita menuliskan baris program
sebaiknya diberi komentar atau keterangan supaya mempermudah kita
untuk mengingat logika yang terdapat di dalam instruksi tersebut, hal
ini sangat bermanfaat ketika suatu saat program tersebut akan
dikembangkan. Dokumentasi eksternal adalah dokumentasi yang
dilakukan dari luar program yaitu membuat user guide atau buku
petunjuk aturan atau cara menjalankan program tersebut.
7. Pemeliharaan Program
a. Memperbaiki kekurangan yang ditemukan kemudian.
b. Memodifikasi, karena perubahan spesifikasi.
Pemrograman Prosedural
Algoritma berisi urutan langkah-langkah penyelesaian masalah. Ini berarti
algoritma adalah proses yang prosedural. Pada program prosedural, program
dibedakan antara bagian data dengan bagian instruksi. Bagian instruksi
terdiri dari atas runtunan (sequence) instruksi yang dilaksanakan satu per
satu secara berurutan oleh sebuah pemroses. Alur pelaksanaan instruksi
dapat berubah karena adanya pencabangan kondisional. Data yang disimpan
di dalam memori dimanipulasi oleh instruksi secara beruntun. Kita katakan
bahwa tahapan pelaksanaan program mengikuti pola beruntun atau prosedural.
Paradigma pemrograman seperti ini dinamakan pemrograman prosedural.
Bahasa-bahasa tingkat tinggi seperti Cobol, Basic, Pascal, Fortran, dan
C/C++ mendukung kegiatan pemrograman prosedural, karena itu mereka
dinamakan juga bahasa prosedural. Selain paradigma pemrograman
prosedural, ada lagi paradigma yang lain yaitu pemrograman berorientasi
objek (Object Oriented Programming atau OOP). Paradigma pemrograman
ini merupakan trend baru dan sangat popular akhir-akhir ini. Pada
paradigma OOP, data dan instruksi dibungkus (encapsulation) menjadi satu.
Kesatuan ini disebut kelas (class) dan instansiasi kelas pada saat run-time
disebut objek (object). Data di dalam objek hanya dapat diakses oleh
instruksi yang ada di dalam objek itu saja.
Paradigma pemrograman yang lain adalah pemrograman fungsional,
pemrograman deklaratif, dan pemrograman konkuren. Buku ini hanya

menyajikan paradigma pemrograman presedural saja. Paradigma
pemrograman yang lain di luar cakupan buku ini.
Contoh Kasus dan Penyelesaian
1. Menghitung luas dan keliling lingkaran
Proses kerjanya sebagai berikut:
a. Baca jari-jari lingkaran
b. Tentukan konstanta phi = 3.14
c. Hitung luas dan keliling
L = phi*r*r
K = 2*phi*r
d. Cetak luas dan keliling
2. Menghitung rata-rata tiga buah data
a. Algoritma dengan struktur bahasa Indonesia
- Baca bilangan a, b, dan c
- Jumlahkan ketiga bilangan tersebut
- Bagi jumlah tersebut dengan 3
- Tulis hasilnya
b. Algoritma dengan pseudocode
input (a, b, c)
Jml = a+b+c
Rerata = Jml/3
Output (Rerata)
3. Algoritma konversi suhu dalam derajat Celcius ke derajat Kalvin
Penyelesaian menggunakan pseudocode:
Input (Celcius)
Kalvin = Celcius + 273
Output (Kalvin)
Penulisan Algoritma
• Dalam bahasa natural (Bahasa Indonesia,
Bahasa Inggris, dan bahasa manusia
lainnya)
– Tapi sering membingungkan (ambiguous)
• Menggunakan flow chart (diagram alir)
– Bagus secara visual akan tetapi repot kalau
algoritmanya panjang
• Menggunakan pseudo-code
– Sudah lebih dekat ke bahasa pemrograman,
namun sulit dimengerti oleh orang yang tidak mengerti pemrograman

Algoritma dengan pseudocode
maks ← bilangan pertama
if (maks < bilangan kedua)
maks ← bilangan kedua
if (maks < bilangan ketiga)
maks ← bilangan ketiga

Aspek Penting dari
Algoritma
1. Finiteness
• Algoritma harus berhenti after a finite number of steps
2. Definiteness
• Setiap langkah harus didefinisikan secara tepat, tidak
boleh membingungkan (ambiguous)
3. Input
• Sebuah algoritma memiliki nol atau lebih input yang
diberikan kepada algoritma sebelum dijalankan
4. Output
• Sebuah algoritma memiliki satu atau lebih output,
yang biasanya bergantung kepada input
5. Effectiveness
• Setiap algoritma diharapkan miliki sifat efektif


Definisi Algoritma
adalah urutan langkah-langkah logis
penyelesaian masalah yang disusun secara sistematis.
Contoh :
Algoritma TUKAR ISI BEJANA
Diberikan dua buah bejana A dan B, bejana A berisi
larutan berwarna merah, bejana B berisi larutan
berwarna biru. Pertukarkan isi kedua bejana itu
sedemikian sehingga bejana A berisi larutan
berwarna biru dan bejana B berisi larutan berwarna
merah.
DESKRIPSI :
– Tuangkan larutan dari bejana A ke dalam bejana B
– Tuangkan larutan dari bejana B ke dalam bejana A.
Allgorriittmaa
• Algoritma TUKAR ISI BEJANA di atas tidak
menghasilkan pertukaran yang benar. Langkah
di atas tidak logis, hasil pertukaran yang terjadi
adalah percampuran kedua larutan tersebut.
• Untuk mempertukarkan isi duah bejana,
diperlukan sebuah bejana tambahan sebagai
tempat penampungan sementara, misalnya
bejana C. Maka algoritma untuk menghasilkan
pertukaran yang benar adalah sebagai berikut :
4
AAllggoorriittmaa TTUUKKAARR IISSII BBEEJJAANNAA
Diberikan dua buah bejana A dan B, bejana A berisi
larutan berwarna merah, bejana B berisi larutan
berwarna biru. Pertukarkan isi kedua bejana itu
sedemikian sehingga bejana A berisi larutan
berwarna biru dan bejana B berisi larutan berwarna
merah.
DESKRIPSI :
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.
Ciirrii peenttiing aallgorriittmaa
• Algoritma harus berhenti setelah mengerjakan
sejumlah langkah terbatas.
• Setiap langkah harus didefinisikan dengan
tepat dan tidak berarti-dua (Ambiguitas).
• Algoritma memiliki nol atau lebih masukkan.
• Algoritma memiliki nol atau lebih keluaran.
• algoritma harus efektif (setiap langkah harus
sederhana sehingga dapat dikerjakan dalam
waktu yang masuk akal).
5
Meempprrooggrraam ddaann bbaahhaassaa ppeemrrooggrraamaann
• Belajar memprogram adalah belajar tentang
metodologi pemecahan masalah, kemudian
menuangkannya dalam suatu notasi tertentu
yang mudah dibaca dan dipahami.
• Belajar bahasa pemrograman adalah belajar
memakai suatu bahasa, aturan tata bahasanya,
instruksi-instruksinya, tata cara pengoperasian
compiler-nya untuk membuat program yang
ditulis dalam bahasa itu saja.
Noottaassii Allggoorriittmaa
• Penulisan algoritma tidak tergantung dari
spesifikasi bahasa pemrograman dan
komputer yang mengeksekusinya. Notasi
algoritma bukan notasi bahasa
pemrograman tetapi dapat diterjemahkan
ke dalam berbagai bahasa pemrograman
6
Nottaassii aallgorriittmaa
• Notasi algoritma dapat berupa :
– Uraian kalimat deskriptif (narasi)
Contoh
Algoritma Kelulusan_mhs
Diberikan nama dan nilai mahasiswa, jika nilai tersebut lebih besar
atau sama dengan 60 maka mahasiswa tersebut dinyatakan lulus
jika nilai lebih kecil dari 60 maka dinyatakan tidak lulus.
DESKRIPSI :
baca nama dan nilai mahasiswa.
jika nilai >= 60 maka
keterangan = lulus
tetapi jika
keterangan = tidak lulus.
tulis nama dan keterangan

Psseeudo--ccodee..
Algoritma Kelulusan_mhs
{diberikan nama dan nilai mahasiswa, jika nilai tersebut lebih
besar atau sama dengan 60 maka mahasiswa tersebut
dinyatakan lulus jika tidak maka dinyatakan tidak lulus}
DEKLARASI :
Nama : string
Nilai : integer
Keterangan : string
DESKRIPSI :
read (nama, nilai)
if nilai >= 60 then
keterangan = ‘lulus’
else
keterangan = ‘tidak lulus’
write(nama, keterangan

AAttuurraann PPeennuulliissaann TTeekkss aallggoorriittmaa
• Judul algoritma
Bagian yang terdiri atas nama algoritma dan
penjelasan (spesifikasi) tentang algoritma tersebut.
Nama sebaiknya singkat dan menggambarkan apa
yang dilakukan oleh algoritma tersebut.
• Deklarasi
Bagian untuk mendefinisikan semua nama yang
digunakan di dalam program. Nama tersebut dapat
berupa nama tetapan, peubah, tipe, prosedur dan
fungsi.
• Deskripsi
Bagian ini berisi uraian langkah-langkah penyelesaian
masalah yang ditulis dengan menggunakan notasi
yang akan dijelaskan selanjutnya
8
Algoritma Luas_Kell_Lingkaran {<- ini judul algoritma} {menghitung luas dan keliling lingkaran untuk ukuran jari-jari tertentu. Algoritma menerima masukan jari-jari lingkaran, menghitung luas dan kelilingnya, dan mencetak luas lingkaranke piranti keluaran <- ini spesifikasi algoritma} DEKLARASI : const phi = 3.14 {nilai ? } R : real {jari-jari lingkaran} Luas : real {luas lingkaran} Keliling : real {keliling lingkaran} DESKRIPSI : read (R) Luas <- phi * R *R Keliling <- 2 * phi * R write(luas, keliling)

arti algoritma

Adalah inti dari ilmu komputer.
• Algoritma adalah urutan-urutan dari instruksi atau
langkah-langkah untuk menyelesaikan suatu masalah.
• Algoritma adalah blueprint dari program.
• Sebaiknya disusun sebelum membuat program.
• Kriteria suatu algoritma:
– Ada input dan output
– Efektivitas dan efisien
– Terstruktur

Contoh Algoritma 1
Mengirim surat kepada teman:
1. Tulis surat pada secarik kertas surat.
2. Ambil sampul surat.
3. Masukkan surat ke dalam sampul.
4. Tutup sampul surat menggunakan perekat.
5. Jika kita ingat alamat teman tersebut, maka
tulis alamat pada sampul surat.
6. Jika tidak ingat, lihat buku alamat, kemudian
tulis alamat pada sampul surat.
7. Tempel perangko pada surat.
8. Bawa surat ke kantor pos untuk diposkan.

Contoh Algoritma 2
Mencari akar bulat positif dari bilangan
bulat (integer) positif a:
lMasukkan bilangan bulat positif a
lBerikan harga awal x sama dengan 1
lHitung y sebesar x * x
lJika y sama dengan a maka cetak x
sebagai akar dari a. Selesai
lTambah nilai x dengan 1
lPergi ke langkah 3.

Contoh Algoritma 3
Menentukan apakah suatu bilangan merupakan
bilangan ganjil atau bilangan genap.
lMasukkan sebuah bilangan sembarang
lBagi bilangan tersebut dengan bilangan 2
lHitung sisa hasil bagi pada langkah 2.
lBila sisa hasil bagi sama dengan 0 maka bilangan itu adalah bilangan genap tetapi bila sisa hasil bagi sama dengan 1 maka

Konsep Dasar Pemrograman BASIC


Bahasa BASIC adalah salah satu bahasa tingkat tinggi (High Level Language) yang berorientasi ke pemecahan masalah (problem solving). BASIC yang merupakan singkatan dari Beginner’s All purpose Symbolic Instruction Code, ditemukan oleh John G. Kemeny, profesor dari Darthmouth College dan Thomas E. Kurtz pada tahun 1960. Perintah-perintah dalam bahasa BASIC relatif mudah dipahami, baik oleh orang yang awam sekalipun.
Banyak sekali jenis compiler dari versi bahasa BASIC yang ada di pasaran, semisal : BASICA, GWBASIC, MBASIC, Turbo BASIC, Quick BASIC, Power BASIC, dll, akan tetapi pada dasarnya kesemuanya bermuara pada style pemrograman yang sama yaitu bahasa BASIC itu sendiri.
Bahasa BASIC kemudian dikembangkan dengan pemrograman yang lebih terstruktur, dengan tujuan agar sedapat mungkin dihindari penggunaan perintah GOTO yang menyebabkan program menjadi sukar dipahami alurnya. Pada pemrograman terstuktur terdapat perintah penyeleksian kondisi dan berbagai macam alternatif perintah perulangan. Bahasa BASIC yang sudah terstruktur, semisal TURBO BASIC dan Quick BASIC.
Saat ini perkembangan bahasa BASIC sudah sedemikian pesatnya, sehingga terdapat software BASIC yang dapat dijalankan pada platform WINDOWS dan pemrograman berorientasi obyek (Object Oriented Programming) seperti VISUAL BASIC.
II.1 Data, Konstanta dan Karakter
Kata data adalah bentuk jamak dari kata datum yang berarti fakta. Data adalah istilah umum yang mewakili angka, karakter dan simbol-simbol lain yang berfungsi sebagai masukan untuk proses komputer. Data yang mewakili simbol-simbol bukan merupakan informasi kecuali dalam pengertian tertentu.
Diktat Kuliah Bahasa Komputer I halaman 11 Iwan Syarif Politeknik Elektronika Negeri Surabaya – ITS
Jenis-jenis data di dalam setiap bahasa pemrograman belum tentu sama, namun biasanya terbagi menjadi beberapa bagian besar, yaitu :
Data Numerik, yaitu jenis data yang digunakan dalam proses aritmatika atau proses matematis lainnya.
Data String, yaitu jenis data yang dapat terdiri dari berbagai macam karakter. Digunakan untuk proses yang non matematis.
Data Logika, yaitu data yang hanya terdiri dari dua satuan, yaitu benar (true) dan salah (false). Digunakan dalam suatu proses logika yang terdiri dari persamaan boolean.
Secara umum tipe data dibagi dalam 2 kelompok besar, yaitu :
a. Tipe String
b. Tipe Numerik
Suatu data sifatnya tetap, dan digunakan dalam pemrograman diistilahkan dengan konstanta. Ada dua tipe konstanta yaitu :
a. Konstanta string/alphanumerik
Contoh : “Hello”, ”PENS”, ”Belajar Bahasa BASIC”
b. Konstanta numerik
Konstanta bulat (integer)
Desimal : terdiri atas angka 0 – 9, contoh : 200, 7, 45
Hexadesimal : terdiri atas angka 0 – F, contoh : &HF00, &HFA3, &H2E
Oktal : terdiri atas angka 0 – 7, contoh : &O107,&O112
Biner : terdiri atas angka 0 – 1, contoh : &B11001100,&B11110011
Konstanta titik tetap (real)
Contoh : 10.13, 32.123, 0.42221
Konstanta titik mengambang (eksponensial)
Yaitu konstanta yang dituliskan dengan scientific notation.
Dengan bentuk umum : bulat.pecahan{E|D} {[+] | [-]+} pangkat
Contoh : 2.23518E+2
II.2. Variabel
Variabel (pengubah) adalah suatu lambang dari sebuah daerah di memori utama komputer yang dapat berisi suatu nilai. Variabel merupakan nama yang mewakili nilai data dimana nilai tersebut dapat berubah pada saat program dieksekusi.
Pada setiap bahasa pemrograman, pemberian suatu nilai ke dalam suatu variabel (assignment) mempunyai bentuk penulisan yang berbeda-beda. Meskipun mempunyai arti yang sama dalam pemrogramannya. Dalam pemrograman bahasa BASIC, di depan penulisan variabel diberikan simbol untuk tiap jenis data yang diwakilinya. (Untuk tiap-tiap jenis data simbol yang diguanakan berbeda dan untuk data numerik, penambahan simbol tersebut sifatnya hanya opsional saja).
Suatu variabel dapat mewakili :
a. Nilai Konstanta
Pecahan = 13.45 Nilai = 85 Nama$ = “Andi”
b. Nilai dari pengubah lain
Nama$=”saya”
Pengarang$=Nama$
c. Nilai yang diperoleh dari kombinasi beberapa pengubah atau nilai konstanta dengan
melalui operator
Pi = 3.141593#
Rad = derajat / 180 * pi
Secara umum syarat-syarat penulisan nama variabel, adalah :
a. Nama variabel jangan terlalu panjang, meskipun harus dengan jelas menunjukkan fungsi nilai data yang diwakilinya. (sebab setiap bahasa pemrograman mempunyai batas maksimal panjang nama variabel).
b. Nama variabel tidak menggunakan tanda-tanda khusus seperti tanda baca dan spasi; meskipun dalam bahasa pemrograman tertentu dapat digunakan suatu pemisah dalam penulisan nama variabel. Dalam BASIC adalah titik (.).
Misal : Nama.Siswa$
Jenis Variabel
Di dalam bahasa BASIC suatu variabel dibedakan atas variabel numerik dan variabel string. Variabel numerik adalah variabel yang mengandung nilai numerik atau angka sedangkan variabel string adalah variabel yang berisi nilai huruf /alpha-numerik. Penggolongan variabel dalam bahasa BASIC dijelaskan pada tabel berikut ini :
Jenis variabel
Simbol
Range nilai
Memory yang
dibutuhkan
String
$
3
byte
Integer
%
-32768 s/d 32767
2 byte
Long Integer
&
-2.147.483.648 s/d
-2.147.483.647
4 byte
Single precision
!
±8.43×10-37 s/d
±3.37×1038
4 byte
Double precision
#
±4.19×10-307 s/d
±1.67×10308
8 byte
II.2.1. Variabel numerik
A. Single Precision
Variabel presisi tunggal (single precision) merupakan default dari variabel yang digunakan dalam bahasa BASIC. Jadi kalau membuat suatu variabel dan tidak ditambahkan karakter apapun (!,#,%,&,$) berarti variabel tersebut bertipe presisi tunggal. Selain itu variabel ini juga biasanya ditulis dengan tambahan karakter ‘!’ di belakangnya. Variabel ini tergolong variabel yang dapat menampung bilangan real (pecahan) dan membutuhkan memory sebesar 4 byte. Variabel jenis ini mempunyai ketepatan sampai dengan 7 digit.
Program 2.1.
‘Variabel bertipe single precision
‘ditulis dengan tanda !
a!=100
b!=3
c!=a! / b!
print c!
‘Variabel single precision dapat juga
‘ditulis tanpa tanda !
x= 22
y= 7
z= x/y
? z
Output :
33.33333206176758 yang dapat dipercaya (significant)
3.142857074737549 hanya 7 digit pertama
B. Double Precision
Variabel bertipe ini mempunyai ketepatan sampai dengan 15 digit. Variabel ini selalu diakhiri dengan tanda ‘#’ dan membutuhkan memory sebesar 8 byte.
Program 2.2.
‘Variabel bertipe double precision
a#=100
b#=3
c#=a# / b#
print c#
x#= 22
y#= 7
z#= x#/y#
? z#
Output :
33.33333333333334 yang dapat dipercaya (significant)
3.142857142857143 sampai dengan 15 digit pertama
C. Integer
Variabel integer adalah variabel numerik yang dapat menampung bilangan bulat (tidak mengandung pecahan) dari –32768 sampai dengan 32767. Bila terdapat nilai pecahan maka akan dibulatkan. Pembulatannya adalah jika lebih besar atau sama dengan 5 maka akan dibulatkan ke atas, sedangkan jika kurang dari 5 akan dibulatkan ke bawah. Variabel jenis ini hanya membutuhkan memory sebesar 2 byte dan penulisannya selalu menggunakan tanda ‘%’.
Program 2.3.
‘Variabel bertipe integer
cls
a% = 22
b% = 7
c% = 22/7
?c%
d%= 5/4
?d%
e%= 10/4
?e%
Output
3 —————- pembulatan ke bawah
1 —————- hasilnya mestinya 1.25 dibulatkan ke bawah
2 —————- hasilnya mestinya 2.5 dibulatkan ke atas
D. Long Integer
Variabel ini juga hanya menyimpan bilangan bulat tetapi mempunyai jangkauan nilai yang jauh lebih besar daripada variabel bertipe integer. Variabel ini selalu diakhiri dengan tanda ‘&’ dan membutuhkan memory sebesar 4 byte.
Program 2.4.
‘Perbandingan variabel integer dan long integer
a= 100
b= 1000
c& = a*b
?c& Output : 100000 (tipe long integer)
d% = a*b
?d% Terjadi overflow / error karena
variabel integer maksimal hanya
mampu menampung nilai -32768 s/d 32767
II.2.2. Variabel string
Variabel string disebut juga dengan variabel alphanumerik. Variabel ini selalu menggunakan tanda ‘$’ dan membutuhkan memory sebesar 3 byte.
Program 2.5.
‘Contoh variabel string
cls
nama$=”Bento”
rumah$=”real estate”
print “Namaku “;nama$;” rumah “;rumah$
a$=”Mukelu”
b$=”jauh”
? a$+” “+b$+”…”
Output
Namaku Bento rumah real estate
Mukelu jauh…
II.3. Operator
Operator adalah simbol-simbol khusus yang digunakan untuk mengoperasikan suatu nilai data (operand).
Ada beberapa jenis operator, yaitu :
a. Operator Aritmatika
Digunakan untuk mengoperasikan data-data numerik, seperti penjumlahan, pengurangan, perkalian, pembagian, dll. Dalam proses aritmatika tersebut, pengerjaan operasi tergantung dari tingkat valensi operator-operator yang terlibat. Perpangkatan memiliki valensi tertinggi, kemudian dilanjutkan dengan perkalian, pembagian, pembagian bulat dan sisa pembagian, sedangkan penjumlahan dan pengurangan mempunyai valensi yang terendah.
Operator
Keterangan
Hirarki
^
Pangkat
1
*
Perkalian
2
/
Pembagian real
2
\
Pembagian integer
2
MOD
Modulus (sisa pembagian)
2
+
Penjumlahan
3
-
Pengurangan
3
b. Operator Relasi
Digunakan untuk mewakili sebuah nilai logika (nilai boolean), dari suatu persamaan atau nilai.
Operator-operator yang terlibat adalah :
= : sama dengan
> : lebih besar
< : lebih kecil
<> : tidak sama dengan
>= : lebih besar atau sama dengan
<= : kurang atau sama dengan
c. Operator Logika
Digunakan untuk mengoperasikan operand (konstanta, variabel, atau suatu ekspresi) secara logis. Operator-operator logika yang umum dalam bahasa pemrograman : AND , OR, NOT.
II.4. Ungkapan (Ekspresi)
Ungkapan dapat berupa konstanta (untai/numerik), variabel (untai/numerik) dan nilai tunggal yang diperoleh dengan mengkombinasikan operand dan operator, seperti 5+4.
Ungkapan-ungkapan dibagi menjadi empat kategori :
a. Ungkapan numerik
2 + 5 3 ^ 4 2 + 7 ^ 5
b. Ungkapan string
“ABCD” + “EFGH” A$ + B$
Satu-satunya operator yang berlaku pada ungkapan string hanyalah tanda +, yang berfungsi untuk menggabungkan dua untai.
c. Ungkapan relasi/hubungan
Tipe untai dapat juga menggunakan operator relasi seperti halnya dengan tipe numerik. Misalnya diketahui bahwa ‘A’ lebih kecil dari ‘B’
d. Ungkapan logika
NOT (A)
A>5 AND B=4
A$=”Agus” OR A$=”Doni”
II.5. Perintah-perintah Dasar
Turbo BASIC mempunyai perintah dan fungsi yang banyak sekali. Berikut ini akan dijelaskan perintah-perintah dasar yang paling sering digunakan oleh para programmer pemula.
II.5.1. Perintah-perintah Input
Perintah-perintah input digunakan untuk memasukkan data ke dalam program melalui perangkat luar seperti keyboard, mouse, file, dll. Diantaranya adalah perintah INPUT, LINE INPUT, READ-DATA dan RESTORE
INPUT
Perintah INPUT digunakan untuk menerima masukan data dari keyboard. Variasi penggunaan dan cara penulisan perintah INPUT adalah sbb. :
INPUT a
INPUT x,y
INPUT “Masukkan alas : “,alas
INPUT “Masukkan alas,tinggi :”,alas,tinggi
INPUT “Masukkan kata : “, kata$
Jika pada perintah input tidak ditambahkan pesan (yang tertulis di antara dua tanda petik), pada saat program di-RUN akan keluar tanda tanya yang artinya komputer menunggu pemakai program untuk memasukkan data yang diinginkan. Untuk mengakhiri proses pemasukan data harus ditekan tombol ENTER. Perintah INPUT dapat digunakan untuk memasukkan data numerik (angka) maupun string.
LINE INPUT
Perintah LINE INPUT digunakan untuk memasukkan suatu nilai string ke variabel string. Kelebihan perintah ini dibandingkan perintah INPUT biasa adalah bahwa perintah ini dapat digunakan untuk memasukkan rangkaian string yang dipisahkan oleh tanda koma. Tetapi perintah LINE INPUT tidak dapat digunakan untuk memasukkan data numerik.
Contoh perbandingan perintan INPUT dan LINE INPUT :
REM Menggunaan perintah INPUT
INPUT “Masukkan nama : “,nama$
PRINT nama$
Output
Masukkan nama : satu,dua,tiga
satu output tidak sesuai dengan input
REM Menggunaan perintah LINE INPUT
LINE INPUT “Masukkan nama : “,nama$
PRINT nama$
Output
Masukkan nama : satu,dua,tiga
satu,dua,tiga
READ-DATA
Perintah READ dan DATA saling berhubungan. READ membaca data yang didefiniskan oleh perintah DATA. Jumlah perintah READ tidak boleh lebih banyak dari pada perintah DATA. Letak perintah READ boleh di atas perintah DATA maupun di bawahnya.
Program 2.
Data “Agus”,75,”Budi”,68
Data “Dewi”,90
Read nama$,nilai
Print nama$,nilai
Read nama$,nilai
print nama$,nilai
Read nama$,nilai
print nama$,nilai
Read nama$,nilai
print nama$,nilai
Data “Eko”,65
Output :
Agus 75
Budi 68
Dewi 90
Eko 65
RESTORE
Nilai yang tertera pada instruksi DATA hanya dapat dibaca satu kali saja dengan instruksi READ. Agar nilai tersebut dapat dibaca kembali maka dapat digunakan instruksi RESTORE.
Program
Data “Agus”,75
Read nama$,nilai
? nama$,nilai
Read nama$,nilai out of data
? nama$,nilai
Jika program di atas dijalankan maka akan terjadi kesalahan (error) yaitu jumlah data lebih sedikit dari pada jumlah perintah READ, sehingga pada saat dijalankan perintah READ yang kedua terjadi ‘out of data’. Untuk mengatasi hal itu dapat digunakan perintah RESTORE
Program
Data “Agus”,75
Read nama$,nilai
? nama$,nilai
restore
Read nama$,nilai
? nama$,nilai
RUN
Agus 75
Agus 75
II.5.2. Perintah-perintah Output
PRINT
Instruksi output merupakan instruksi yang digunakan untuk menampilkan hasil pengolahan data oleh komputer, baik melalui monitor, printer maupun media lainnya.
Program
? 1;2;3
? “satu”;”dua”;”tiga”
? 1,2,3
? 1,,2
? “satu”,”dua”,”tiga”
? “satu” “dua” “tiga”
? 10 20 30
Output :
1 2 3
satuduatiga
1 2 3
1 2
satu dua tiga
satuduatiga
10 20 30
PRINT TAB
Untuk mengatur jarak dari nilai yang akan dicetak di layar dapat digunakan perintah PRINT TAB. Perintah ini menggunakan nilai 1 s/d 80
Program :
print “1234567890123456789012345678901234567890″
print tab(1);”Belajar”;tab(10);”Program”;tab(25);”BASIC”
RUN
1234567890123456789012345678901234567890
Belajar Program BASIC
.
PRINT USING
Perintah PRINT USING dapat digunakan untuk mengatur banyak digit yang ingin ditampilkan di layar.
Tanda yang digunakan dalam perintah PRINT USING
#
Menampilkan bilangan sebanyak dengan digit sebanyak tanda #
+#
Menampilkan tand + jika bilangannya positif
$#
Menampilkan tanda dollar di awal bilangan
#.##^^^
Tampilkan output dengan notasi eksponen
*#
Menampilkan tanda * pada sisa spasi kosong di awal bilangan
###,###
Menentukan pemisah digit ribuan dengan tanda ,
###.##
Menentukan jumlah digit pecahan
Program :
a=100000000
print using “###,###,###,###.##”;a
print using “##.###”;10/3
print using “$###,###.##”;12500
print using “*###,###,###,###.##”;a
print using “#.##^^^^”;1234000
Output :
100,000,000.00
3.333
$12,500.00
*****100,000,000.00
1. 23E+06
2.
LPRINT
Perintah LPRINT digunakan untuk menampilkan keluaran program ke printer. Tata cara penulisan sama persis dengan perintah PRINT biasa, hanya saja keluarannya tidak ditampilkan di monitor tetapi di printer.

SAMPAI DISINI DULU...
ADA WAKTU SAYA POSTING LAGI