laporan segitga pascal

35
IMPLEMENTASI SEGITIGA PASCAL PADA PROGRAM TURBO PASCAL TUGAS BESAR PRAKTIKUM Diajukan Kepada Divisi Pendidikan dan Pelatihan Lembaga Informasi dan Komunikasi Universitas Muhammadiyah Malang Disusun Oleh: Defi Enggarini Nursanti 08320113 JURUSAN MATEMATIKA DAN KOMPUTASI FAKULTAS KEGURUAN ILMU DAN PENDIDIKAN UNIVERSITAS MUHAMMADIYAH MALANG 2011

Transcript of laporan segitga pascal

Page 1: laporan segitga pascal

IMPLEMENTASI SEGITIGA PASCAL

PADA PROGRAM TURBO PASCAL

TUGAS BESAR PRAKTIKUM

Diajukan Kepada

Divisi Pendidikan dan Pelatihan

Lembaga Informasi dan Komunikasi

Universitas Muhammadiyah Malang

Disusun Oleh:

Defi Enggarini Nursanti

08320113

JURUSAN MATEMATIKA DAN KOMPUTASI

FAKULTAS KEGURUAN ILMU DAN PENDIDIKAN

UNIVERSITAS MUHAMMADIYAH MALANG

2011

Page 2: laporan segitga pascal

LEMBAR PERSETUJUAN

Judul Tugas Besar Praktikum:

Implementasi Segitiga Pascal

Pada Program Pascal TUGAS BESAR PRAKTIKUM

Diajukan Kepada

Divisi Pendidikan dan Pelatihan

Lembaga Informasi dan Komunikasi

Universitas Muhammadiyah Malang

Disusun Oleh:

Defi Enggarini Nursanti

08320113

Disetujui oleh

Malang, 4 Januari 2011 Malang, 4 Januari 2011

Asisten I Asisten II

Ahmad Fajarisma Rokhis Rosyidi

Mengetahui,

Instruktur

Suwarno, ST

Page 3: laporan segitga pascal

LEMBAR PENGESAHAN

JUDUL : Implementasi Segitiga Pascal Pada Turbo Pascal

NAMA : Defi Enggarini Nursanti

NIM : 08320113

Disetujui oleh

Malang, 4 Januari 2011 Malang, 4 Januari 2011

Asisten I Asisten II

Ahmad Fajarisma Rokhis Rosyidi

Mengetahui,

Kepala Divisi

Instruktur Pendidikan Pelatihan

Suwarno, ST IR. M. Lukman, MT

Page 4: laporan segitga pascal

 

 

i

KATA PENGANTAR

Puji syukur ke hadirat Tuhan YME, karena atas limpahan rahmat serta

karunia-Nya saya dapat menyelesaikan laporan “Implementasi Segitiga Pascal

Pada Program Turbo Pascal”. Laporan ini disusun guna memenuhi tugas akhir

pada mata kuliah Bahasa Pemrograman I.

Ucapan terima kasih senantiasa kami haturkan kepada:

1. Bapak Suwarno selaku dosen pengampu mata kuliah Bahasa Pemrograman I

2. Mas Fajar dan Mas Rokhis yang telah memberikan bimbingan dan arahan

hingga terselesaikannya laporan ini

3. Orang tua saya yang telah membantu saya dengan doa

4. Teman-teman saya, serta pihak-pihak tertentu yang telah membantu saya

baik secara materiil maupun moril.

Laporan ini sudah barang tentu masih jauh dari kesempurnaan. Untuk itu,

kritik dan saran yang membangun senantiasa saya harapkan dari pembaca demi

sempurnanya laporan ini. Semoga laporan ini bermanfaat bagi mahasiswa

Fakultas Keguruan dan Ilmu Pendidikan khusunya, dan mahasiswa Universitas

Muhammadiyah Malang pada umumnya.

Malang, Januari 2011

Defi Enggarini N.

Page 5: laporan segitga pascal

 

 

ii

DAFTAR ISI

KATA PENGANTAR .......................................................................... i

DAFTAR ISI ......................................................................................... ii

BAB I : PENDAHULUAN

1.1 Latar Belakang ......................................................................... 1

1.2 Rumusan Masalah ..................................................................... 2

1.3 Manfaat dan Tujuan .................................................................. 2

1.4 Batasan Masalah ....................................................................... 3

BAB II : DASAR TEORI

2.1 Turbo Pascal .............................................................................. 4

2.2 Segitiga Pascal .......................................................................... 14

2.3 Statement For – to - do ............................................................. 15

2.4 Statement If – then – else .......................................................... 15

2.5 Statement Array ........................................................................ 16

BAB III : ALGORITMA DAN FLOWCHART

3.1 Algoritma Pada Program Segitiga Pascal ................................. 17

