PROJECT UJIAN AKHIR SEMESTER MATA KULIAH STRUKTUR DATA Program Kalkulator Scientific Sederhana

Ukuran: px
Mulai penontonan dengan halaman:

Download "PROJECT UJIAN AKHIR SEMESTER MATA KULIAH STRUKTUR DATA Program Kalkulator Scientific Sederhana"

Transkripsi

1 PROJECT UJIAN AKHIR SEMESTER MATA KULIAH STRUKTUR DATA Program Kalkulator Scientific Sederhana DOSEN: MUH. ARIF RAHMAN DISUSUN OLEH KELOMPOK 2: NAMA NIM PERANAN ARISSA MUJIBUDDA WAT LEADER DAN KODING 8 ERMITA IKA.P TINJAUAN PUSTAKA 8 DIWA SAMPURNA KODING DAN PPT 2 BIMA ANORAGA PENDAHULUAN DAN PERANCANGAN ARIFA RETNO PAKARTI IMPLEMENTASI PROGRAM FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS BRAWIJAYA MALANG

2 2012 BAB I PENDAHULUAN 1.1 Latar Belakang Saat ini banyak terdapat alat-alat hitung yang dapat membantu untuk menyelesaikan masalah perhitungan. Alat hitung ini sangat membantu baik itu mahasiswa, siswa, pedagang, ibu rumah tangga dan pebisnis lainya. Salah satu alat hitung yang banyak digunakan pada zaman ini adalah kalkulator. Dengan sebuah alat bantu seperti Kalkulator penyelesaian masalah-masalah penghitungan seperti pembagian perkalian, pertambahan, pengurangan serta operasi hitung lainnya akan dapat dilakukan dengan cepat, efisien, teliti juga akurat. Dan dengan menggunakan kalkulator penghitungan aritmatika standart dalam menyelesaikan sebuah permasalahan matematika yang sering dijumpai. Kalkulator merupakan salah satu alat hitung yang mudah digunakan. Kalkulator dapat membantu para pedagang dalam menghitung penjualan ataupun pembelian barang. Kebanyakan kalkulator yang beredar dipasaran merupakan kalkulator standar, baik itu dari segi warna, bentuk dan susunan tombol-tombol di dalamnya. Untuk itu penulis mencobauntuk memberikan desain yang berbeda, sehingga lebih menarik dan lebih mudah untuk digunakan. Salah satu software yang dapat membantu untuk menyelesaikan masalah perhitungan adalah Delphi, Berangkat dari hal tersebut, mendorong penulis untuk memanfaatkan software tersebut dalam pembuatan program kalkulator scientific. Dalam makalah yang berjudul PEMBUATAN KALKULATOR DENGAN LAZARUS dan PASCAL ini penulis akan menguraikan cara pembuatan dan penggunaan kalkulator scientific dengan menggunakan Program Delphi. 1.2 Batasan Masalah Pada penulisan ilmiah ini, penulis membatasi masalah mengenai pembuatan aplikasi kalkulator untuk perhitungan sederhana dari inputan angka yang diinput oleh pengguna kalkulator. 1.3 Tujuan Adapun tujuan dari pembuatan makalah ini adalah :

3 1. Sebagai syarat memenuhi tugas akhir pengganti UAS 2. Mengetahui tata cara pembuatan sebuah kalkulator sederhana dan scientific kalkulator 1.4 Manfaat Manfaat dari penulisan makalah ini diantaranya adalah: 1. Dapat mengerti dan memahami aplikasi stack dan program 2. Dapat mengetahui tata cara membuat sebuah kalkulator sederhana 3. Dapat mengetahui bagamiana mengkombinasikan koding-koding yang ada agar dapat menghasilkan suatu program tepat guna

4 BAB II TINJAUAN PUSTAKA Definisi Kalkulator Kalkulator adalah alat yang melakukan operasi aritmatika pada angka. Kalkulator sederhana dapat melakukan penambahan saja, pengurangan, perkalian, dan pembagian. Kalkulator yang lebih canggih dapat menangani operasi eksponensial, akar, logaritma, fungsi trigonometri, dan fungsi hiperbolik. Kalkulator menjadi lebih maju sejak tahun 1970, mereka menjadi mampu membuat perhitungan yang melibatkan variabel (tidak diketahui) yaitu komputer pribadi. Komputer pribadi saat ini masih bisa melakukan operasi tersebut, dan sebagian disediakan dengan program kalkulator virtual yang tampilannya seperti kalkulator genggam. Tombol-tombol diaktifkan dengan menunjuk dan mengklik. Secara teoritis, sebuah komputer modern adalah kalkulator yang bekerja dengan biner angka dan memiliki memori jauh lebih besar. Namun dalam arti praktis, komputer jauh lebih dari kalkulator belaka, karena berbagai macam program yang terdapata pada komputer lebih canggih dari pada kalkulator. Stack atau Tumpukan Stack atau tumpukan adalah bentuk khusus dari linear list. Pada stack, penghapusan serta pemasukan elemennya hanya dapat dilakukan di satu posisi, yakni posisi akhir dari list. Posisi ini disebut puncak atau top dari stack. Elemen stack S pada posisi ini dinyatakan dengan TOP(S). Jelasnya, bila stack S [S1, S2,, ST], maka TOP(S) adalah ST. Banyaknya elemen stack S pada suatu saat tertentu biasa kita sebut sebagai NOEL(S). Jadi untuk stack kita di atas, NOEL(S) = T. Seperti halnya pada semua linear list, pada stack dikenal operasi penghapusan dan pemasukan. Operator penghapusan elemen pada stack disebut POP, sedangkan operator pemasukan elemen, disebut PUSH. Untuk menggambarkan kerja kedua operator di atas, berikut ini suatu contoh bermula dari stack hampa S[ ], yang kita gambar sebagai :

5 Terlihat bahwa kedua operasi di atas, pada stack adalah bersifat terakhir masuk pertama keluar atau last in first out (LIFO). Pada hakekatnya kita tidak membatasi berapa banyak elemen dapat masuk ke dalam stack. Untuk suatu stack S[S1, S2,..., SNOEL], kita katakan bahwa elemen Si, berada di atas elemen Sj, jika i lebih besar dari j. Suatu elemen tidak dapat kita POP ke luar, sebelum semua elemen di atasnya dikeluarkan. Operasi pada stack Terdapat empat operasi pada stack, yakni CREATE (stack), ISEMPTY(stack), PUSH(elemen, stack), dan POP (stack). CREATE(S) adalah operator yang menyebabkan stack S menjadi satu stack hampa. Jadi NOEL(CREATE(S)) adalah 0, dan TOP(CREATE(S)) tak terdefinisi. Sedangkan operator ISEMPTY(S) bermaksud memeriksa apakah stack S hampa atau tidak. Operandnya adalah data bertipe stack, sedangkan hasilnya merupakan data bertipe boolean. ISEMPTY(S) adalah true, jika S hampa, yakni bila NOEL(S) = 0, dan false dalam hal

6 lain. Jelas bahwa ISEMPTY(CREATE(S)) adalah true. Operator PUSH (E,S) akan bekerja menambahkan elemen E pada stack S. E ditempatkan sebagai TOP(S). Operator POP(S) merupakan operator yang bekerja mengeluarkan elemen TOP(S) dari dalam stack. POP(S) akan mengurangi nilai NOEL(S) dengan 1. Suatu kesalahan akan terjadi apabila, kita mencoba melakukan POP(S) terhadap stack S yang hampa. Notasi Postfix Aplikasi lain dari stack adalah pada kompilasi dari ekspresi dalam bahasa pemrograman tingkat tinggi. Kompilator harus mampu menyerahkan bentuk yang biasa, misalnya ((A+B)*C/D+E^F)/G ke suatu bentuk yang dapat lebih mudah dipergunakan dalam pembentukan kode objeknya. Cara yang biasa kita lakukan dalam menulis ekspresi aritmetik seperti di atas, dikenal sebagai notasi infix. Untuk operasi binar seperti menjumlah, membagi, mengurangi, mengalikan ataupun memangkatkan, operator tampil di antara dua operand, misalnya operator + tampil di antara operand A dan B pada operasi A + B. Stack dapat digunakan untuk mentransformasikan notasi infix ini menjadi notasi posfix. Pada notasi posfix, kedua operand tampil bersama di depan operator, misalnya AB+ atau PQ* dan sebagainya. Kompilator akan lebih mudah menangani ekspresi dalam notasi posfix ini. Berikut contoh melakukan pengalihan ekspresi infix ke postfix secara manual. Ekspresi infix = A + B / C * D akan dialihkan menjadi ekspresi postfix. 1. Pilih sub-ekspresi yang berisi dua operand dan satu operator yang memiliki level tertinggi di ekspresi di atas. Didapat B / C dan C * D. Pilih yang paling kiri, maka kita peroleh : B / C. 2. Ubah sub-ekspresi tersebut menjadi sebuah operand, misalkan B / C menjadi E, maka ekspresi semula menjadi : A + E * D. 3. Lakukan langkah ke (2) hingga ekspresi di atas menjadi dua operand dan satu operator saja. Didapat : A + F 4. Alihkan menjadi bentuk postfix : operand-operand-operator, diperoleh A F + 5. Kembalikan setiap operand menjadi ekspresi semula. F tadinya adalah E * D, maka nilai F = E * D. Satukan dengan ekspresi yang telah menjadi postfix. Hasilnya = A * E + D 6. Ulangi langkah ke (5) hingga terbentuk ekspresi postfix. Didapat A * B + C / D. Dengan demikian, ekspresi infix : A+B/C*D akan menjadi ABC/D*+ dalam notasi postfix. Perhatikan dan pelajari tabel berikut ini :

