Bahasa Pemrograman Tingkat Rendah
Basic Programming Artikel 1
BAHASA KOMPUTER
Bahasa Pemrograman Tingkat Rendah
Pertahanan Amerika Serikat pada tahun 1960 FORTRAN Formula Translation, dikembangkan sekitar tahun 1956.
matematika yang bernama Abu Ja’far Muhammad Ibnu Musa Al Khawarizmi. Bila suatu langkah- langkah tersebut akan selesai hanya jika mempunyai atau menghasilkan solusi, dan selalu berulang- ulang jika belum menemukan solusi, maka algortima tersebut masih semi (Semi Algoritma).
menyelesaikan suatu permasalahan tertentu. Istilah Algoritma dikenalkan oleh seorang ahli
Sebelum memasuki dunia pemrograman terlebih dahulu kita harus mengenal Algoritma dalam pemrograman. Algoritma merupakan urutan langkah-langkah atau instruksi yang ditujukan untuk
Algoritma
PL/I Programing Language I, dikembangkan oleh IBM pada tahun 1964 PROLOG Programming Logic, bahasa yang digunakan untuk menyusun Expert System RPG Report Program Generator SNOBOL String Oriented Symbolic Language
dikembangkan oleh Niklauss Wirth, seorang ahli ilmu komputer dari Swiss, pada tahun 1970.
LISP List Processor
Pascal Diambil dari nama seorang sarjana Perancis Blaise Pascal. Pertama kali
COBOL Common Business-Oriented Language. Bahasa ini dikembangkan di Departemen
Bahasa ini dibagi menjadi dua macam, yaitu Bahasa Mesin dan Bahasa Rakitan (Assembly). Dalam Bahasa Mesin semua perintah disandikan dengan deretan-deretan bit (binary digit) yang hanya mempunyai nilai digit 1 atau 0. Sedangkan dalam Bahasa Rakitan, perintah-perintah tersebut bisa digantikan dengan kode sandi yang bisa dipahami oleh manusia yaitu mnemonic code, Setiap mikroprosesor, mempunyai mnemonic code yang berlainan.
Agar manusia dapat berkomunikasi dengan komputer maka dibutuhkan suatu bahasa komunikasi yaitu bahasa komputer. Dengan bahasa ini komputer dapat memahami dan mengerti perintah-perintah yang kita berikan kepadanya. Sebenarnya, komputer tidak mengerti perintah-perintah yang kita tulis menggunakan bahasa tertentu. Namun di dalam komputer tersebut terdapat penterjemah bahasa yang kita gunakan menjadi bahasa yang dimengerti oleh komputer yaitu compiler atau interpreter, keduanya merupakan suatu program. Jenis bahasa pemrograman komputer dibagi menjadi dua bagian yaitu bahasa tingkat rendah (yang agak sulit dimengerti bagi orang awam) dan bahasa tingkat tinggi (yang dapat di mengerti oleh manusia).
C Dikembangkan oleh Bell Laboratories pada tahun 1970, bahasa ini sangat powerfull
oleh John Kemeny dan Thomas Kutrz, digunakan untuk memberi kuliah mahasiswa di Dartmouth College tentang bagaimana menggunakan komputer.
ALGOL ALGOrithmic Language (Bahasa Algoritma) APL A Programming Language
BASIC Beginner’s All Purpose Symbolic Intsruction Code. Bahasa ini dikembangkan
Byron; bahasa ini dikembangkan sekitar tahun 1974 dan 1980 untuk Departemen Pertahanan Amerika Serikat.
Ada Diambil dari nama Augusta Ada Bryton, bangsawan dari Loveland, puteri Lord
Bahasa pemrograman ini merupakan bahasa komputer yang mudah dipahami karena menggunakan bahasa percakapaan manusia sehari-hari. Diantaranya adalah:
Bahasa Pemrograman Tingkat Tinggi
dan sering digunakan untuk membuat Sistem Operasi contohnya MS-DOS, LINUX, UNIX serta aplikasi DBASE, AUTOCAD dan game-game yang banyak kita jumpai. Ada yang mengatakan bahasa ini merupakan bahasa tingkat menengah karena sintaks bahasanya mirip bahasa tingkat tinggi dan mempunyai kemampuannya seperti bahasa tingkat rendah. Basic Programming Artikel 1 Perlu anda ingat bahwa dalam membuat algoritma anda harus mempunyai konsep IPO (Input, Proses dan Output). Langkah-langkah yang harus dilakukan dalam membuat algoritma adalah sebagai berikut:
Identifikasi masalah yang ada - Tentukan tujuan dari pemecahan masalah tersebut - Analisa input-input apa saja yang berhubungan dengan masalah tersebut - - Cari proses-proses yang dapat menghasilkan tujuan berdasarkan input-input yang ada.
INPUT PROSES OUTPUT
Untuk mempermudah penjelasan dari Algoritma tersebut digunakan suatu diagram yang disebut diagram alur (Flowchart). Diagram alur digambarkan dengan menggunakan symbol-simbol sebagai berikut:
Menunjukkan awal kegiatan atau akhir kegiatan dari Terminator suatu program Input/ Mewakili data input atau output dalam program Output Data
Proses Proses data yang dilakukan oleh komputer
Decision Percabangan dengan keputusan “ya” atau “tidak” Document Mencetak data ke dalam bentuk dokumenDisplay Menampilkan data ke monitor Direct Merekam dan mengambil data dari Database Data
Manual Proses yang dilakukan secara manual Operation
Input data secara manual
Manual Input Penghubung suatu diagram ke diagram lain
Preparation Operasi persiapan untuk langkah selanjutnya Garis Alur Basic Programming Artikel 1 Contoh penggunaan flowchart pada suatu algoritma adalah sebagai berikut: Pada hari ini Dzakwan dan Ani ingin berangkat ke kantor bersama-sama. Ani harus menunggu Dzakwan di rumah sampai jam 6.00 pagi, jika lebih dari jam 6.00 pagi maka Ani akan pergi ke rumah Dzakwan untuk menjemputnya, namun jika Dzakwan sudah berangkat terlebih dahulu maka Ani akan berangkat sendiri ke kantor.
Flowchart:
Mulai Ani Dzakwan Ani menunggu A
Ya Dzakwan Ani & Dzakwan datang ? berangkat bersama Tidak
Selesai Ya Jam < 6.00 pagi
Tidak Ani menjemput Dzakwan
Ya
Dzakwan ada A di rumah? Tidak
Ani berangkat sendiri Selesai
- GWBASIC
- BASICA
- QUICK BASIC (QBASIC)
- TURBO BASIC
GWBasic:
QBasic:
50 End
40 Print C
30 C=A+B
20 Let B=6
10 Let A=5
Ms. QuickBASIC berjalan di sistem operasi DOS dengan bentuk tampilan adalah sebagai berikut: Suatu program yang ditulis dengan bahasa Basic terdiri dari kumpulan pernyataan (statement). Pada Gwbasic atau Basica, setiap pernyataan harus diawali dengan nomor baris atau nomor statement sedangkan jika menggunakan Qbasic, nomor tersebut boleh tidak digunakan (Optional). Contohnya adalah sebagai berikut: Perintah-perintah yang umum digunakan adalah:
Menggunakan Microsoft QuickBASIC
Komputer pada saat itu. Compiler dan interpreter yang dikembangkan untuk bahasa ini antara lain adalah:
Symbolic Instruction Code di ditujukan untuk kalangan mahasiswa sebagai pengenalan menggunakan
Bahasa pemrograman ini dikembangkan oleh John G. Kemeny, profesor dari Dartmourth College, beserta Thomas E. Kurtz pada tahun 1960. BASIC merupakan singkatan dari Beginner’s All purpose
Bahasa Pemrograman BASIC
Basic Programming Artikel 1
A=5 B=6 C=A+B Print C End
- <File New> Membuat file basic baru
- <File Save> Menyimpan file basic
- <Run Start> Menjalankan program basic (SHIFT+F5)
- <Run Continue>Menlanjutkan eksekusi program basic (F5)
- <Run Restart> Merestart ulang eksekusi program basic Elemen-elemen dari statement terdiri dari:
- Expression (konstanta, variabel, operator matematika, operator logika)
- Selection (pemilihan keputusan)
- Iteration (pengulangan dalam suatu pernyataan)
- Jump (Pelompatan dari satu pernyataan ke pernyataan lain)
- Label (label yang digunakan untuk alamat pelompatan)
- Block (fungsi dan prosedur yang merupakan bagian dari program)
Konstanta
Nilai konstanta merupakan nilai yang sudah pasti dan tidak akan berubah selama proses program berlangsung. Komputer mengenal dua jenis nilai dasar yang terdiri dari numerik dan non-numerik (Alphanumerik), maka konstanta terdiri dua jenis nilai tersebut. Contoh: Print 5
{konstanta numeric} Print “89”
{konstanta non-numeric} Print “Dzakwan”
{konstanta non-numeric} Untuk nilai non-numerik dalam penulisannya harus di apit tanda kutip (“ “), umumnya nilai non-numerik disebut dengan string ($) yaitu nilai yang terdiri dari kumpulan beberapa karakter.
Variabel
Variabel merupakan nama atau symbol yang digunakan untuk menampung suatu nilai. Nilai dari variabel dapat diubah selama dalam proses program. Contoh: A = 5
{A adalah variabel dan 5 adalah konstanta} Nama$=”Dzakwan”
{Nama$ adalah variable string yang berisi karakter-karakter} B = A
{B adalah variable yang menerima nilai dari variabel A} Syarat-syarat penamaan variabel adalah sebagai berikut: - karakter pertama harus dimulai dengan huruf dan karakter selanjutnya bebas (angka atau huruf).
Panjangnya maksimum 40 karakter -
- Tidak mengandung spasi atau karakter-karakter khusus seperti $,%,!,#,* dll. (berbeda pengertiannya dengan variable Nama$, ini berarti nama variabelnya adalah “Nama” tanda $ setelah nama varaibel tersebut berarti tipe datanya adalah non-numerik) Nama variable tidak boleh sama dengan reserved words (if, while, wend, next, end if, dll). -
Dalam membuat suatu variabel dapat dilakukan secara langsung atau dengan cara dideklarasikan terlebih dahulu. Untuk cara langsung contohnya adalah sebagai berikut: Nilai% = 5
{ variable nilai memiliki tipe data integer } Atau dengan cara dideklarasikan terlebih dahulu DIM Nilai AS INTEGER Nilai = 5
Operator
Angka dan variabel dapat digabungkan dengan operator untuk menyatakan suatu maksud. Jenis-jenis operator terdiri dari: Arithmetic Operator (digunakan untuk perhitungan matematika):
Operator Keterangan Prioritas
( ) Kurung pemisah
1 ^ Pemangkatan
2 Perkalian 3 *
/ Pembagian
3 \ Pembagian dengan hasil bulat
4 MOD Modulus / Sisa bagi
5 (Numerik: Penjumlahan, Non-Numerik: Penggabungan) +
6 Pengurangan 6 -
Relational Operator (digunakan untuk menunjukkan g\hubungan tertentu dari dua elemen): < Lebih kecil
Basic Programming Artikel 1 <= Lebih kecil atau sama dengan >= Lebih besar atau sama dengan = Sama dengan <> Tidak sama dengan Logical Operator terdiri dari NOT, AND dan OR.
Tipe Data
Tipe-tipe data yang disediakan oleh Basic antara lain:
Data Type Declaration Maximum Minimum Strings $ 32,767 chars. 0 chars.
Integers % 32,767 -32,768 Long Integers & 2,147,483,647 -2,147,483,648 Single (7-digit) precision ! ±3.402823 E+38 ±1.401298 E-45 Double (15-digit) precision # ±1.7976931 D+308 ±4.940656 D-324 User Define Type Untuk tipe data yang didefinisikan oleh user, contohnya adalah: TYPE data_ku
Nama AS STRING * 40 Kelas AS STRING*10 Nilai AS Double
END TYPE
OPERASI STRING Penggabungan String Merupakan kombinasi dua atau lebih string dengan menggunakan operator “+”.
Contoh: A$ = “ MICROSOFT “ B$ = “ QUICKBASIC “ C$ = A$ + B$ D$ = A$ + B$ + “KOMPILER” PRINT “C$ = “; C$ PRINT “D$ = “; D$ Hasil program di atas adalah: C$= MICROSOFT QUICKBASIC D$= MICROSOFT QUICKBASIC KOMPILER
Fungsi-fungsi manipulasi String
Fungsi LEFT$, RIGHT$, MID$ Fungsi ini digunakan untuk mengambil sejumlah karakter dimulai dari karakter paling kiri (LEFT$), dari kanan (RIGHT$), atau sembarang posisi (MID$).
Bentuk Umum: { LEFT$ | RIGHT$ } (untai1, jumlah) MID$ (untai1, nomor [,jumlah] )
Dengan: Untai1 : string yang akan diambil karakternya Nomor : nomor awal karakter yang akan diambil Jumlah : jumlah karakter yang akan diambil.
Contoh:
Basic Programming Artikel 1 kalimat$ = “QuickBASIC Release 4.5, Microsoft” PRINT LEFT$(kalimat$,10) PRINT RIGHT$(kalimat$,5) PRINT MID$(kalimat$,5,10) PRINT MID$(kalimat$,6) Hasil keluarannya: QuickBASIC osoft KBasic Rel BASIC Release 4.5, Microsoft Fungsi STRING$ Fungsi ini digunakan untuk membangkitkan sejumlah karakter tertentu.
BU: STRING$ ( panjang, {karakter|kodeascii} )
Dengan Panjang : panjang karakter yg akan dibangkitkan Karakter : karakter yg akan dibangkitkan.
Kodeascii : kode ASCII dari karakter yg akan dibangkitkan. Contoh:
PRINT STRING$(5,”A”) PRINT STRING$(5,”-”) PRINT STRING$(5,205) ‘kode ascii 205 adalah bentuk =
Ouput:
AAAAA ----- =====
Fungsi SPACE$ Digunakan untuk membuat spasi dengan panjang tertentu. BU:
SPACE$(panjang) Dengan: Panjang = menunjukkan banyaknya spasi.
Fungsi LEN (string) Digunakan untuk mendapatkan jumlah karakter dari suatu string. Contoh PROGRAM CLS
INPUT "NAMA ANDA : ", nama$ jum = LEN(nama$) PRINT FOR a = 1 TO jum PRINT LEFT$(nama$, a) 'PRINT MID$(nama$, a, 1) NEXT a END Tampilan program:
Basic Programming Artikel 1 NAMA ANDA : Jhon Keboy J Jh Jho Jhon Jhon Jhon K Jhon Ke Jhon Keb Jhon Kebo Jhon Keboy Contoh Operasi Matematika: DIM A, B AS SINGLE CLS
INPUT "Masukan Nilai A = ", A
INPUT "Masukan Nulai B = ", B PRINT A; " + "; B; " = "; A + B PRINT A; " - "; B; " = "; A - B PRINT A; " x "; B; " = "; A * B PRINT A; " / "; B; " = "; A / B PRINT A; " MOD "; B; " = "; A MOD B PRINT A; " ^ "; B; " = "; A ^ B END Bentuk tampilan program: Masukan Nilai A = 14 Masukan Nulai B = 9 14 + 9 = 23 14 - 9 = 5 14 x 9 = 126 14 / 9 = 1.555556
14 MOD 9 = 5 14 ^ 9 = 2.066105E+10
Statement Kendali & Pemilihan
Merupakan statemen yang digunakan untuk mengubah urutan eksekusi program
Mulai dari urutan semula (secara berurutan) menjadi urutan yang sembarang .
Statemen ini dibagi menjadi 4 kelompok yaitu: Statemen kendali tak bersyarat, (GOTO)
Nama$ Alamat$
Statemen kendali bersyarat/pemilihan, (IF…THEN, SELECT… CASE) Statemen kendali proses berulang/iteration, (FOR … NEXT, DO … LOOP, WHILE … WEND) Statemen kendali terhitung, ( ON GOTO, ON GOSUB, ON ERROR GOTO, ON
“Hallo…”;Nama$
ERROR GOSUB)
“Alamatnya di “;Alamat$
STATEMEN GOTO
Berguna untuk melompatkan proses eksekusi ke suatu baris yang diberi nomor
GOTO baris atau label tanpa harus mengetest suatu kondisi.
Bentuk Umum : GOTO { nomor baris | nama label } Contoh pada gambar di samping:
“Selesai…..” Selesai
- Statemen IF…THEN ELSE satu baris
- Statemen IF…THEN ELSE banyak baris
a. STATEMEN IF…THEN..ELSE satu baris
Ya
Lagi$ Lagi$=”Y” Tidak Ya
“Alamatnya di “;Alamat$ “Selesai…..” Selesai
Mulai Nama$ Alamat$ “Hallo…”;Nama$
Contoh:
IF kondisi1 THEN statemen1 [ELSEIF kondisi2 THEN [statemen2]] . . [ELSE [statemen n]] END IF
Bentuk Umum:
Statement berikutnya
IF (Ekspresi) THEN Statement 1 ELSE Statement 2 End IF Statement berikutnya
Ekspresi Statement 2 Statement 1 Tidak
Basic Programming Artikel 1
IF (Ekspresi) THEN Statement 1 End IF Statement berikutnya
Tidak Ya
label1,label2 : label baris yang dituju Ekspresi Statement berikutnya
Statement 1
: nomor baris yang akan dituju
statemen1,statemen2 : statemen yang akan dikerjakan nobar1,nobar2
: syarat yang akan ditest
kondisi
Bentuk Umum : IF kondisi Then {statemen 1 | nobar 1 | GOTO label 1} [ ELSE {statemen 2 | nobar 2 | GOTO label 2} ] dengan
Contoh: Statmen ini dibagi menjadiu dua bagian yaitu
STATEMEN IF… THEN …ELSE Merupakan statemen kendali yang selalu melakukan test terhadap kondisi tertentu.
b. Statemen IF…THEN…ELSE banyak baris
Basic Programming Artikel 1
M ulai N am a$ N PM $ N ilai N ilai > 90 Abjad$=”A”
Y a TIdak 90 >= Nilai >75 Abjad$=”B”
Y a TIdak 75 >= N ilai >50 A bjad$=”C ”
Ya TIdak 50 >= N ilai >0 A bjad$=”D ”
Ya TIdak A bjad$=”E” N am a$
N PM $ Nilai Abjad$ S elesai
STATEMEN SELECT CASE
SELECT CASE ungkapan CASE nilai1 [ statemen1 ] [ CASE nilai2 [ statemen2 ] ] . . [ CASE ELSE ] statemen ] ] END SELECT
CASE 3 PRINT “Tiga”
dikerjakan
statemen1,statemen2 : statemen-statemen yang akan
: nilai-nilai dari parameter ungkapan
nilai1,nilai2 …
: sembarang ungkapan (numeris atau non-numeris)
ungkapan
Dengan
CASE ELSE PRINT “Salah..”
CASE 2 PRINT “Dua”
Contoh REM Contoh pemakaian REM IF..THEN..ELSE REM *****************
CASE 1 PRINT “Satu”
INPUT x SELECT CASE x
END IF REM Contoh Pemakaian REM SELECT CASE REM ******************
Statemen SELECT CASE mempunyai kegunaan yang hampir sama dengan statemen kendali IF…THEN…ELSE banyak baris. Perbedaan kedua statemen ini adalah pada statemen SELECT CASE kondisi yang ditest hanya sebuah, dan proses eksekusi akan diteruskan ke bagian tertentu dari suatu program berdasar nilai kondisi yang ditest. Bentuk Umum:
ELSEIF x = 3 THEN PRINT “Tiga”
ELSEIF x = 2 THEN PRINT “Dua”
IF x = 1 THEN PRINT “Satu”
INPUT x
ELSE PRINT “Salah..”
Basic Programming Artikel 1 Contoh Program dengan Teknik <Switch>: flag = 0 mulai:
INPUT "Press 1 for change and 0 for exit : ", btn$ CLS SELECT CASE btn$ CASE "1"
IF flag = 1 THEN PRINT "LAMPU MENYALA" flag = 0 ELSE PRINT "LAMPU PADAM"
Mulai
flag = 1 END IF CASE "0"
Max
END END SELECT GOTO mulai
Jumlah=0
END
Counter = 1 Statement Kalang (loop) / Iteration Nilai
Proses berulang (kalang) yaitu memproses sejumlah pernyataan beberapa kali, sampai suatu kondisi terpenuhi Jumlah = Jumlah + Nilai atau sebaliknya. Contoh:
Tidak Counter = Max Counter = Counter + 1
CLS
Ya
INPUT “Banyaknya data: ”, Max Jumlah = 0
Jumlah
counter = 1 ; ‘variabel pencacah
ISIDATA: PRINT “Isikan data ke ”; Counter; “: ”;
Selesai
INPUT Nilai Jumlah = Jumlah + Nilai
IF Counter = Max THEN GOTO CETAKHASIL Counter = Counter + 1
GOTO ISIDATA CETAKHASIL: PRINT “Jumlah Semua data : ”; Jumlah PRINT “Selesai..” END
Statement FOR…NEXT
Bentuk Umum:
FOR pencacah = awal TO akhir [STEP langkah] [Statemen] NEXT [pencacah]
Dengan
pencacah
: banyaknya proses dengan nama sembarang variabel numerik yg berfungsi mengendalikan berulang.
awal : nilai awal atau batas bawah pencacah.
Basic Programming Artikel 1
langkah : pertambahan nilai pencacah. statemen : statemen-statemen yg akan diproses ulang.
Contoh: CLS
Mulai
INPUT “Banyaknya data : ”,Max Jumlah = 0 FOR Counter = Counter TO Max
Max
PRINT “Isikan data ke”;Counter; “:”;
INPUT Nilai Jumlah = Jumlah + Nilai
Jumlah=0
NEXT Counter PRINT “Jumlah data:”; Jumlah
For Counter = 1 To Max
PRINT “Selesai” END
Nilai Kalang Bersarang (nested loop) Adalah statemen berulang yang berada di dalam statemen berulang lainnya.
Jumlah = Jumlah + Nilai FOR I = 1 TO 10 FOR I = 1 TO 10 FOR J = 1 TO 5 FOR J = 1 TO 5
Next Counter PRINT I,J,I*J PRINT I,J,I*J NEXT J NEXT I NEXT I NEXT J
Jumlah Nested loop berpotongan (Salah) Nested loop tidak berpotongan
(Benar) Selesai
Statement WHILE…WEND
Bentuk Umum :
WHILE kondisi [statemen] WEND
Dengan kondisi : syarat yg hrs dipenuhi agar proses berulang bisa berlangsung.
statemen : statemen yg akan diproses ulang.
Contoh CLS
INPUT “Banyaknya data : ”,n JumlahData = 0 I = 1 ‘variabel pencacah WHILE I <= n PRINT “Isikan data ke”;I; “:”;
INPUT dataKe JumlahData = JumlahData + dataKe I = I + 1 WEND PRINT “Jumlah data:”; JumlahData PRINT “Selesai” END
Basic Programming Artikel 1
Statement DO…LOOP
Penggunaan statemen ini hampir sama dengan WHILE…WEND, namun dalam pemakaian DO…LOOP proses berulang bisa dilaksanakan selama suatu kondisi bernilai benar atau salah dan kondisi yang ditest bisa diletakkan di awal atau di akhir statemen ini. Bentuk Umum: Kondisi di awal statemen
DO [ { WHILE | UNTIL } kondisi ] Statemen LOOP
Kondisi di akhir statemen
DO Statemen LOOP [ { WHILE | UNTIL } kondisi ]
Contoh kondisi di awal statemen CLS
CLS
INPUT “Banyaknya data : ”,n
INPUT “Banyaknya data : ”,n JumlahData = 0 JumlahData = 0 I = 1 ‘variabel pencacah I = 1 ‘variabel pencacah DO WHILE I <= n DO UNTIL I > n PRINT “Isikan data ke”;I; “:”; PRINT “Isikan data ke”;I; “:”;
INPUT dataKe
INPUT dataKe JumlahData = JumlahData + dataKe JumlahData = JumlahData + dataKe LOOP
LOOP PRINT “Jumlah data:”; JumlahData PRINT “Jumlah data:”; JumlahData PRINT “Selesai” PRINT “Selesai” END
END Contoh kondisi di akhir statemen
CLS CLS
INPUT “Banyaknya data : ”,n
INPUT “Banyaknya data : ”,n JumlahData = 0 JumlahData = 0 I = 1 ‘variabel pencacah I = 1 ‘variabel pencacah DO
DO PRINT “Isikan data ke”;I; “:”; PRINT “Isikan data ke”;I; “:”;
INPUT dataKe
INPUT dataKe JumlahData = JumlahData + dataKe JumlahData = JumlahData + dataKe LOOP WHILE I <= n LOOP UNTIL I > n PRINT “Jumlah data:”; JumlahData PRINT “Jumlah data:”; JumlahData PRINT “Selesai” PRINT “Selesai” END
END Basic Programming Artikel 1
Statement ON..GOTO, ON ERROR…GOTO, ON…GOSUB, ON ERROR…GOSUB
Bentuk Umum:
ON ungkapan GOTO { nobar | label }
Dengan
ungkapan : ungkapan numeris yg hrs menghasilkan nilai data numeris integer antara 1 – 255. nobar : nomor-nomor baris yg dituju label
: nama-nama label baris yg dituju. Contoh nomor=0 WHILE nomor <= 0 OR nomor > 4 CLS PRINT “ 1. INPUT DATA” PRINT “ 2. EDIT DATA” PRINT “ 3. HAPUS DATA” PRINT “ 4. EXIT” : PRINT
INPUT “PILIHAN ANDA: ”; no WEND ON nomor GOTO 10,20,30,40
10 PRINT “PROSES INPUT DATA”:GOTO 40
20 PRINT “PROSES EDIT DATA”:GOTO 40
30 PRINT “PROSES HAPUS DATA”:GOTO 40
40 END
Statement GOSUB…RETURN Statemen ini merupakan salah satu cara untuk memanggil subrutin dan kembali ke program utama.
Subrutin yang akan dipanggil dengan statemen ini dikenali dengan label / baris. Bentuk Umum:
GOSUB { nobar1 / label 1 } . <statemen> . RETURN [ { nobar2 / label2 } ]
Dengan nobar1 : nomor baris awal subrutin label1 : label baris awal subrutin nobar2 : nomor baris yang dituju setelah subrutin selesai dikerjakan. label2 : label baris yang dituju setelah subrutin selesai dikerjakan.
Statement SUB…END SUB
Bentuk Umum:
SUB nama [ (dafpar) ] . <statemen> . [EXIT SUB [ <statemen>] ] END SUB
Dengan
Nama : nama subrutin
Dafpar : nama-nama variabel yg menunjukkan tipe dan banyaknya argumen yang akan dilewatkan ke
dalam prosedur. Basic Programming Artikel 1 Pemanggilan prosedur SUB bisa digunakan dengan salah satu dari kedua cara berikut: Dengan menggunakan statemen CALL.
Bentuk Umum:
CALL nama [ (dafarg) ]
Dengan Nama : nama subrutin yang akan dipanggil.
Dafarg : daftar variabel yg akan dilewatkan ke dalam prosedur.
Tanpa menggunakan statemen CALL. menggunakan nama subrutin yang akan dipanggil diikuti dengan daftar argumen yang akan dilewatkan. Dalam hal ini daftar argumen tidak perlu dituliskan di antara tanda kurung.
Statement FUNCTION…END FUNCTION Merupakan salah satu subrutin yang dapat mengembalikan nilai.
Bentuk Umum:
FUNCTION nama [ (dafpar) ] . <statemen> . [EXIT FUNCTION [<statemen>] ] END FUNCTION
Dengan Nama : nama subrutin Dafpar : nama-nama variabel yg menunjukkan tipe dan banyaknya argumen yang akan dilewatkan ke dalam prosedur.
Statement SHARED
Digunakan untuk menyatakan bahwa sejumlah variabel akan dapat dimanipulasi baik dari program utama maupun dari dalam prosedur. Contoh:
OUPUT: DECLARE SUB tambah ()
Nilai A = 5 DECLARE SUB kali (x, y)
Nilai B = 2 DECLARE FUNCTION kurang ()
Nilai A = 10 DECLARE FUNCTION bagi (x, y)
A + B = 12 CLS
HASIL X . Y = 20
INPUT "Nilai A = ", A HASIL X . Y = 20
INPUT "Nilai B = ", B A - B = 8
GOSUB 100 A / B = 5
CALL tambah CALL kali(A, B) kali A, B d = kurang PRINT "A - B = "; d PRINT "A / B = "; bagi(A, B) END 100 A = A + 5 PRINT "Nilai A = "; A RETURN FUNCTION bagi (x, y) bagi = x / y END FUNCTION SUB kali (x, y) C = x * y
Basic Programming Artikel 1 END SUB FUNCTION kurang SHARED A, B kurang = A - B END FUNCTION SUB tambah SHARED A, B C = A + B PRINT "A + B = "; C END SUB
ARRAY (LARIK)
Array adalah sekumpulan data yang mempunyai tipe data sejenis, misalnya numeris integer atau string, dan diidentifikasikan dengan sebuah nama larik (variabel). Di dalam sebuah array posisi setiap rinci data, disebut dengan komponen atau elemen array, ditentukan oleh index yang menunjukkan letak sebuah elemen dalam sebuah array.
Array Dimensi Satu
Array dimensi satu, juga disebut dengan vektor, yaitu sebuah array yang terdiri dari sejumlah elemen, dan posisi setiap elemen ditentukan oleh sebuah subskrip. Bentuk Umum:
DIM variabel ({cacah | awal TO akhir }) [AS tipe]
Dengan cacah : banyaknya elemen larik.
awal
: nomor awal index
akhir : nomor akhir index tipe
: tipe data masingmasing elemen DIM nilai%(20)
CLS CLS FOR i = 1 TO 5
FOR i = 1 TO 5 PRINT "Isi Nilai ke "; i;
PRINT "Isi Nilai ke "; i;
INPUT nilai%
INPUT nilai%(i) NEXT NEXT PRINT PRINT FOR i = 1 TO 5
FOR i = 1 TO 5 PRINT "Nilai ke "; i; " = "; nilai%
PRINT "Nilai ke "; i; " = "; nilai%(i) NEXT NEXT
END END Menggunakan DIM Tanpa DIM
Array Dimensi Banyak
Contoh (Array dimensi DUA) DIM nilai%(4, 4) FOR i = 1 TO 4 FOR j = 1 TO 4 READ nilai%(i, j) NEXT j NEXT i
Basic Programming Artikel 1 FOR i = 1 TO 4 FOR j = 1 TO 4 PRINT nilai%(i, j); NEXT j PRINT NEXT i DATA 4,6,8,3 DATA 3,6,8,2 DATA 2,7,5,4 DATA 9,5,7,5
Contoh Soal Praktek
a. Buatlah program BASIC yang memproses penjumlahan dua buah matrik yang mempunyai ordo 2 x 2:
6
8
5
3
11
11 =
- 2
7
1
8
3
15
b. Buatlah program BASIC yang berfungsi mengurutkan bilangan acak dari besar ke kecil !
Solusi:
a. PROGRAM Pejumlahan MATRIK ordo 2 x 2 DIM matrixA(2, 2) DIM matrixB(2, 2), hasil(2, 2) CLS PRINT "Input matrik A:" FOR baris = 1 TO 2 FOR kolom = 1 TO 2 PRINT "Baris ke "; baris; " kolom ke "; kolom; " = ";
INPUT matrixA(baris, kolom) NEXT kolom NEXT baris PRINT "Input matrik B:" FOR baris = 1 TO 2 FOR kolom = 1 TO 2 PRINT "Baris ke "; baris; " kolom ke "; kolom; " = ";
INPUT matrixB(baris, kolom) NEXT kolom NEXT baris REM proses pemjumlahan matrik A + B FOR baris = 1 TO 2 FOR kolom = 1 TO 2 hasil(baris, kolom) = matrixA(baris, kolom) + matrixB(baris, kolom) NEXT kolom NEXT baris PRINT "HASIL PENJUMLAHAN MATRIK A + B ADALAH:" FOR baris = 1 TO 2 FOR kolom = 1 TO 2 PRINT "Baris ke "; baris; " kolom ke "; kolom; " = "; hasil(baris, kolom) NEXT kolom NEXT baris
Basic Programming Artikel 1
b. PROGRAM Pengurut angka
DIM angka(100) CLS i = 0 DO i = i + 1
INPUT "Isi angka acak dan 0 jika selesai : ", angka(i) LOOP UNTIL angka(i) = 0 PRINT "angka acak:" FOR k = 1 TO i PRINT angka(k); NEXT FOR k = 1 TO i FOR j = k TO i
IF angka(k) < angka(j) THEN temp = angka(j) angka(j) = angka(k) angka(k) = temp END IF NEXT j NEXT k PRINT PRINT "angka urut:" FOR k = 1 TO i PRINT angka(k); NEXT END
BERLANJUT …