3.2 Flowchart Program .................................................................... 18

BAB IV : PROGRAM DAN PEMBAHASAN

4.1 Program ..................................................................................... 19

4.2 Analisis Program ....................................................................... 20

BAB V : PENUTUP

5.1 Kesimpulan ............................................................................... 24

5.2 Saran ......................................................................................... 24

DAFTAR PUSTAKA

LAMPIRAN

Page 6: laporan segitga pascal

 

 

1

BAB I

PENDAHULUAN

1.1 Latar Belakang

Tidak dapat dipungkiri bahwa perkembangan teknologi informasi tidak

pernah lepas dari peranan matematika. Matematika sangat berperan penting

bagi perkembangan program teknologi informasi dan komunikasi (TIK) atau

komputer. Ada banyak kontribusi yang telah disumbangkan matematika,

antara lain dalam perkembangan hardware dan software. Sebelum terciptanya

komputer, sebenarnya sudah ada ilmu yang mendasari perhitungan dalam

segala hal yaitu ilmu matematika. Kemudian dalam perkembangannya

matematika menjadi pendorong terbentuknya komputer, hal itu dibuktikan,

bahwa komputer berasal dari bahasa latin computare yang artinya

menghitung. Hal ini jelas memberi pandangan kepada kita bahwa matematika

erat kaitannya dengan ilmu komputer. Pada perkembangan selanjutnya

komputer diciptakan lebih kompleks, tidak hanya untuk menghitung tetapi

dapat digunakan untuk banyak tugas lainnya, namun tetap ada peran

matematika di dalamnya.

Matematika mempunyai peran yang sangat penting dalam kehidupan

sehari-hari, terutama pada zaman modern seperti sekarang ini, dimana

teknologi berkembang sangat cepat. Salah satunya yaitu perkembangan

Teknologi Informasi dan Komunikasi.

Dalam perkembangan teknologi informatika, matematika memberikan

sumbangsih tersendiri. Berbagai aplikasi dan program di komputer tidak lepas

dari penerapan aplikasi matematika, diantaranya adalah operasi Aljabar

Boolean, teori graf, matematika diskrit, logika simbolik, peluang dan

statistika. Teknologi yang semakin berkembang ini menunjukkan

perkembangan manusia dalam menerapkan aplikasi matematika dalam

mengembangkan bidang lain.

Page 7: laporan segitga pascal

 

 

2

Pada dasarnya computer adalah alat bantu untuk menyelesaikan

masalah. Dalam menyelesaikan suatu masalah dengan computer perlu

merumuskan langkah-langkah penyelesaiaan masalah dalam sekumpulan

instruksi. Sekumpulan instruksi yang dimengerti oleh computer disebut

dengan program. Agar program dapat dimengerti oleh computer program

harus ditulis dalam bahasa pemograman. Inilah yang disebut dengan bahasa

pemograman. Bahasa pemograman dibedakan menjadi bahasa tingkat

rendah(low level language):bahasa yang berorientasi ke mesin dan bahasa

tingkat tinggi(high level language) : bahasa yang berorientasi ke

manusia(seperti bahasa inggris).contoh bahasa pascal, bahasa C, dll.

Dengan berorientasi pada ilmu bahasa pemograman yang didapat pada

perkuliahan ,penulis mencoba membuat suatu program dengan judul segitiga

pascal dengan menggunakan bahasa pemrograman pascal. Segitiga pascal

merupakan suatu proses mencari faktor-faktor atau angka yang dibentuk dari

dua angka di atasnya. Segitiga membantu kita dalam hal menjabarkan hasil

perpangkatan dari sebuah variabel yang dikombinasikan dengan konstanta.

1.2 Rumusan Masalah

Berdasarkan uraian diatas maka rumusan masalah yang diangkat dalam

laporan praktikum Bahasa Pemrogaman I ini antara lain :

1. Bagaimana struktur program pascal berkaitan dengan mencari segitiga

pascal?

2. Bagaimana membuat algoritma berkaitan dengan mencari segitiga pascal?

3. Bagaimana membuat flowchart berkaitan dengan mencari segitiga pascal?

4. Bagaimana mencari segitiga pascal dengan menggunakan program turbo

pascal?

1.3 Manfaat dan Tujuan

1.3.1 Manfaat

Manfaat yang dapat diambil dari praktikum ini sebagi berikut :

1. Bagi Guru

Page 8: laporan segitga pascal

 

 

3

Selain sebagai salah satu referensi juga sebagai masukan barharga

bagi guru untuk meningkatkan pengajaran bahasa pemrograman dan

dalam pembelajaran matematika terutama pada materi segitiga

pascal.

2. Bagi Siswa

Untuk mempermudah siswa dalam mencari segitiga pascal.

3. Bagi penulis

Sebagai wahana aplikasi teori dan pembelajaran pada praktikum