7 Ekspresi Infix Ekspresi Postfix A + B A + B * C A + B A + B * C (A + B) * C A + B * C A * B + C A + B * C Bila ada sub-ekspresi di dalam tanda kurung, maka sub-ekspresi tersebut harus dikerjakan terlebih dulu. Berikut ini diberikan sebuah algoritma untuk mengubah notasi infix ke dalam notasi posfix. Sebuah stack digunakan untuk keperluan ini. Ekspresi diamati satu persatu dari kiri ke kanan. Pada algoritma ini terdapat 4 aturan dasar, sebagai berikut : 1. Jika simbol adalah ''('' (kurung buka), maka ia kita PUSH ke dalam stack 2. Jika simbol adalah '')'' (kurung tutup), POP dari stack elemen-elemen stack, sampai pertama kali kita POP simbol ''(''. Semua elemen stack yang di POP tersebut merupakan output, kecuali ''('' tadi. 3. Jika simbol adalah sebuah operand, tanpa melakukan perubahan elemen stack, operand tersebut langsung mcrupakan output. 4. Jika simbol adalah sebuah operator, maka jika TOP stack adalah operator dengan level lebih tinggi atau sama, maka elemen TOP kita POP, sekaligus keluar sebagai output, dilanjutkan proses seperti ini sampai TOP merupakan ''('' atau operator dengan level lebih rendah. Kalau hal ini terjadi, operator (yang diamati) kita PUSH ke dalam stack. Biasanya ditambahkan simbol ; (titik-koma) sebagai penutup ekspresi. Dalam keadaan ini, kita POP semua elemen stack, sehingga stack menjadi hampa. Dapat dicatat bahwa terdapat 3 level operator, yakni pemangkatan (level tertinggi), level menengahnya adalah perkalian (*) dan pembagian (/) dan level terendah adalah penjumlahan (+) dan pengurangan (-). Array Array merupakan kumpulan dari nilai-nilai data yang bertipe sama dalam urutan tertentu yang menggunakan nama yang sama. Array merupakan kumpulan dari nilai-nilai data yang bertipe sama dalam urutan tertentu yang menggunakan nama yang sama. Dilihat dari dimensinya array dapat dibagi menjadi Array dimensi satu, array dimensi dua dan array multi-dimensi. Suatu array dapat dibedakan atas 2 (dua) bagian, yaitu :

8 a. Array berdimensi satu Array berdimensi satu dapat dikatakan sebagai suatu daftar yang linier atau sebuah kolom. Bentuk deklarasi dari array jenis ini dalam bahasa Pascal adalah : VAR nama_array : ARRAY [index] OF jenis_elemen; Contoh : VAR x : ARRAY [1..10] OF integer; Contoh : VAR A : ARRAY [1..3,1..4] OF integer; Array A di atas terdiri atas 12 elemen, yaitu : A[1,1] A[1,2] A[1,3] A[1,4] A[2,1] A[2,2] A[2,3] A[2,4] A[3,1] A[3,2] A[3,3] A[3,4] Masing-masing A[i,j] diatas adalah integer (i = 1,2,3 ; j = 1,2,3,4) Array dapat bertipe data sederhana seperti byte, word, integer, real, bolean, char, string dan tipe data scalar atau subrange. b. Array berdimensi dua Array dua dimensi merupakan array yang terdiri dari m buah baris dan n buah kolom. Bentuknya dapat berupa matriks atau tabel. Deklarasi array : tipe_array nama_array[baris][kolom]; Contoh : int X[3][4]; Cara mengakses array : Contoh : int X[3][4];

9 X[0][3] = 33; X[2][0] = 34; X[1][2] = 97; X[3][2] =? Seperti array berdimensi satu, array berdimensi dua juga bisa diinisialisasi. Contoh deklarasi: int nilai[2][3] = {{24,63,91},{13,25,68}}; Atau int nilai2[2][3]= {24,63,91,13,25,98}; Array Berdimensi Banyak Bentuk umum deklarasi array dimensi banyak : tipe_data nama_var[uk_1][uk_2]..[uk_n]; dimana uk_1, uk_2, uk_n adalah ukuran dari array. Contoh deklarasi: int nilai[4][2][7]; Array Tak Berukuran Array dapat dideklarasikan tanpa memberi ukuran (jumlah data dalam array). Dengan syarat: - Harus langsung diinisialisasi. - Hanya elemen pertama yang boleh tidak berukuran. Contoh: int nilai[] = {32, 45, 67,21}; int nilai[][2]={{9,7},{4,2},{8,3}}; int nilai[][] = {32, 45, 67,21}; int nilai[]; Contoh Array Tdk Berukuran: #include <stdio.h> void main() {float x[] = {5,3,7}, total = 0;int i;for (i=0;i<=2;i++)total = total + x[i]; printf ( Total = %f\n,total);}

10 BAB III PERANCANGAN Pada program aplikasi kalkulator sederhana yang kami buat dengan bahasa pemograman pascal menggunakan tipe data array dan stack. Untuk tipe data stack kami menggunakan 2 buah stack yaitu realstack dan charstack serta satu array yaitu Prinsip dan cara kerja kalkulator sederhan dalam penggunaanya adalah perhitungann aritmatika yaitu menginputkan karakter yang sesuai (operan jenis angka atau operator operasi matematik). Selanjutnya akan membaca karakter tersebut sebagai ekspresi matematika. Karakter yang diinputkan kemudian dikonversi ke dalam bentuk real. Setelah dikonversi kemudian disimpan kedalam 2 buah stack untuk mempermudah pemanggilan dan mengecek operator atau operan sebelum melakukan perhitungan. Perhitungan dilakukan dengan memanfaatkan aplikasi stack dan menggunakan notasi infix. Hasilnya kemudian ditampilkan sebagai hasil dari perhitungan Class dalam program Kalkulator_statB Type Var formula realstack CharStack Element Operands Operators Error Karakter JmlKarakter X Next

11 Procedure inisialkarakter Function clearreal Function emptyreal Function fullreal Procedure pushreal Procedure popreal Procedure clearchar Function emptychar Function fullchar Procedure pushchar Procedure popchar Procedure konversi Procedure KonversiKeAsli Function derajat Procedure OperasiMatematik Procedure tanpakurung Procedure hitung Procedure display Kelas-kelas dalam program Program Kalkulator_statB; uses crt;

12 const maxstack= 50; type formula = array[1..maxstack] of char; realstack = record top: integer; element:array[1..maxstack] of real; charstack= record top: integer; element: formula; var operands: realstack; operators: charstack; karakter: formula; jmlkarakter: integer; next: char; error : boolean; procedure inisialkarakter procedure inisialkarakter(var karakter : formula; var akhir: integer); var i: integer; writeln ('Kalkulator Sederhana Statistika'); writeln('tulislah ekspresi Aritmatika tanpa tanda ("=") diakhir inputan'); writeln; i:=0; while not eoln do i:=i+1; read(karakter[i]); readln; akhir:=i;akhir:=i;

13 procedure clearreal procedure clearreal(var stk: realstack); stk.top:=0; function emptyreal function emptyreal (stk: realstack):boolean; emptyreal:=stk.top=0; function fullreal function fullreal (stk: realstack) : boolean; fullreal:=stk.top=maxstack; procedure pushreal procedure pushreal(var stk: realstack;elementbaru: real); stk.top:=stk.top+1; stk.element[stk.top]:=elementbaru; procedure popreal procedure popreal(var stk: realstack;var poppedelement:real);

14 poppedelement:=stk.element[stk.top]; stk.top:= stk.top-1; procedure clearkar procedure clearkar(var stk: charstack); stk.top:=0; function emptykar function emptykar(stk: charstack):boolean; emptykar:=stk.top=0; function fullkar function fullkar(stk:charstack):boolean; fullkar:=stk.top=maxstack; procedure pushkar procedure pushkar(var stk: charstack;elementbaru: char);

15 stk.top:=stk.top+1; stk.element[stk.top]:=elementbaru; procedure popchar procedure popchar(var stack: charstack;var poppedelement:char); poppedelement:=stack.element[stack.top]; stack.top:= stack.top-1; procedure konversi procedure konversi(karakter: formula;i:integer;var hasil: real); case karakter[i] of '1': hasil :=1; '2': hasil :=2; '3': hasil :=3; '4': hasil :=4; '5': hasil :=5; '6': hasil :=6; '7': hasil :=7; '8': hasil :=8; '9': hasil :=9; '0': hasil :=0; procedure KonversiKeAsli procedure KonversiKeAsli(var operands : realstack; i:integer);

16 var basis,j: integer; angka,poppedreal:real; basis:=1; angka:= 0; for j:=1 to i-1 do popreal(operands, poppedreal); angka:=angka+basis*poppedreal; basis:=basis*10; pushreal(operands, angka); function derajat function derajat(op:char):integer; case op of '*','/': derajat:=2; '+','-': derajat:=1; procedure OperasiMatematik procedure OperasiMatematik(var operands:realstack;var operators:charstack);

17 var x,y,z : real; stackoperandpenuh,stackoperatorkosong,stackoperandkosong :boolean; poppedreal : real; poppedchar : char; stackoperandkosong:=emptyreal(operands); if not stackoperandkosong then popreal(operands,poppedreal); x:=poppedreal; stackoperandkosong:=emptyreal(operands); if not stackoperandkosong then popreal(operands,poppedreal); y:=poppedreal; stackoperatorkosong:=emptykar(operators); if not stackoperatorkosong then popchar(operators,poppedchar); case poppedchar of '*': z:=x*y; '/': z:=x/y; '+': z:=x+y; '-': z:=y-x; stackoperandpenuh:= fullreal(operands); if not stackoperandpenuh then pushreal(operands, z); procedure tanpakurung procedure tanpakurung(var operands: realstack; var operators: charstack; var z:real);

18 type simpanreal= record penanda: integer; isi : real; simpanchar= record drjt,penanda: integer; isi : char; var tempreal: array[1..maxstack] of simpanreal; tempchar: array[1..maxstack] of simpanchar; i,itempreal,itempop : integer; stackoperatorkosong,stackoperandkosong : boolean; x,y,poppedreal: real; poppedchar: char; z:=0; itempreal:=1; stackoperandkosong:=emptyreal(operands); while (not stackoperandkosong) do popreal(operands, poppedreal); tempreal[itempreal].isi:=poppedreal; tempreal[itempreal].penanda:=1; itempreal:=itempreal+1; stackoperandkosong:=emptyreal(operands); itempreal:=itempreal-1; itempop:=1; stackoperatorkosong:=emptykar(operators); while (not stackoperatorkosong) do popchar(operators, poppedchar); tempchar[itempop].isi:=poppedchar; tempchar[itempop].drjt:=derajat(poppedchar); tempchar[itempop].penanda:=1; itempop:=itempop+1; stackoperatorkosong:=emptykar(operators);

19 itempop:=itempop-1; for i:=itempop downto 1 do if ((tempchar[i].drjt=2) and (tempreal[i+1].penanda=1) and(tempreal[i].penanda=1)) then x:=tempreal[i+1].isi; tempreal[i+1].penanda:=0; y:=tempreal[i].isi; if tempchar[i].isi='*' then z:=x*y else z:=x/y; tempreal[i].isi:=z; tempchar[i].penanda:=0; for i:=itempop downto 1 do if tempchar[i].penanda<>0 then x:=tempreal[i+1].isi; tempreal[i+1].penanda:=0; if tempreal[i].penanda<>0 then y:=tempreal[i].isi; if tempchar[i].isi= '+' then z:=x+y else z:=x-y; tempreal[i].isi:=z; procedure hitung procedure hitung (var operands:realstack;var operators:charstack;banyakkarakter:integer); var

20 i, posisioperator:integer; hasilkonversi, hasil:real; op : set of char; stackoperatorpenuh, stackoperandpenuh: boolean; op:=['+','/','-','*']; i:=1; posisioperator:=0; while i<=banyakkarakter do if karakter[i]=')' then posisioperator:=i-posisioperator; if posisioperator>2 then KonversiKeAsli(operands, posisioperator); posisioperator:=i; OperasiMatematik(operands, operators); i:=i+1; end else if karakter[i]='(' then i:=i+1; posisioperator:=posisioperator+1; end else if karakter[i] in op then stackoperatorpenuh:=fullkar(operators); if not stackoperatorpenuh then pushkar(operators, karakter[i]); posisioperator:=i-posisioperator; if posisioperator>2 then KonversiKeAsli(operands, posisioperator); if ((posisioperator <= 1) or (i = banyakkarakter)) then error := true; posisioperator:=i; i:=i+1; end

21 else konversi(karakter, i, hasilkonversi); stackoperandpenuh:=fullreal(operands); if not stackoperandpenuh then pushreal(operands, hasilkonversi); i:=i+1; if karakter[banyakkarakter]<>')' then posisioperator:=banyakkarakter-posisioperator+1; KonversiKeAsli(operands, posisioperator); if operands.top>1 then tanpakurung(operands, operators, hasil); stackoperandpenuh:=fullreal(operands); if not stackoperandpenuh then pushreal(operands, hasil); procedure display procedure display(operands: realstack); var

22 stackoperandkosong: boolean; poppedreal: real; if error then writeln('maaf Salah Syntax Error, Masukan Yang Bener Ya!') else stackoperandkosong:=emptyreal(operands); if not stackoperandkosong then popreal(operands, poppedreal); writeln('hasilnya = ',poppedreal:8:2); readln; write('pilih Y [LANJUT] untuk menghitung kembali, atau T [TIDAK] untuk keluar: '); clrscr; repeat clrscr; writeln('***kalkulator***'); inisialkarakter(karakter, jmlkarakter); clearkar(operators); clearreal(operands); error := false; hitung (operands, operators, jmlkarakter); display(operands);next:=readkey; until upcase(next)<>'y'; end. 4.1 Pengimplementasian source code BAB IV IMPLEMENTASI DAN UJICOBA

23 Program Kalkulator_statB; uses crt; const maxstack= 50; type formula = array[1..maxstack] of char; realstack = record top: integer; element:array[1..maxstack] of real; charstack= record top: integer; element: formula; var operands: realstack; operators: charstack; karakter: formula; jmlkarakter: integer; next: char; error : boolean; procedure inisialkarakter(var karakter : formula; var akhir: integer); var i: integer; writeln ('Kalkulator Sederhana Statistika'); writeln('tulislah ekspresi aritmatika tanpa tanda ("=") diakhir inputan'); writeln; i:=0; while not eoln do i:=i+1; read(karakter[i]); readln; akhir:=i;akhir:=i;

24 procedure clearreal(var stk: realstack); stk.top:=0; function emptyreal (stk: realstack):boolean; emptyreal:=stk.top=0; function fullreal (stk: realstack) : boolean; fullreal:=stk.top=maxstack; procedure pushreal(var stk: realstack;elementbaru: real); stk.top:=stk.top+1; stk.element[stk.top]:=elementbaru; procedure popreal(var stk: realstack;var poppedelement:real); poppedelement:=stk.element[stk.top]; stk.top:= stk.top-1; procedure clearkar(var stk: charstack); stk.top:=0; function emptykar(stk: charstack):boolean; emptykar:=stk.top=0; function fullkar(stk:charstack):boolean;

25 fullkar:=stk.top=maxstack; procedure pushkar(var stk: charstack;elementbaru: char); stk.top:=stk.top+1; stk.element[stk.top]:=elementbaru; procedure popchar(var stack: charstack;var poppedelement:char); poppedelement:=stack.element[stack.top]; stack.top:= stack.top-1; procedure konversi(karakter: formula;i:integer;var hasil: real); case karakter[i] of '1': hasil :=1; '2': hasil :=2; '3': hasil :=3; '4': hasil :=4; '5': hasil :=5; '6': hasil :=6; '7': hasil :=7; '8': hasil :=8; '9': hasil :=9; '0': hasil :=0; procedure KonversiKeAsli(var operands : realstack; i:integer); var basis,j: integer; angka,poppedreal:real; basis:=1; angka:= 0;

26 for j:=1 to i-1 do popreal(operands, poppedreal); angka:=angka+basis*poppedreal; basis:=basis*10; pushreal(operands, angka); function derajat(op:char):integer; case op of '*','/': derajat:=2; '+','-': derajat:=1; procedure OperasiMatematik(var operands:realstack;var operators:charstack); var x,y,z : real; stackoperandpenuh,stackoperatorkosong,stackoperandkosong :boolean; poppedreal : real; poppedchar : char; stackoperandkosong:=emptyreal(operands); if not stackoperandkosong then popreal(operands,poppedreal); x:=poppedreal; stackoperandkosong:=emptyreal(operands); if not stackoperandkosong then popreal(operands,poppedreal); y:=poppedreal; stackoperatorkosong:=emptykar(operators); if not stackoperatorkosong then popchar(operators,poppedchar); case poppedchar of '*': z:=x*y; '/': z:=x/y;

27 '+': z:=x+y; '-': z:=y-x; stackoperandpenuh:= fullreal(operands); if not stackoperandpenuh then pushreal(operands, z); procedure tanpakurung(var operands: realstack; var operators: charstack; var z:real); type simpanreal= record penanda: integer; isi : real; simpanchar= record drjt,penanda: integer; isi : char; var tempreal: array[1..maxstack] of simpanreal; tempchar: array[1..maxstack] of simpanchar; i,itempreal,itempop : integer; stackoperatorkosong,stackoperandkosong : boolean; x,y,poppedreal: real; poppedchar: char; z:=0; itempreal:=1; stackoperandkosong:=emptyreal(operands); while (not stackoperandkosong) do popreal(operands, poppedreal); tempreal[itempreal].isi:=poppedreal; tempreal[itempreal].penanda:=1; itempreal:=itempreal+1; stackoperandkosong:=emptyreal(operands); itempreal:=itempreal-1;

28 itempop:=1; stackoperatorkosong:=emptykar(operators); while (not stackoperatorkosong) do popchar(operators, poppedchar); tempchar[itempop].isi:=poppedchar; tempchar[itempop].drjt:=derajat(poppedchar); tempchar[itempop].penanda:=1; itempop:=itempop+1; stackoperatorkosong:=emptykar(operators); itempop:=itempop-1; for i:=itempop downto 1 do if ((tempchar[i].drjt=2) and (tempreal[i+1].penanda=1) and(tempreal[i].penanda=1)) then x:=tempreal[i+1].isi; tempreal[i+1].penanda:=0; y:=tempreal[i].isi; if tempchar[i].isi='*' then z:=x*y else z:=x/y; tempreal[i].isi:=z; tempchar[i].penanda:=0; for i:=itempop downto 1 do if tempchar[i].penanda<>0 then x:=tempreal[i+1].isi; tempreal[i+1].penanda:=0; if tempreal[i].penanda<>0 then y:=tempreal[i].isi; if tempchar[i].isi= '+' then z:=x+y else z:=x-y; tempreal[i].isi:=z;

29 procedure hitung (var operands:realstack;var operators:charstack;banyakkarakter:integer); var i, posisioperator:integer; hasilkonversi, hasil:real; op : set of char; stackoperatorpenuh, stackoperandpenuh: boolean; op:=['+','/','-','*']; i:=1; posisioperator:=0; while i<=banyakkarakter do if karakter[i]=')' then posisioperator:=i-posisioperator; if posisioperator>2 then KonversiKeAsli(operands, posisioperator); posisioperator:=i; OperasiMatematik(operands, operators); i:=i+1; end else if karakter[i]='(' then i:=i+1; posisioperator:=posisioperator+1; end else if karakter[i] in op then stackoperatorpenuh:=fullkar(operators); if not stackoperatorpenuh then pushkar(operators, karakter[i]); posisioperator:=i-posisioperator;

30 if posisioperator>2 then KonversiKeAsli(operands, posisioperator); if ((posisioperator <= 1) or (i = banyakkarakter)) then error := true; posisioperator:=i; i:=i+1; end else konversi(karakter, i, hasilkonversi); stackoperandpenuh:=fullreal(operands); if not stackoperandpenuh then pushreal(operands, hasilkonversi); i:=i+1; if karakter[banyakkarakter]<>')' then posisioperator:=banyakkarakter-posisioperator+1; KonversiKeAsli(operands, posisioperator); if operands.top>1 then tanpakurung(operands, operators, hasil); stackoperandpenuh:=fullreal(operands); if not stackoperandpenuh then pushreal(operands, hasil); procedure display(operands: realstack); var stackoperandkosong: boolean; poppedreal: real; if error then writeln('maaf Salah Syntax Error, Masukan Yang Bener Ya!') else

31 stackoperandkosong:=emptyreal(operands); if not stackoperandkosong then popreal(operands, poppedreal); writeln('hasilnya = ',poppedreal:8:2); readln; write('pilih Y [LANJUT] untuk menghitung kembali, atau T [TIDAK] untuk keluar: '); clrscr; repeat clrscr; writeln('***kalkulator***'); inisialkarakter(karakter, jmlkarakter); clearkar(operators); clearreal(operands); error := false; hitung (operands, operators, jmlkarakter); display(operands);next:=readkey; until upcase(next)<>'y'; end. 4.2 Screen shot

32 BAB V PENUTUP

33 5.1 Kesimpulan Tipe data kalkulator sederhana ini yaitu menggunakan array dan stack.array adalah suatu tipe data terstruktur yang dapat menyimpan banyak data dengan suatu nama yang sama menempati temapat di memori yang berurutan serta bertipe data sama pula. Pada stack, penghapusan serta pemasukan elemennya hanya dapat dilakukan di satu posisi, yakni posisi akhir dari list. Posisi ini disebut puncak atau top dari stack. Elemen stack S pada posisi ini dinyatakan dengan TOP(S). Jelasnya, bila stack S [S1, S2,, ST], maka TOP(S) adalah ST. Dari aplikasi program kalkulator scientific sederhana yang kelompok kami buat dengan tipe data inputan string dapat mengoperasikan operasi matematika yaitu berupa pertambahan, pengurangan, perkalian, dan pembagian. Selain itu memiliki kemampuan membaca ekspresi operasi hitung yang berada di dalam simbol tanda kurung dengan mendahulukan operator lalu kemudian operan berikutnya. Dalam kalkulator ini juga kita dapat mengetahui apabila kita salah menginputkan operator yang dimasukan dalam perhitungan maka secara otomatis akan muncul peringatan Maaf Salah Syntax Error, Masukan Yang Bener Ya! 5.2 Saran Sebaiknya dalam kalkulator ini ditambahkan fungsi matematika yang seperti trigonometri, log, pangkat eksponensial, akar, dan fungsi lainnya yang membuat kalkulator ini menjadi lebih scientific lagi dan dalam pengkombinasian koding perlu ketelitian dan kesabaran dalam membuat DAFTAR PUSTAKA Abdul Kadir Pemrograman Pascal Andi Yogyakarta: Yogyakarta

34 Jogiyanto HM Torbo Pascal Jilid 1 dan 2. Andi Yogyakarta: Yogyakarta Lipschutz,Seymour Data Structures.McGraw Hill Rinaladi Munir Algoritma Dan Pemrograman Bahasa Pascal dan C.Bandung: Informatika

STACK ATAU TUMPUKAN 3.1 DAFTAR LINEAR

STACK ATAU TUMPUKAN 3.1 DAFTAR LINEAR STACK ATAU TUMPUKAN 3.1 DAFTAR LINEAR Sebuah daftar linear atau linear list, merupakan suatu struktur data umum yang terbentuk dari barisan hingga yang terurut) dari satuan data ataupun dari record. Untuk

Lebih terperinci

S T A C K ( T U M P U K A N )

S T A C K ( T U M P U K A N ) S T A C K T U M P U K A N ) LINIER LIST Suatu struktur data umum yang berisi suatu kumpulan terurut dari elemen; jumlah elemen di dalam list dapat berubah-ubah. Linier list A yang terdiri dari T elemen

Lebih terperinci

BAB 3 STACK (TUMPUKAN)

BAB 3 STACK (TUMPUKAN) BAB 3 STACK (TUMPUKAN) LINIER LIST Suatu struktur data umum yang berisi suatu kumpulan terurut dari elemen; jumlah elemen di dalam list dapat berubah-ubah. Linier list A yang terdiri dari T elemen pada

Lebih terperinci

BAB II STACK Atau TUMPUKAN

BAB II STACK Atau TUMPUKAN BAB II STACK Atau TUMPUKAN List Linear (Daftar Linear). List linier adalah sekumpulan elemen bertipe sama, yang mempunyai keterurutan tertentu, yang setiap elemennya disebut simpul (node). Simpul terdiri

Lebih terperinci

STRUKTUR DATA Pertemuan 4

STRUKTUR DATA Pertemuan 4 STRUKTUR DATA Pertemuan 4 Struktur Data prepared by Suyanto 1 Definisi Stack atau Tumpukan adalah suatu struktur data yang terbentuk dari barisan hingga yang terurut dari satuan data. Pada Stack, penambahan

Lebih terperinci

BAB II STACK (TUMPUKAN)

BAB II STACK (TUMPUKAN) BAB II STACK (TUMPUKAN) Stack merupakan metode dalam menyimpan atau mengambil data ke dan dari memori. Stack dapat dibratkan sebuah tumpukan barang dalam sebuah tempat yang hanya memiliki satu pintu diatsnya

Lebih terperinci

Pertemuan 10. Tumpukan (Stack) Dipersiapkan oleh : Boldson Herdianto. S., S.Kom., MMSI.

Pertemuan 10. Tumpukan (Stack) Dipersiapkan oleh : Boldson Herdianto. S., S.Kom., MMSI. Pertemuan 10 Tumpukan (Stack) Dipersiapkan oleh : Boldson Herdianto. S., S.Kom., MMSI. Definisi Tumpukan adalah kumpulan elemen-elemen data yang disimpan dalam satu lajur linier. Kumpulan elemen-elemen

Lebih terperinci

STACK (Tumpukan) Tumpukan Koin. Tumpukan Kotak

STACK (Tumpukan) Tumpukan Koin. Tumpukan Kotak STACK (Tumpukan) Tumpukan Koin Tumpukan Kotak Defenisi : Secara sederhana, tumpukan bisa diartikan sebagai suatu kumpulan data yang seolah-olah ada data yang diletakan diatas data yang lain. Satu hal yang

Lebih terperinci

4. STACK / TUMPUKAN TEORI PENUNJANG

4. STACK / TUMPUKAN TEORI PENUNJANG 4. TCK / TUMPUKN TUJUN PRKTIKUM 1. Praktikan mengenal tipe khusus dari link list yaitu stack/tumpukan beserta seluruh operasi yang ada padanya. 2. Praktikan diharapkan dapat menerapkan teori mengenai single

Lebih terperinci

SATUAN ACARA PERKULIAHAN (SAP) Mata Kuliah : Struktur Data Kode : TIS3213 Semester : III Waktu : 2 x 3 x 50 Menit Pertemuan : 4 & 5

SATUAN ACARA PERKULIAHAN (SAP) Mata Kuliah : Struktur Data Kode : TIS3213 Semester : III Waktu : 2 x 3 x 50 Menit Pertemuan : 4 & 5 A. Kompetensi 1. Utama SATUAN ACARA PERKULIAHAN (SAP) Mata Kuliah : Struktur Data Kode : TIS3213 Semester : III Waktu : 2 x 3 x 50 Menit Pertemuan : 4 & 5 Mahasiswa dapat memahami tentang konsep pemrograman

Lebih terperinci

Struktur Data Array. Rijal Fadilah S.Si

Struktur Data Array. Rijal Fadilah S.Si Struktur Data Array Rijal Fadilah S.Si Array Berdimensi Satu Array Satu dimensi tidak lain adalah kumpulan elemen-elemen identik yang tersusun dalam satu baris. Elemen-elemen tersebut memiliki tipe data

Lebih terperinci

Pengantar dalam Bahasa Pemrograman Turbo Pascal Tonny Hidayat, S.Kom

Pengantar dalam Bahasa Pemrograman Turbo Pascal Tonny Hidayat, S.Kom Pengantar dalam Bahasa Pemrograman Turbo Pascal Tonny Hidayat, S.Kom Pengantar Bahasa Pemrograman Pascal Page 1 / 11 Pengenalan Pascal Pascal merupakan salah satu bahasa pemrograman tingkat tinggi. Pemrograman

Lebih terperinci

LIST LINIER & STACK. Pertemuan 6 Yani sugiyani, M.Kom

LIST LINIER & STACK. Pertemuan 6 Yani sugiyani, M.Kom LIST LINIER & STACK Pertemuan 6 Yani sugiyani, M.Kom 1 LIST LINIER Yani Sugiyani, M.Kom 2 LIST LINIER List linier atau daftar linier adalah suatu struktur data umum yang terbentuk dari barisan hingga (yang

Lebih terperinci

BAB III ANALISIS DAN PERANCANGAN APLIKASI 3.1 ANALISIS

BAB III ANALISIS DAN PERANCANGAN APLIKASI 3.1 ANALISIS 29 BAB III ANALISIS DAN PERANCANGAN APLIKASI 3.1 ANALISIS Dengan menggunakan Visual Basic 6.0 aplikasi perangkat ajar pengelolaan dan perhitungan ekspresi matematika yang akan dibangun dalam penelitian

Lebih terperinci

SATUAN ACARA PERKULIAHAN MATA KULIAH PEMROGRAMAN PASCAL * (TK) KODE / SKS: KK /2 SKS

SATUAN ACARA PERKULIAHAN MATA KULIAH PEMROGRAMAN PASCAL * (TK) KODE / SKS: KK /2 SKS MATA KULIAH PEMROGRAMAN * (TK) Minggu ke Pokok Bahasan dan TIU 1. Algoritma Konsep Dasar Bahasa Pascal secara singkat sejarah dirancangnya bahasa Memberikan konsep dasar pembuatan program dalam bahasa

Lebih terperinci

STACK (TUMPUKAN) Tumpukan uang koin Tumpukan kotak Tumpukan Buku. Gambar 1. Macam-macam tumpukan

STACK (TUMPUKAN) Tumpukan uang koin Tumpukan kotak Tumpukan Buku. Gambar 1. Macam-macam tumpukan STACK (TUMPUKAN) Stack adalah suatu urutan elemen yang elemennya dapat diambil dan ditambah hanya pada posisi akhir (top) saja. Contoh dalam kehidupan sehari-hari adalah tumpukan piring di sebuah restoran

Lebih terperinci

Universitas gunadarma. pascal. Bab 4- bab 10. Hana Pertiwi S.T

Universitas gunadarma. pascal. Bab 4- bab 10. Hana Pertiwi S.T Universitas gunadarma pascal Bab 4- bab 10 Hana Pertiwi S.T 14 PASCAL Struktur Perulangan WHILE-DO Struktur Perulangan REPEAT-UNTIL REPEAT UNTIL 1. Struktur Perulangan FOR 2. Penggunaan gabungan struktur

Lebih terperinci

VARIABEL, TIPE DATA, KONSTANTA, OPERATOR DAN EKSPRESI. Pemrograman Dasar Kelas X Semester 2

VARIABEL, TIPE DATA, KONSTANTA, OPERATOR DAN EKSPRESI. Pemrograman Dasar Kelas X Semester 2 VARIABEL, TIPE DATA, KONSTANTA, OPERATOR DAN EKSPRESI Tujuan Pembelajaran 1. Siswa mampu memahami penulisan Tipe data, variabel dan konstanta dalam pascal 2. Siswa mampu menerapkan penggunaan Tipe data,

Lebih terperinci

Struktur Data. Belajar Struktur Data Menggunakan Pascal Pertemuan-1

Struktur Data. Belajar Struktur Data Menggunakan Pascal Pertemuan-1 Struktur Data Belajar Struktur Data Menggunakan Pascal Pertemuan-1 I n W a h y u W i d o d o e m a i l @ r i n g k e s. c o m Identifier, Konstanta dan Variabel Identifier (sebutan / pengenal) Identifier

Lebih terperinci

PSEUDOCODE TIPE DATA, VARIABEL, DAN OPERATOR

PSEUDOCODE TIPE DATA, VARIABEL, DAN OPERATOR 1 PSEUDOCODE TIPE DATA, VARIABEL, DAN OPERATOR Siti Mukaromah, S.Kom TEKNIK PENYAJIAN ALGORITMA Teknik Tulisan Structure English Pseudocode Teknik Gambar Structure Chart HIPO Flowchart 2 PSEUDOCODE Kode

Lebih terperinci

ALGORITMA DAN STRUKTUR DATA ARRAY STACK DAN QUEUE

ALGORITMA DAN STRUKTUR DATA ARRAY STACK DAN QUEUE ALGORITMA DAN STRUKTUR DATA ARRAY STACK DAN QUEUE STACK = TUMPUKAN SUATU SUSUNAN KOLEKSI DATA DIMANA DATA DAPAT DITAMBAHKAN DAN DIHAPUS SELALU DILAKUKAN PADA BAGIAN AKHIR DATA, YANG DISEBUT DENGAN TOP

Lebih terperinci

MODUL PRAKTIKUM PERCABANGAN DAN PENGULANGAN

MODUL PRAKTIKUM PERCABANGAN DAN PENGULANGAN PERCABANGAN DAN PENGULANGAN Pada BAB ini akan membahas tentang PERCABANGAN dan PERULANGAN. PERCABANGAN : a) IF THEN b) CASE OF PENGULANGAN: a) REPEAT N TIMES b) REPEAT UNTIL c) WHILE DO d) ITERATE STOP