bahasa pemrograman dan digunakan sebagai syarat untuk

memenuhi tugas besar praktikum Bahasa Pemograman I.

1.3.2 Tujuan

Tujuan dari penulisan laporan praktikum ini adalah untuk

menginformasikan kepada pembaca mengenai bahasa pascal dan

program tentang menyelesaikan perhitungan tentang segitiga pascal,

yang meliputi : sejarah perkembangan bahasa pascal, struktur program

pascal, cara penulisan program pascal terutaman tentang segitiga pascal.

Tidak hanya itu, diharapkan dengan adanya laporan ini dapat

menambah wawasan pembaca dalam dunia pendidikan khususnya

dalam dunia pemograman.

1.4 Batasan Masalah

Tugas ini dibatasi pada cara mencari segitiga pascal dalam

pembelajaran matematika yaitu cara mencari segitiga pascal dengan

menggunakan program bahasa pascal If…then…else, For...to...do, dan Array.

Page 9: laporan segitga pascal

 

 

4

BAB II

DASAR TEORI

2.1 Turbo Pascal

2.1.1 Bahasa Pascal

Pascal merupakan salah satu bahasa pemrograman tingkat

tinggi. Pemrograman tingkat tinggi menandakan bahwa Pascal banyak

menggunakan bahasa manusia dalam penulisan sintaksnya. Beberapa

bahasa pemrograman tingkat tinggi lainnya yang ada yaitu BASIC dan

DELPHI. Sedangkan bahasa pemrograman tingkat rendah yaitu bahasa

pemrograman yang masih banyak menggunakan tanda-tanda sehingga

bahasa ini cenderung lebih “kotor”. Beberapa bahasa pemrograman

tingkat rendah yang sering digunakan adalah C, C++ dan Java. Turbo

Pascal dan C merupakan program compiler. Compiler sendiri berarti

program yang menerjemahkan tulisan berupa kode program menjadi

bahasa mesin yang dapat dimengerti oleh komputer. Proses yang

dilakukan disebut compile atau compiling.

2.1.2 Sejarah Pascal

Pascal adalah bahasa pemrograman yang pertama kali di buat

oleh Profesor Niklaus Wirth, seorang anggota International Federation

of Information Processing (IFIP) pada tahun 1971. Dengan mengambil

nama dari matematikawan Perancis, Blaise Pascal, yang pertama kali

menciptakan mesin penghitung, Profesor Niklaus Wirth membuat

bahasa Pascal ini sebagai alat bantu untuk mengajarkan konsep

pemrograman komputer kepada mahasiswanya. Selain itu, Profesor

Niklaus Wirth membuat Pascal juga untuk melengkapi kekurangan-

kekurangan bahasa pemrograman yang ada pada saat itu.

2.1.3 Kelebihan dari bahasa pemrograman Pascal adalah:

Page 10: laporan segitga pascal

 

 

5

1. Tipe Data Standar, tipe-tipe data standar yang telah tersedia pada

kebanyakan bahasa pemrograman. Pascal memiliki tipe data

standar: boolean, integer, real, char, string

2. User defined Data Types, programmer dapat membuat tipe data

lain yang diturunkan dari tipe data standar

3. Strongly-typed, programmer harus menentukan tipe data dari suatu

variabel, dan variabel tersebut tidak dapat dipergunakan untuk

menyimpan tipe data selain dari format yang ditentukan

4. Terstruktur, memiliki sintaks yang memungkinkan penulisan

program dipecah menjadi fungsi-fungsi kecil (procedure dan

function) yang dapat dipergunakan berulang-ulang

5. Sederhana dan Ekspresif, memiliki struktur yang sederhana dan

sangat mendekati bahasa manusia (bahasa Inggris) sehingga mudah

dipelajari dan dipahami.

2.1.4 Prosedur pembuatan program pada Pascal

Beberapa langkah dalam proses pembuatan suatu program atau software :

1. Mendefinisikan masalah dan menganalisanya

Langkah awal yang harus dilakukan adalah mengidentifikasikan

masalah antara lain tujuan dari pembuatan program, parameter-

parameter yang digunakan, fasilitas apa saja yang akan disediakan

oleh program. Kemudian menentukan metode atau algoritma apa

yang akan diterapkan untuk menyelesaikan masalah tersebut dan

terakhir menentukan bahasa program yang digunakan untuk

pembuatan program.

2. Merealisasikan dengan langkah-langkah berikut :

Start

Page 11: laporan segitga pascal

 

 

6

Desain Algoritma & Flowchart

Menulis program

Test Kebenaran Program

Dokumentasi

Arsip

2.1.5 Struktur Program Pascal

Struktur dasar dalam pemrograman pascal :

PROGRAM NamaProgram (FileList);

CONST(*Deklarasi Konstanta*)

TYPE(*Deklarasi Type*)

VAR(*Deklarasi Variabel*)

(*Definisi SubProgram*)

BEGIN(*Statemen*)

END.

2.1.6 Komponen Bahasa Pascal

Jenis-jenis data pacal yang dikenal dalam bahasa pascal antara lain :

a. Jenis data sederhana

1. Jenis data standar, yaitu :

Integer

Real

Karakter

Boolean

2. Jenis data yang non standar (used defined), yaitu :

Enumerated

Sub-range

Page 12: laporan segitga pascal

 

 

7

b. Jenis data berstruktur, yaitu:

1. Jenis Data Pointer :

Array

Record

Set

File

2.1.6 Jenis Data Standart

2.1.6.1 Integer

Jenis data ini terdiri atas integer positif, integer negatif dan nol,

merupakan nilai bilangan bulat. Pada TURBO PASCAL jenis

data ini di bagi atas beberapa bagian, yaitu :

Tipe Ukuran memori (dalam byte)

Jangkauan nilai

BYTE 1 0..255

SHORTINT 1 -128..127

INTEGER 2 -32768..32767

WORD 2 0..65535

LONGINT 4 -2147483648..2147483647

Operator Integer terdiri atas : + , - , * , / , DIV dan MOD

Contoh :

VAR

Jumlah : byte;

BEGIN

Jumlah := 200;

WriteLn(‘Nilai JUMLAH = ‘,Jumlah);

END.

Hasilnya bila dijalankan : Nilai JUMLAH = 200

2.1.6.2 Real

Page 13: laporan segitga pascal

 

 

8

Penulisan untuk jenis data ini selalu menggunakan titik desimal.

Nilai konstanta numerik real menunjukkan nilai 10 pangkat.

Nilai konstanta numerik real menempati memori sebesar 6 byte.

Pada TURBO PASCAL, jenis data ini dibedakan atas :

Tipe Ukuran memori (dalam byte)

Jangkauan nilai Digit signifikan

SINGLE 4 1.5x10E-45 .. 3.4x10E38

7-8

DOUBLE 8 5.0x10E-324 .. 1.7x10E308

15-16

EXTENDED 10 1.9x10E-4951 .. 1.1x10E4932

19-20

COMP 8 -2E+63+1 .. 2E+63-1

19-20

Operator untuk jenis data ini terdiri atas : + , - , * dan /

2.1.6.3 Karakter

Yang dimaksud dengan jenis data ini adalah karakter tunggal

atau sebuah karakter yang ditulis diantara tanda petik tunggal,

seperti misalnya ‘A’,’a’,’!’,’5’ dsb. Dasarnya adalah ASCII

CHARACTER SET.

Misalnya : 032 menunjukkan karakter Blank.

033 ------------------------- !

048 ------------------------- 0

076 ------------------------- L, dst

2.1.6.4 String

Nilai data string merupakan urut-urutan dari karakter yang

terletak di antara tanda petik tunggal. Nilai data string akan

menenpati memori sebesar banyaknya karakter stringnya

ditambah dengan 1 byte. Bila panjang dari suatu string di dalam

deklarasi variabel tidak disebutkan, maka dianggap panjangnya

adalah 255 karakter.

Page 14: laporan segitga pascal

 

 

9

Contoh :

Var

Kampus : string[10];

Begin

Kampus := ‘UMM’;

Write(Kampus);

End.

2.1.6.5 Boolean

Jenis data ini mempunyai nilai TRUE atau FALSE.

Operator untuk jenis data ini adalah :

1. Logical Operator, yaitu : NOT, AND dan OR

2. Relational Operator, yaitu : >, <, >=, <=, <> dan =

2.1.6.6 Enumerated

Jenis data ini terdiri atas barisan identifier yang terurut dimana

setiap identifier tersebut dianggap sebagai suatu individual data

item (elemen data yang berdiri sendiri). Pada saat

mendeklarasikan jenis data ini kita harus menuliskan semua

elemen-elemennya.

Bentuk umum deklarasinya adalah :

TYPE nama = (data_item_1, data_item_2, … data_item_n);

Contoh :

TYPE hari = (sen,sel,rab,kam,jum,sab,ming);

TYPE warna = (red,blue,green,yellow,black,white);

Setelah jenis data ini dideklarasikan, maka selanjutnya kita

dapat mendeklarasikan suatu variabel yang berjenis data sama

dengan jenis data ini.

Misalnya :

TYPE nama_hari = (sen,sel,rab,kam,jum,sab,ming);

VAR libur : nama_hari;

Fungsi standar yang dapat digunakan pada jenis data ini adalah :

PRED, SUCC dan ORD

Page 15: laporan segitga pascal

 

 

10

TYPE nama = data_item_pertama .. data_item_terakhir;