Lebih terperinci

JENIS DATA SEDERHANA & INPUT/OUTPUT DATA

JENIS DATA SEDERHANA & INPUT/OUTPUT DATA JENIS DATA SEDERHANA & INPUT/OUTPUT DATA 1.1 Tipe Data A. Data Tipe Sederhana Dihubungkan dengan sebuah identifier untuk sebuah data. Data tipe ini digolongkan menjadi tipe data standar dan tipe data yang

Lebih terperinci

STACK (TUMPUKAN) Tumpukan uang koin Tumpukan kotak Tumpukan Buku. Gambar 1. Macam-macam tumpukan

STACK (TUMPUKAN) Tumpukan uang koin Tumpukan kotak Tumpukan Buku. Gambar 1. Macam-macam tumpukan STACK (TUMPUKAN) adalah suatu urutan elemen yang elemennya dapat diambil dan ditambah hanya pada posisi akhir (top) saja. Contoh dalam kehidupan sehari-hari adalah tumpukan piring di sebuah restoran yang

Lebih terperinci

DIKTAT KULIAH ALGORITMA dan STRUKTUR DATA II. Tujuan Pembelajaran : Mahasiswa mampu menjelaskan teknik pemrograman menggunakan Stack.

DIKTAT KULIAH ALGORITMA dan STRUKTUR DATA II. Tujuan Pembelajaran : Mahasiswa mampu menjelaskan teknik pemrograman menggunakan Stack. Pertemuan 7 Waktu : 135 menit Tujuan Pembelajaran : Mahasiswa mampu menjelaskan teknik pemrograman menggunakan Stack. Substansi Materi : Stack Tabulasi Kegiatan Perkuliahan No Tahap Kegiatan Kegiatan Pengajar

Lebih terperinci

BAB III STACK ATAU TUMPUKAN

BAB III STACK ATAU TUMPUKAN III STCK TU TUMPUKN LIST LINIER List linier atau daftar linier adalah suatu struktur data umum yang terbentuk dari barisan hingga yang terurut) dari satuan data ataupun dari record. Istilah yang digunakan

Lebih terperinci

STACK. Sistem penyimpanan data dengan mekanisme Last In First Out( LIFO).

STACK. Sistem penyimpanan data dengan mekanisme Last In First Out( LIFO). STACK Sistem penyimpanan data dengan mekanisme Last In First Out( LIFO). Stack merupakan tipe data abstrak yang banyak digunakan dalam berbagai algoritma, diantaranya adalah: Algoritma konversi infix ke

Lebih terperinci

Pertemuan 4 ELEMEN-ELEMEN BAHASA PEMROGRAMAN

Pertemuan 4 ELEMEN-ELEMEN BAHASA PEMROGRAMAN Pertemuan 4 ELEMEN-ELEMEN BAHASA PEMROGRAMAN I. Elemen-Elemen Dalam Bahasa Pemrograman Berikut adalah elemen-elemen pada bahasa pemrograman: Berikut adalah element-element pada bahasa pemrograman: 1. Aturan

Lebih terperinci