Misalnya :

PRED (sel) = sen → Sebelum Selasa

SUCC (sen) = sel → Setelah Senin

ORD (sen) = 0 → Senin Hari ke 0

ORD (sel) = 1 → Selasa hari ke 1

2.1.6.7 Sub-range

Jenis data ini berupa range dari suatu kumpulan data yang

mempunyai urutan..

Bentuk umum deklarasinya adalah :

Contoh :

1. TYPE

jam_kuliah = 1 .. 10;

tanggal = 1 .. 31;

abjad = ‘A’ .. ‘Z’;

2. TYPE

bulan = (jan,feb,mar,apr,mei,jun,jul,agt,sep,okt,nov,des);

hari = (sen,sel,rab,kam,jum,sab,ming);

ata = agt .. jan;

pta = feb .. jun;

hari_kerja = sen .. jum;

2.1.7 Algoritma

Algoritma adalah urutan langkah-langkah logika yang

menyatakan suatu tugas dalam menyelesaikan suatu masalah atau

problem.

Algoritma adalah sebuah strategi yang mengandalkan

kemampuan berpikir secara logis untuk memecahkan suatu masalah.

Dalam algoritma, kita mulai dengan berpikir apa yang kita miliki

Page 16: laporan segitga pascal

 

 

11

(kekuatan dan kelemahan), selanjutnya kita atur langkah (aksi) agar

tujuan atau sasaran yang kita harapkan dapat terwujud.

Begitu juga dalam hal membuat program komputer. Ada

keterbatasan statemen yang disediakan, namun dengan keterbatasan itu

kita siasati langkah-langkah untuk mencapai hasil program yang sesuai

dengan keinginan. Misalnya di dalam bahasa pemrograman tidak ada

fungsi/prosedur bawaan yang mengkonversi nilai nominal mata uang

menjadi bentuk terbilang. Dengan menggunakan strategi/algoritma kita

dapat memecahkan persoalan tersebut dan dapat membuat programnya.

Namun demikian, awal pembuatan algoritma tidak perlu

memperhatikan statemen yang ada di suatu bahasa pemrograman karena

algoritma bersifat umum.

Kriteria dari suatu algoritma :

Input : algoritma dapat memilik nol atau lebih inputan dari luar.

Instruksi : sintaks (cara pengkodean) sesuai dengan bahasa

pemrograman yang dipakai dan mengandung komponen input,

output, proses, seleksi, dan perulangan yang menugaskan computer

untuk mengeksekusi suatu perintah tertentu.

Output : algoritma harus memiliki minimal satu buah

output/keluaran.

Definiteness (pasti): algoritma memiliki instruksi-instruksi yang

jelas dan tidak ambigu.

Finiteness (ada batas): algoritma harus memiliki titik berhenti

(stopping role).

Effectiveness (tepat dan efisien): algoritma sebisa mungkin harus

dapat dilaksanakan dan efektif.

2.1.8 Flowchart

Page 17: laporan segitga pascal

 

 

12

Untuk menggambarkan sebuah algoritma yang terstruktur

dan mudah dipahami oleh orang lain (khususnya programmer yang

bertugas mengimplementasikan program), maka dibutuhkan alat bantu

yang berbentuk Diagram Alir (Flowchart). Diagram alir ini akan

menunjukkan alur di dalam program secara logika. Diagram alir ini

selain dibutuhkan sebagai alat komunikasi, juga diperlukan sebagai

dokumentasi.

Flowchart ini merupakan langkah awal pembuatan program.

Dengan adanya flowchart urutan poses kegiatan menjadi lebih jelas.

Jika ada penambahan proses maka dapat dilakukan lebih mudah.

Setelah flowchart selesai disusun, selanjutnya pemrogram

(programmer) menerjemahkannya ke bentuk program dengan bahasa

pemrograman.

Dalam pembuatan flowchart tidak ada rumus atau patokan

yang bersifat mutlak. Karena flowchart merupakan gambaran hasil

pemikiran dalam menganalisa suatu masalah dengan komputer.

Sehingga flowchart yang dihasilkan dapat bervariasi antara satu

pemrogram dengan pemrogram lainnya.

Namun secara garis besar, setiap pengolahan selalu terdiri

dari tiga bagian utama, yaitu :

Input : berupa bahan mentah

Proses : pengolahan

Output : berupa bahan jadi.

Page 18: laporan segitga pascal

 

 

13

Simbol-simbol flowchart :

2.1.9 Pedoman Pembuatan Flowchart

Bila seorang analis dan programmer akan membuat flowchart, ada

beberapa petunjuk yang harus diperhatikan, seperti :

1. Flowchart digambarkan dari halaman atas ke bawah dan dari kiri ke

kanan.

2. Aktivitas yang digambarkan harus didefinisikan secara hati-hati dan