STACK/TUMPUKAN. R. Denny Ari Wibowo, S.Kom STMIK BINA NUSANTARA JAYA LUBUKLINGGAU

STACK/TUMPUKAN. R. Denny Ari Wibowo, S.Kom STMIK BINA NUSANTARA JAYA LUBUKLINGGAU STACK/TUMPUKAN R. Denny Ari Wibowo, S.Kom STMIK BINA NUSANTARA JAYA LUBUKLINGGAU Penjelasan : STACK Sebagai tumpukan dari benda Sekumpulan data yang seolah-olah diletakkan di atas data yang lain Koleksi

Lebih terperinci

Pertemuan 6 Array Objektif: 1. Memahami cara mendeklarasi tipe indeks dalam array 2. Dapat membuat program sederhana menggunakan array Pertemuan 6 53

Pertemuan 6 Array Objektif: 1. Memahami cara mendeklarasi tipe indeks dalam array 2. Dapat membuat program sederhana menggunakan array Pertemuan 6 53 Pertemuan 6 Array Objektif: 1. Memahami cara mendeklarasi tipe indeks dalam array 2. Dapat membuat program sederhana menggunakan array Pertemuan 6 53 P4.1 Teori Larik / array adalah tipe terstruktur yang

Lebih terperinci

Pertemuan 7. REVIEW dan QUIS

Pertemuan 7. REVIEW dan QUIS Pertemuan 7 REVIEW dan QUIS 1. Type data dibawah ini, yang tidak termasuk dalam tipe data sederhana tunggal, adalah : a. Boolean d. Integer b. String e. float c. Char 2. ==, =,!=, termasuk dalam operator

Lebih terperinci

MATERI 2 JENIS-JENIS DATA SEDERHANA & INPUT/OUTPUT DATA