definisi ini harus dapat dimengerti oleh pembacanya.

3. Kapan aktivitas dimulai dan berakhir harus ditentukan secara jelas.

4. Setiap langkah dari aktivitas harus diuraikan dengan menggunakan

deskripsi kata kerja

5. Setiap langkah dari aktivitas harus berada pada urutan yang benar.

6. Lingkup dan range dari aktifitas yang sedang digambarkan harus

ditelusuri dengan hati-hati. Percabangan-percabangan yang

Page 19: laporan segitga pascal

 

 

14

memotong aktivitas yang sedang digambarkan tidak perlu

digambarkan pada flowchart yang sama. Simbol konektor harus

digunakan dan percabangannya diletakan pada halaman yang

terpisah atau hilangkan seluruhnya bila percabangannya tidak

berkaitan dengan sistem.

7. Gunakan simbol-simbol flowchart yang standar.

2.2 Segitiga Pascal

Segitiga Pascal adalah suatu aturan geometri pada koefisien binomial

dalam sebuah segitiga. Hal ini dinamai setelah matematikawan Perancis Blaise

Pascal.

Barisan segitiga Pascal secara konvensional disebutkan mulai dengan n

baris = 0 di bagian atas. Masukan dalam setiap baris diberi nomor dari awal

kiri dengan k = 0 dan biasanya cenderung relatif terhadap angka-angka dalam

baris yang berdekatan. Sebuah konstruksi sederhana dari hasil segitiga dengan

cara sebagai berikut.

Pada baris 0, hanya menulis nomor 1. Kemudian, untuk membentuk

elemen-elemen baris berikut, tambahkan nomor secara langsung di atas dan ke

kiri dengan nomor langsung atas dan ke kanan untuk menemukan nilai baru.

Jika salah satu nomor ke kanan atau kiri tidak ada, pengganti nol di tempatnya.

Sebagai contoh, angka pertama pada baris pertama adalah 0 + 1 = 1,

sedangkan angka 1 dan 3 di baris ketiga ditambahkan untuk menghasilkan

nomor 4 di baris keempat.

Page 20: laporan segitga pascal

 

 

15

2.3 Statement FOR … TO… DO

Statement FOR digunakan untuk melakukan pengulangan eksekusi terhadap

suatu pernyata. Pengendalian pengulangan ini dilakukan oleh <variable>

dengan jumlah pengulangan ditentukan oleh <nilai awal> dan <nilai akhir>.

For … to … digunakan untuk pengulangan secara menaik (ascending).

Bentuk Perulangan For – to – do :

FOR <nilai awal> TO <nilai akhir> DO

BEGIN <proses /code program yang diulang>;

END.

2.4 Statement IF…THEN…ELSE

Statement ini merupakan statement bersyarat yang akan mengeksekusi

pernyataan dibawahnya apabila syarat logika yang diberikan memenuhi.

Bentuk statement ini adalah:

IF<syarat logika> THEN<pernyataan>

Atau

IF<syarat logika>THEN<pernyataan 1>ELSE<pernyataan 2>

Page 21: laporan segitga pascal

 

 

16

2.5 Array

Array adalah variabel yang dapat menyimpan lebih dari satu nilai sejenis.

Terdapat dua bagian penting yaitu elemen array yang merupakan nilai dan

indeks array yang merupakan nilai urut untuk mengakses nilai pada array.

Berikut ini contoh array A dengan 10 buah elemen tiap elemen memiliki nilai

antara 10 hingga 100.

Deklarasi Array :

Array dideklarasikan pada bagian deklarasi. Deklarasi umum dari array adalah

NamaArray : array [ IndeksAwal.. IndeksAkhir] of tipe_data;

A[1] A[2] A[3] A[4] A[5] A[6] A[7] A[8] A[9] A[10]1 2 3 4 5 6 7 8 9 10 10 20 30 40 50 60 70 80 90 100

Page 22: laporan segitga pascal

 

 

17

BAB III

ALGORITMA DAN FLOWCHART PROGRAM

3.1 Algoritma Pada Program Segitiga Pascal

Berdasarkan dasar teori yang telah dicantumkan, algoritma dari program

segitiga pascal adalah sebagai berikut :

1. Start

2. Deklarasikan variabel x (hasil) dalam array [0..10, 0..10] of integer dan i

(indeks satu), j (indeks dua), n (jumlah baris) dalam integer.

3. Input n (jumlah baris)

4. Untuk i = 1 sampai dengan n lakukan langkah 5

5. Untuk j = 1 sampai dengan i lakukan langkah 6

6. Untuk j = 1 maka lakukan proses x [i, j] = 1, jika j = 1 maka lakukan

proses x [i, j] = 1, jika tidak memenuhi kedua kondisi lakukan langkah 7

7. Untuk i = 1 sampai n dan j = 1 sampai i lakukan proses x [i, j] = x [i – 1, j]

+ x [i – 1, j – 1]

8. Dari langkah 7 tampilkan atau cetak x [i, j]

9. Kemudian untuk i = 1 sampai n dan untuk j = 1 sampai i tampilankan atau

cetak lagi x [i, j]

10. Jika ingin mengulang ke program awal maka ketik ‘Y’ atau ’y’ untuk Ya

11. Dari langkah 10, jika tidak ingin mengulang maka ketik ‘N’ untuk Tidak

dan cetak Matuuuur Nuwuuuun

12. End.

Page 23: laporan segitga pascal

 

 

18

3.2 Flowchart Pada Program Segitiga Pascal

Page 24: laporan segitga pascal

 

 

19

BAB IV

PROGRAM DAN ANALISIS PROGRAM

4.1 Program

Berikut ini akan dipaparkan program Pascal tentang implementasi segitiga

pascal.

program segitiga_pascal;

uses wincrt;

label

48;

var

x:array [1..100,1..100] of integer;

i,j,n:integer;

pilih:char;

begin

48:

clrscr;

gotoxy(30,2);writeln('Menentukan Segitiga Pascal');

writeln;

writeln;

write('Masukkan Jumlah Baris : ');readln(n);

for i:=1 to n do

for j:=1 to i do

begin

if j=1 then x[i,j]:=1

Page 25: laporan segitga pascal

 

 

20

else

if j=i then x[i,j]:=1

else

x[i,j]:=x[i-1,j]+x[i-1,j-1];

end;

for i:=1 to n do

begin

gotoxy(40-3*i,7+i);

for j:=1 to i do

write(x[i,j]:6);

end;

writeln;

writeln;

writeln;

writeln;

write('Apakah Anda Ingin Kembali? ');readln(pilih);

if (pilih = 'Y') or (pilih = 'y') then

goto 48

else

gotoxy(100,22);writeln(' -------------------^.^Matuuuur Nuwuuuuun ^.^-------------------- ');

end.

4.2 Analisa Program

program segitiga_pascal;

Kepala Program

uses wincrt;

Page 26: laporan segitga pascal

 

 

21

Kepala program berisi judul program dan uses wincrt yang merupakan unit

yang digunakan dalam program. Memakai wincrt karena menggunkan PC

windows.

var

x:array [1..100,1..100] of integer;

i,j,n:integer; Variabel Program

pilih:char;

Variabel Program adalah bagian dimana kita mendefinisikan variable yang

akan digunakan. Variabel yang digunakan antara lain :

1. x (hasil) menggunakan didefinisikan sebagai array [1..100, 1..100] of

integer. Menggunakan array karena hasil pada segitiga pascal memiliki

ideks seperti matriks. Integer adalah bilangan bulat.

2. i (indeks awal), j (indeks akhir), dan n (banyak baris) menggunakan

integer.

3. Pilih menggunakan char karena pada saat menjalankan program,

pengguna cukup mengetikkan huruf yang disediakan.

Main Programnya adalah sebagai berikut :

begin

48:

clrscr;

gotoxy(30,2);writeln('Menentukan Segitiga Pascal');

writeln;

writeln;

write('Masukkan Jumlah Baris : ');readln(n);

for i:=1 to n do

for j:=1 to i do

begin

Page 27: laporan segitga pascal

 

 

22

if j=1 then x[i,j]:=1

else

if j=i then x[i,j]:=1

else

x[i,j]:=x[i-1,j]+x[i-1,j-1];

end;

for i:=1 to n do

begin

gotoxy(40-3*i,7+i);

for j:=1 to i do

write(x[i,j]:6);

end;

writeln;

writeln;

writeln;

writeln;

write('Apakah Anda Ingin Kembali? ');readln(pilih);

if (pilih = 'Y') or (pilih = 'y') then

goto 48

else

gotoxy(100,22);writeln(' -------------------^.^Matuuuur Nuwuuuuun ^.^-------------------- ');

end.

Pada main program berisi perintah-perintah yang digunakan untuk

menghasilkan program segitiga pascal. Pada program tersebut Begin

merupakan setatement awal yang digunakan dalam pembuatan program dan

selalu diakhiri dengan end. Untuk writeln fungsinya sebagai pencetak kalimat

yang akan ditampilkan pada output. Sedangkan readln fungsinya

Page 28: laporan segitga pascal

 

 

23

menerjemahkan atau membaca writeln. Karena writeln berupa kalimat, maka

readln akan membaca writeln sesuai dengan variabel yang kita buat.

Untuk memberikan judul pada output program, maka terlebih dahulu

mengetikkan “Menentukan Segitiga Pascal”. Agar tulisan berada ditengah

halaman output, maka digunakan gotoxy dengan x = 30 dan y = 2.