MATERI 2 JENIS-JENIS DATA SEDERHANA & INPUT/OUTPUT DATA MATERI 2 JENIS-JENIS DATA SEDERHANA & INPUT/OUTPUT DATA Kata-Kata Cadangan Kata-kata cadangan (reserved words) adalah kata-kata yang sudah didefinisikan oleh Pascal yang mempunyai maksud tertentu. Kata-kata

Lebih terperinci

Algoritma dan Struktur Data STACK

Algoritma dan Struktur Data STACK Algoritma dan Struktur Data STACK Teknik Informatika Universitas Muhammadiyah Malang 2016 Tujuan Instruksional Mahasiswa mampu : Memahami tentang konsep stack Mengetahui mekanisme pengoperasian sebuah

Lebih terperinci

DASAR PEMROGRAMAN. Institut Teknologi Sumatera

DASAR PEMROGRAMAN. Institut Teknologi Sumatera DASAR PEMROGRAMAN REVIEW STRUKTUR DASAR, PERCABANGAN, DAN PERULANGAN Institut Teknologi Sumatera TUJUAN KULIAH Mengenalkan konsep dasar pemrograman: dekomposisi problem, modularisasi, rekurens; skill/praktek

Lebih terperinci

Chapter 3.2 : Tipe, Nama dan Nilai

Chapter 3.2 : Tipe, Nama dan Nilai Mata Kuliah : Logika dan Algoritma / 4 SKS Chapter 3.2 : Tipe, Nama dan Nilai Dosen Pengasuh : Fatoni, M.M.,M.Kom. Mail : fatoni@binadarma.ac.id/toniubd@yahoo.com Materi Yang Dipelajari Tipe Data Dasar

Lebih terperinci

PENGENALAN BAHASA C. A. Struktur Kode Program dalam Bahasa C Secara garis besar, suatu kode program dalam bahasa C memiliki struktur umum seperti ini:

PENGENALAN BAHASA C. A. Struktur Kode Program dalam Bahasa C Secara garis besar, suatu kode program dalam bahasa C memiliki struktur umum seperti ini: PENGENALAN BAHASA C A. Struktur Kode Program dalam Bahasa C Secara garis besar, suatu kode program dalam bahasa C memiliki struktur umum seperti ini: Kebanyakan pemrogram jarang memberikan keterangan/

Lebih terperinci

Pengantar dalam Bahasa Pemrograman Turbo Pascal

Pengantar dalam Bahasa Pemrograman Turbo Pascal Pengantar dalam Bahasa Pemrograman Turbo Pascal Penulis: William www.etersoul.com Computer Club of Bunda Hati Kudus SMA Bunda Hati Kudus Pengantar Bahasa Pemrograman Pascal Page 1 / 11 License Agreements

Lebih terperinci

[Type the company name] [Type the document title] [Type the document subtitle] Gilang Abdul Aziz [Pick the date]

[Type the company name] [Type the document title] [Type the document subtitle] Gilang Abdul Aziz [Pick the date] [Type the company name] [Type the document title] [Type the document subtitle] Gilang Abdul Aziz [Pick the date] H a l a m a n 1 DAFTAR ISI DAFTAR ISI... 1 1. TIPE DATA DALAM BORLAND DELPHI7... 2 1.1.

Lebih terperinci

BAB III METODE PENELITIAN / PERANCANGAN SISTEM. perancangan dan pembuatan program ini meliputi : dengan konversi notasi infix, prefix, dan postfix.

BAB III METODE PENELITIAN / PERANCANGAN SISTEM. perancangan dan pembuatan program ini meliputi : dengan konversi notasi infix, prefix, dan postfix. 21 BAB III METODE PENELITIAN / PERANCANGAN SISTEM 3.1. Metode Penelitian Metodologi penelitian yang digunakan untuk mendukung penyelesaian perancangan dan pembuatan program ini meliputi : 1. Studi literatur

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-2 (Teks Algoritma) Noor Ifada noor.ifada@if.trunojoyo.ac.id S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Judul Algoritma Deklarasi Deskripsi Translasi

Lebih terperinci

Tumpukan(Stack)!! " # $ %&' $ %& ( ) ( * +, / ( (

Tumpukan(Stack)!!  # $ %&' $ %& ( ) ( * +, / ( ( BAB III Tumpukan(Stack) Tujuan: 1. Memahami terminologi yang terkait dengan struktur data stack 2. Memahami operasi-operasi yang ada dalam stack 3. Dapat mengidentifikasi permasalahan-permasalahan pemrograman

Lebih terperinci

MODUL 1. Struktur Bahasa PASCAL secara umum

MODUL 1. Struktur Bahasa PASCAL secara umum MODUL 1 Struktur Bahasa PASCAL secara umum Pascal mempunyai struktur sebagai berikut: 1. Bagian Judul Program 2. Bagian Deklarasi e a. Deklarasi tipe data (TYPE) b. Deklarasi variabel (VAR) c. Deklarasi

Lebih terperinci

Turbo C adalah tool yang dipakai untuk membuat code program dalam bahasa C ataupun C++. Berikut adalah jendela utama Turbo C

Turbo C adalah tool yang dipakai untuk membuat code program dalam bahasa C ataupun C++. Berikut adalah jendela utama Turbo C 1. Pendahuluan Lingkungan Turbo C++ 4.5 Turbo C++ 4.5 adalah tool yang dipakai untuk membuat code program dalam bahasa C ataupun C++. Berikut adalah jendela utama Turbo C++ 4.5. 1 2 3 4 1 : Menu Utama

Lebih terperinci

PRAKTIKUM ALGORITMA & PEMROGRAMAN III MODUL_06 Stack (Tumpukan)

PRAKTIKUM ALGORITMA & PEMROGRAMAN III MODUL_06 Stack (Tumpukan) PRAKTIKUM ALGORITMA & PEMROGRAMAN III MODUL_06 Stack (Tumpukan) inslls_05@yahoo.co.id A. Pembahasan Stack Algoritma stack merupakan struktur data yang mengimplementasi dari aturan LIFO (Last In First Out).

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-2 (Teks Algoritma) :: Noor Ifada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Judul Algoritma Deklarasi Deskripsi Translasi Teks Algoritma ke dalam

Lebih terperinci

Kuliah Online : TEKKOM [2013/VI]

Kuliah Online : TEKKOM [2013/VI] Kuliah Online : TEKKOM [2013/VI] Sumber Perancangan Bahasa Pemrograman Bahasa alami (natural language) Konstruksi yang diturunkan dari bahasa alami, karena bahasa alami dapat digunakan sebagai panduan

Lebih terperinci

KONSEP DASAR BAHASA PASCAL

KONSEP DASAR BAHASA PASCAL KONSEP DASAR BAHASA PASCAL Sejarah Singkat Bahasa PASCAL Dikembangkan awal tahun 70-an oleh NICLAUS WIRTH di Technical University, Zurich Swiss. Nama PASCAL diambil dari nama seorang ahli matematika bangsa

Lebih terperinci

Indentifier, Keywords, Variable, Tipe Data dan Operator. Ramos Somya, S.Kom., M.Cs.

Indentifier, Keywords, Variable, Tipe Data dan Operator. Ramos Somya, S.Kom., M.Cs. Indentifier, Keywords, Variable, Tipe Data dan Operator Ramos Somya, S.Kom., M.Cs. Merupakan nama yang digunakan untuk menamai variabel, konstanta, nama program maupun sub program. Seorang programmer tidak

Lebih terperinci

Bab 2 DASAR-DASAR ALGORITMA

Bab 2 DASAR-DASAR ALGORITMA Bab 2 DASAR-DASAR ALGORITMA Pada bab ini anda akan mempelajari 1. Nama (pengenal) 2. Nilai 3. Variabel dan Konstanta 4. Penugasan (Assignment) 5. Jenis-jenis tipe data 6. Jenis-jenis operasi dan kaitannya

Lebih terperinci

1. Kompetensi Mengenal dan memahami struktur data Stack (tumpukan) dan Queue (antrian).

1. Kompetensi Mengenal dan memahami struktur data Stack (tumpukan) dan Queue (antrian). No. : LST/PTI/PTI 212/13 Revisi : 00 Tgl. : 28-4-2008 Hal. 1 dari 5 hal. 1. Kompetensi Mengenal dan memahami struktur data Stack (tumpukan) dan Queue (antrian). 2. Sub Kompetensi Dapat menyelesaikan suatu

Lebih terperinci

Lab. Teknik Informatika Struktur Data 1

Lab. Teknik Informatika Struktur Data 1 2. POINTER dan SINGLE LINK LIST TUJUAN PRAKTIKUM 1. Praktikan mengetahui tipe struktur data baru yaitu tipe data Pointer. 2. Praktikan menggunakan pointer didalam pembuatan program dan dapat menerapkannya

Lebih terperinci

STACK (TUMPUKAN) Secara sederhana, sebuah tumpukan bisa kita ilustrasikan seperti gambar berikut.

STACK (TUMPUKAN) Secara sederhana, sebuah tumpukan bisa kita ilustrasikan seperti gambar berikut. STACK (TUMPUKAN) Salah satu konsep yang sangat berguna di dalam Ilmu Komputer adalah satu bentuk struktur data yang disebut tumpukan (stack). Dalam bab ini kita akan mencoba menggali mengapa tumpukan sangat

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI 5 BAB II LANDASAN TEORI 2.1. Tipe Data Abstrak (TDA) Tipe data sebuah variabel adalah kumpulan nilai yang dapat dimuat oleh variabel ini. Misalnya sebuah tipe boolean hanya bernilai TRUE atau FALSE, tidak

Lebih terperinci

SMA SANTO PAULUS PONTIANAK

SMA SANTO PAULUS PONTIANAK SMA SANTO PAULUS PONTIANAK Konsep Dasar Pemrograman Pascal Kelas X Semester 2 Pengayaan Teknologi Informasi dan Komunikasi Oleh : Vianney Alexius, mtb TIK-vianney.mtb 2012 Algoritma Serangkaian langkah

Lebih terperinci

STACK atau TUMPUKAN. Pertemuan 5 STACK (TUMPUKAN)

STACK atau TUMPUKAN. Pertemuan 5 STACK (TUMPUKAN) Pertemuan 5 STACK atau TUMPUKAN STACK (TUMPUKAN) Merupakan bentuk khusus dari Linier List yang pemasukan dan penghapusan elemennya hanya dapat dilakukan pada satu posisi, yaitu posisi akhir dari List (Top)

Lebih terperinci

ARRAY. Larik / array adalah tipe terstruktur yang terdiri dari sejumlah komponen-komponen yang mempunyai tipe yang sama.

ARRAY. Larik / array adalah tipe terstruktur yang terdiri dari sejumlah komponen-komponen yang mempunyai tipe yang sama. ARRAY Larik / array adalah tipe terstruktur yang terdiri dari sejumlah komponen-komponen yang mempunyai tipe yang sama. 1.1 Deklarasi yang akan dipergunakan harus di deklarasikan terlebih dahulu. Deklarasi

Lebih terperinci

SOAL DAN JAWABAN UTS PEMROGRAMAN DASAR KELAS X

SOAL DAN JAWABAN UTS PEMROGRAMAN DASAR KELAS X SOAL DAN JAWABAN UTS PEMROGRAMAN DASAR KELAS X Kelas : X TKI 2 Mata Pelajaran : Produktif Teknik Komputer dan Informatika (Pemrograman Dasar) Waktu : 60 menit Bentuk Soal : Pilihan Ganda 40 soal Pilihan

Lebih terperinci

P A S C A L D A S A R

P A S C A L D A S A R P A S C A L D A S A R Komputer merupakan satu rangkaian perangkat elektronik yang terdiri dari monitor, CPU(Central Processing Unit), keyboard, speaker maupun printer. Penggunaaan komputer sudah sangat

Lebih terperinci

ARRAY DIMENSI SATU Setiap elemen array dapat diakses melalui indeks. Indeks array secara default dimulai dari 0.

ARRAY DIMENSI SATU Setiap elemen array dapat diakses melalui indeks. Indeks array secara default dimulai dari 0. Array SASARAN Memahami array berdimensi satu Memahami array berdimensi dua Memahami array berdimensi banyak Memahami inisialisasi array yang tak berukuran Melewatkan array sbg parameter ke suatu fungsi

Lebih terperinci

A. TUJUAN PEMBELAJARAN

A. TUJUAN PEMBELAJARAN Praktikum 2 Stack (Tumpukan) A. TUJUAN PEMBELAJARAN Setelah mempelajari materi dalam bab ini, mahasiswa diharapkan mampu: 1. Memahami terminologi yang terkait dengan struktur data stack. 2. Memahami operasi-operasi

Lebih terperinci

KONSEP DASAR BAHASA PASCAL

KONSEP DASAR BAHASA PASCAL KONSEP DASAR BAHASA PASCAL I. Struktur Dan Komponen Dasar Program Pascal. Struktur dari suatu program Pascal terdiri dari sebuah judul program dan suatu blok program atau badan program. Badan program dibagi

Lebih terperinci

Bab 1 Pengenalan Pascal 1 BAB I PENGENALAN PASCAL, TIPE-TIPE DATA PASCAL DAN STATEMEN DASAR PADA PASCAL TUJUAN PRAKTIKUM TEORI PENUNJANG

Bab 1 Pengenalan Pascal 1 BAB I PENGENALAN PASCAL, TIPE-TIPE DATA PASCAL DAN STATEMEN DASAR PADA PASCAL TUJUAN PRAKTIKUM TEORI PENUNJANG Bab 1 Pengenalan Pascal 1 BAB I PENGENALAN PASCAL, TIPE-TIPE DATA PASCAL DAN STATEMEN DASAR PADA PASCAL TUJUAN PRAKTIKUM 1. Mengetahui sejarah bahasa Pascal. 2. Mengerti dan memahami struktur pemrograman

Lebih terperinci

PROSES PENJUALAN BUKU

PROSES PENJUALAN BUKU PROSES PENJUALAN BUKU MAKALAH Makalah ini disusun guna untuk memenuhi tugas TIK akhir tahun kelas XI semester 2 yang membahas tentang Proses Penjualan Buku. OLEH : Ida Mariyatuz Zulfa ( 14 ) Mar atu Sholekhah

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-4 Nilai dan Urutan (sequence) :: Noor Ifada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Nilai Pengisian nilai ke dalam nama peubah Ekspresi Menuliskan Nilai

Lebih terperinci

Teori Algoritma TIPE DATA

Teori Algoritma TIPE DATA Alam Santosa Teori Algoritma Dasar Algoritma TIPE DATA Program komputer adalah deretan perintah untuk memanipulasi data input menjadi informasi yang bermanfaat bagi pengguna (user). Data yang diinput dapat

Lebih terperinci

ARNA FARIZA YULIANA SETIOWATI

ARNA FARIZA YULIANA SETIOWATI 02. Stack ARNA FARIZA YULIANA SETIOWATI Capaian Pembelajaran 1. Mahasiswa mengerti konsep stack dan operasi pada stack. 2. Mahasiswa dapat menggunakan stack untuk memecahkan permasalahan pemrograman. 1

Lebih terperinci

Memulai Pemrograman Pascal dengan Delphi Console 1. Buka aplikasi delphi 2. Pilih File New Other Console Application

Memulai Pemrograman Pascal dengan Delphi Console 1. Buka aplikasi delphi 2. Pilih File New Other Console Application #2 Aplikasi Console Aplikasi console merupakan aplikasi berbasis teks yang berjalan pada command prompt. Bahasa yang digunakan pada aplikasi delphi adalah bahasa pemrograman pascal. Struktur Penulisan

Lebih terperinci

Praktikum 4. Tumpukan (Stack)

Praktikum 4. Tumpukan (Stack) Praktikum 4 Tumpukan (Stack) POKOK BAHASAN: Konsep Tumpukan (Stack) Struktur data untuk Tumpukan Algoritma merubah Infix menjadi Postfix Implementasi Tumpukan dalam Bahasa C TUJUAN BELAJAR: Setelah melakukan

Lebih terperinci

Sesi/Perkuliahan ke: I

Sesi/Perkuliahan ke: I Sesi/Perkuliahan ke: I Tujuan Instruksional Khusus : 1. Mahasiswa dapat menjelaskan tentang sejarah singkat bahasa pemrograman pascal. 2. Mahasiswa mengerti tentang konsep dasar pembuatan program pada

Lebih terperinci

STRUKTUR DATA. Deskripsi Mata Kuliah

STRUKTUR DATA. Deskripsi Mata Kuliah STRUKTUR DATA Deskripsi Mata Kuliah Mata kuliah ini memberi pelajaran tentang paradigma pemrograman, array, string, matriks, record. Mata kuliah ini juga memberi pemahaman tentang list linear, multi link

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-11 (Matriks) :: Noor Ifada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Konsep Matriks Pendeklarasian Matriks Pemrosesan Matriks Membaca Elemen Matriks

Lebih terperinci

BAB XI ARRAY (LARIK)

BAB XI ARRAY (LARIK) BAB XI ARRAY (LARIK) 1. PENDAHULUAN Bab ini memiliki kompetensi dasar untuk mendefinisikan dan menggunakan tipe data array. Tipe data array adalah salah satu tipe terstruktur dalam pemrograman. Tipe data

Lebih terperinci

Pendahuluan Struktur Data. Nisa ul Hafidhoh

Pendahuluan Struktur Data. Nisa ul Hafidhoh Pendahuluan Struktur Data Nisa ul Hafidhoh nisa@dsn.dinus.ac.id 08156114760 Tujuan Mahasiswa dapat melakukan pemrograman dalam skala menengah dengan memanfaatkan struktur data internal yang kompleks dan

Lebih terperinci

Kode MK/ Pemrograman Terstruktur 2. ZK Abdurahman Baizal. KK Algoritma dan Komputasi. Stack (Tumpukan)

Kode MK/ Pemrograman Terstruktur 2. ZK Abdurahman Baizal. KK Algoritma dan Komputasi. Stack (Tumpukan) Kode MK/ Pemrograman Terstruktur 2 ZK Abdurahman Baizal KK Algoritma dan Komputasi Stack (Tumpukan) 1 8/25/2015 Pendahuluan Pada bab ini kita akan membahas tentang stack (tumpukan) Struktur data stack

Lebih terperinci

SATUAN ACARA PERKULIAHAN JURUSAN TEKNIK INFORMATIKA ITP

SATUAN ACARA PERKULIAHAN JURUSAN TEKNIK INFORMATIKA ITP SATUAN ACARA PERKULIAHAN JURUSAN TEKNIK INFORMATIKA ITP Mata kuliah : Algoritma dan Pemrograman Kode Mata Kuliah : TIS2223 SKS : 3 Waktu Pertemuan : 16 kali Pertemuan Deskripsi : Mata kuliah algoritma

Lebih terperinci

S TA C K Sunu Wibirama

S TA C K Sunu Wibirama STACK Sunu Wibirama Jadwal ujian MID Hari Rabu, 6 April 2011 Pkl. 07.30-09.30 WIB Ruangan E3 Open Book, tapi tidak diperkenankan menggunakan internet, membuka laptop, atau handphone Bahan ujian Logika

Lebih terperinci

Gambar 1. Ilustrasi Stack