Langkah selanjutnya masukkan baris yang diinginkan (n). Setelah n

dimasukkan maka akan dilakukan perintah perulangan yang menggunakan

for…to…do. Yang pertama diulang untuk i = 1 sampai n dan yang kedua

diulang untuk j = 1 sampai i.

Setelah melakukan perulangan, ketikkan perintah pemilihan. Pada program

ini pemilihan yang digunakan adalah if…then…else. Jika kondisi pertama ( j

= 1) benar, maka lakukan proses x[i, j] = 1. Jika kondisi pertama salah, maka

lakukan kondisi kedua ( j = 1). Jika kondisi kedua bernilai benar maka lakukan

proses x[i, j] = 1. Dan jika pada kondisi kedua salah maka lakukan proses x [i,

j] = x [i-1, j] + x [i-1, j-1]. Setelah semua kondisi terpenuhi, lakukan perintah

perulangan lagi seperti peritah perulangan sebelumnya.

var

x:array [1..100,1..100] of integer;

i,j,n:integer;

pilih:char;

label

48;

Program diatas digunakan sebagai pendefinisian untuk pemanggilan

program. Pada baris pertama yaitu var digunakan untuk menyatakan type

data yang berbentuk huruf dan angka. Label yaitu untuk melakukan

perulangan pada daftar menu yang ditampilkan, dengan definisi 48 adalah

daftar menu yag akan diulang.

Page 29: laporan segitga pascal

 

 

24

BAB V

PENUTUP

5.1 Kesimpulan

Pascal merupakan salah satu bahasa pemrograman tingkat tinggi.

Pemrograman tingkat tinggi menandakan bahwa Pascal banyak menggunakan

bahasa manusia dalam penulisan sintaksnya. Adapun ketentuan sebelum

membuat program:

1. Mendefinisikan masalah dan menganalisanya

2. Membuat Algoritma & Flowchart

3. Menulis program

4. Test Kebenaran Program

5. Dokumentasi

5.2 Saran

Penulis berharap dengan adanya laporan yang berjudul implementasi segitiga

pascal pada program turbo pascal ini dapat mempermudah dalam proses

pembelajaran. Sehingga mampu menjadi referensi bagi pembaca pada

umumnya.

Page 30: laporan segitga pascal

 

 

25

DAFTAR PUSTAKA

1. Diakses pada 10 Desember 2010. Sejarah Turbo Pascal

(http://id.wikipedia.org/wiki/Turbo_Pascal)

2. Diakses pada 10 Desember 2010. Struktur Program Turbo Pascal

(http://blogv3.wordpress.com/2009/02/06/struktur-program-turbo-pascal/)

3. Diakses pada 10 Desember 2010. Pengertian Algoritma

(http://frandy.blog.binusian.org/2009/09/25/pengertian-algoritma/) 4. Diakses pada 10 Desember 2010. Rangkuman Materi Turbo Pascal

http://www.scribd.com/doc/27367932/Rangkuman-Materi-Turbo-Pascal 5. Edy Santoso, S.Si, M.Kom. 2010. Turbo Pascal For Windows Modul

Praktikum

6. Diakses pada 10 Desember 2010. Pengertian Flowchart

(http://www.slideshare.net/Mrirfan/flowchart-3191144)

Page 31: laporan segitga pascal

 

 

26

LAMPIRAN

1. Program

program segitiga_pascal;

uses wincrt;

var

x:array [1..100,1..100] of integer;

i,j,n:integer;

pilih:char;

label

48;

begin

48:

clrscr;

gotoxy(30,2);writeln('Menentukan Segitiga Pascal');

writeln;

writeln;

write('Masukkan Jumlah Baris : ');readln(n);

Page 32: laporan segitga pascal

 

 

27

for i:=1 to n do

for j:=1 to i do

begin

if j=1 then x[i,j]:=1

else

if j=i then x[i,j]:=1

else

x[i,j]:=x[i-1,j]+x[i-1,j-1];

end;

for i:=1 to n do

begin

gotoxy(40-3*i,7+i);

for j:=1 to i do

write(x[i,j]:6);

end;

writeln;

writeln;

writeln;

writeln;

Page 33: laporan segitga pascal

 

 

28

write('Apakah Anda Ingin Kembali [Y/N]? ');readln(pilih);

if (pilih = 'Y') or (pilih = 'y') then

goto 48

else

gotoxy(100,22);writeln(' -------------------^.^Matuuuur Nuwuuuuun

^.^-------------------- ');

end.

2. Tampilan Awal

3. Masukkan n = 2

Page 34: laporan segitga pascal

 

 

29

4. Lakukan Perulangan Program

5. Perulangan Kembali ke awal program

Page 35: laporan segitga pascal

 

 

30

6. Tidak ingin mengulang