Gambar 1. Ilustrasi Stack PRAKTIKUM 22 STACK (TUMPUKAN) A. TUJUAN PEMBELAJARAN 1. Memahami konsep penyimpanan data dengan stack (tumpukan) 2. Memahami operasi pada stack 3. Mampu mengimplementasikan struktur data stack pada pemrograman

Lebih terperinci

Pert 3: Algoritma Pemrograman 1 (Alpro1) 4 sks. By. Rita Wiryasaputra, ST., M. Cs.

Pert 3: Algoritma Pemrograman 1 (Alpro1) 4 sks. By. Rita Wiryasaputra, ST., M. Cs. Pert 3: Algoritma Pemrograman 1 (Alpro1) 4 sks By. Rita Wiryasaputra, ST., M. Cs. ritasaputra@gmail.com Kriteria Unjuk Kerja Algoritma Pemrograman 1 Tugas Terakhir (15): Buatlah portofolio Pengidentifikasian

Lebih terperinci

Struktur Data. Belajar Struktur Data Menggunakan Pascal Pertemuan-5

Struktur Data. Belajar Struktur Data Menggunakan Pascal Pertemuan-5 Struktur Data Belajar Struktur Data Menggunakan Pascal Pertemuan-5 I n W a h y u W i d o d o e m a i l @ r i n g k e s. c o m ARRAY Menurut definisinya, array (larik) adalah suatu variabel yang merepresentasikan

Lebih terperinci

Pertemuan Ke-4 Urutan (sequence) Rahmady Liyantanto. liyantanto.wordpress.com. S1 Teknik Informatika-Unijoyo

Pertemuan Ke-4 Urutan (sequence) Rahmady Liyantanto. liyantanto.wordpress.com. S1 Teknik Informatika-Unijoyo Algoritma Pemrograman Pertemuan Ke-4 Urutan (sequence) Rahmady Liyantanto liyantanto88@yahoo.com liyantanto.wordpress.com Sub Pokok Bahasan Nilai Pengisian nilai ke dalam nama peubah Ekspresi Menuliskan

Lebih terperinci

ALGORITMA DAN STRUKTUR DATA

ALGORITMA DAN STRUKTUR DATA Modul ke: 05 Desi Fakultas FASILKOM ALGORITMA DAN STRUKTUR DATA OLEH : Ramayanti, S.Kom, MT Program Studi Teknik Informatika APLIKASI SINGLE STACK Infix, Postfix, Prefix Operand & Operator A * ( B + C

Lebih terperinci

STRUKTUR DATA POKOK BAHASAN - 7 STACK ( TUMPUKAN )

STRUKTUR DATA POKOK BAHASAN - 7 STACK ( TUMPUKAN ) STRUKTUR DATA POKOK BAHASAN - 7 STACK ( TUMPUKAN ) Oleh : NAZARUDDIN AHMAD, S.T, M.T Referensi : Antonius Rachmat C, S.Kom Design By mytemplate 2013 Stack Stack atau tumpukan adalah suatu struktur yang

Lebih terperinci

Struktur Data. Pertemuan 2

Struktur Data. Pertemuan 2 Pertemuan 2 Tujuan Pembelajaran Mahasiswa mampu menjelaskan konsep struktur data (Pengertian Struktur data, Konsep struktur data, Tipe data sederhana, Deklarasi data dalam bahasa pemrograman. 1. Pengertian

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1 Rangkaian Logika Rangkaian logika terbentuk dari hubungan beberapa gerbang (gate) logika. Rangkaian logika bekerja secara digital. Output dari suatu rangkaian logika ditentukan

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-2 (Teks Algoritma) :: Noor Ifada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Judul Algoritma Deklarasi Deskripsi Translasi Teks Algoritma ke dalam

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-4 (Nilai dan Urutan [Sequence]) :: Noor Ifada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Nilai Pengisian nilai ke dalam nama peubah Ekspresi Menuliskan Nilai

Lebih terperinci

MODUL STRUKTUR DATA. Erna Kumalasari Nurnawati

MODUL STRUKTUR DATA. Erna Kumalasari Nurnawati MODUL STRUKTUR DATA Erna Kumalasari Nurnawati Apa yang dipelajari??? Sorting = mengurutkan sejumlah data berdasar kunci tertentu array,array record Searching (pencarian)->array+record Struktur tumpukan

Lebih terperinci

Pengenalan Pascal. Sejarah Singkat Pascal

Pengenalan Pascal. Sejarah Singkat Pascal Pengenalan Pascal Sejarah Singkat Pascal Dirancang oleh Prof. Nicklaus Wirth dari Technical University di Zurich, Switzerland tahun 1971. Nama Pascal berasal dari Blaise Pascal, nama ahli matematika dan

Lebih terperinci

Teori Algoritma. Struktur Algoritma

Teori Algoritma. Struktur Algoritma Alam Santosa Teori Algoritma Runtunan Struktur Algoritma Seperti telah dijelaskan sebelumnya, sebuah algoritma terbagi tiga bagian, yaitu: Judul Deklarasi Deskripsi Judul Judul program digunakan untuk

Lebih terperinci

TIPE, NAMA, DAN NILAI

TIPE, NAMA, DAN NILAI TIPE, NAMA, DAN NILAI Dian Palupi Rini, M.Kom Tipe Dasar Bilangan Logika Nama Tipe adalah boolean (diambil dari nama matematikawan Inggris George Boole). Ranah Nilai : true (benar) dan false (salah). Konstanta

Lebih terperinci

Tipe Data dan Operator

Tipe Data dan Operator Tipe Data dan Operator Dasar Algoritma dan Pemrogrman Eka Maulana, ST, MT, MEng. Klasifikasi Tipe Data 1 Tipe Data Tipe data adalah jenis data yang dapat diolah oleh komputer untuk memenuhi kebutuhan dalam

Lebih terperinci

Modul Praktikum Algoritma dan Struktur Data

Modul Praktikum Algoritma dan Struktur Data MODUL IV STACK A. TUJUAN 1. Memahami terminologi yang terkait dengan struktur data stack. 2. Memahami operasi-operasi yang ada dalam stack. 3. Dapat mengidentifikasi permasalahan-permasalahan pemrograman

Lebih terperinci

Sub Pokok Bahasan. tugas 1 Pascal operator Assignment, Binary, Unary dan Bitwise

Sub Pokok Bahasan. tugas 1 Pascal operator Assignment, Binary, Unary dan Bitwise Sub 1 Agar mahasiswa mengetahui Agar mahasiswa mengetahui Pengenalan Pascal - Sejarah Pascal Buku ke-2. Hal. 1-26 1. Teori White Board 1.Latihan sejarah dan struktur Pascal sejarah dan memahami struktur

Lebih terperinci

STRUKTUR KONTROL. Struktur WHILE-DO Mempunyai struktur sebagai berikut : Bentuk Umum : WHILE condition Do statement Bentuk Proses (flow chart) :

STRUKTUR KONTROL. Struktur WHILE-DO Mempunyai struktur sebagai berikut : Bentuk Umum : WHILE condition Do statement Bentuk Proses (flow chart) : STRUKTUR KONTROL Struktur WHILE-DO Mempunyai struktur sebagai berikut : Bentuk Umum : WHILE condition Do statement Bentuk Proses (flow chart) : statement C false true Statement WHILE-DO digunakan untuk

Lebih terperinci

ARRAY. contoh : A[1] := 10; var A : array[1..10] of integer; A[nomer_indeks]

ARRAY. contoh : A[1] := 10; var A : array[1..10] of integer; A[nomer_indeks] ARRAY Array adalah tipe data kompleks yang elemen-elemennya mempunyai tipe data yang sama. Jumlah elemen array bersifat tetap dan tidak bisa ditambah atau dikurangi setelah pendeklarasiannya. Tiap elemen

Lebih terperinci

Struktur Data adalah : suatu koleksi atau kelompok data yang dapat dikarakteristikan oleh organisasi serta operasi yang didefinisikan terhadapnya.

Struktur Data adalah : suatu koleksi atau kelompok data yang dapat dikarakteristikan oleh organisasi serta operasi yang didefinisikan terhadapnya. Pertemuan 1 STRUKTUR DATA Struktur Data adalah : suatu koleksi atau kelompok data yang dapat dikarakteristikan oleh organisasi serta operasi yang didefinisikan terhadapnya. Pemakaian Struktur Data yang

Lebih terperinci

PENDAHULUAN. Brigida Arie Minartiningtyas, M.Kom

PENDAHULUAN. Brigida Arie Minartiningtyas, M.Kom PENDAHULUAN Brigida Arie Minartiningtyas, M.Kom Langkah dalam proses pembuatan suatu program atau software : Mendefinisikan masalah dan menganalisanya Tujuan dari pembuatan program Parameter-parameter

Lebih terperinci

Aplikasi Rekursif dalam Analisis Sintaks Program

Aplikasi Rekursif dalam Analisis Sintaks Program Aplikasi Rekursif dalam Analisis Sintaks Program Albertus Kelvin / 13514100 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha 10 Bandung 40132,

Lebih terperinci

Dasar Komputer & Pemrograman 2A

Dasar Komputer & Pemrograman 2A Dasar Komputer & Pemrograman 2A Materi 3 Reza Aditya Firdaus STATEMENT INPUT OUTPUT Dalam bahasa Pascal untuk keperluan input (membaca input) digunakan identifier standar READ atau READLN. Identifier standart

Lebih terperinci

Sesi/Perkuliahan ke: II

Sesi/Perkuliahan ke: II Sesi/Perkuliahan ke: II Tujuan Instruksional Khusus : 1. Mahasiswa dapat menyebutkan jenis-jenis data sederhana. 2. Mahasiswa dapat menjelaskan pengertian integer,, boolean dan char. 3. Mahasiswa dapat

Lebih terperinci