Anda di halaman 1dari 26

Bagian 1: Pemodelan, Komputer, dan Analisis Kesalahan

1
BAGIAN 1
PEMODELAN, KOMPUTER, DAN ANALISIS KESALAHAN



BAB 1 PERKENALAN KOMPUTER

Perlihatkan: contoh abascus (sempoa), slide rule, punch card (kartu komputer),
motherboard, hard disk drive, floppy disk drive, disket ukuran kecil dan besar, Q150,
CD Rom, memory stick, microfilm, buku Apple II, template flowchart, dll.

KOMPUTER: Alat elektronik yang menerima input, memproses data input dengan
melakukan perhitungan, dan memberikan keluaran yang mungkin berupa data angka,
grafik atau suara.

Agar sebuah komputer dapat bekerja, dibutuhkan: hardware (komputernya), software
(programnya), dan brainware (penggunanya).

Komentar tentang komputer:
a. Yang pintar adalah yang membuat dan menggunakannya, bukan komputernya
b. Komputer hanya melakukan yang diperintahkan dengan cepat: garbage in, garbage
out
c. Belum pernah dalam sejarah manusia, sesuatu dapat menghasilkan sedemikian
banyak hasil yang tidak berguna dalam tempo yang sedemikian singkatnya.

Jenis-jenis komputer:
a. Super computer
b. Mainframe
c. Mini computer
d. Micro computer
e. Personal computer
f. Desktop computer
g. Laptop computer
h. Palm top computer
i. Personal Digital Assistant (PDA)
j. Programmable calculator
k. Server
l. Workstation
m. Dll.

Perangkat Keras (Hardware) komputer terdiri dari:
a. Input/Output
b. Central Processing Unit (CPU)
c. Memory




CPU
I/O

MEMORY
Bagian 1: Pemodelan, Komputer, dan Analisis Kesalahan

2
Perangkat-perangkat keras ini dihubungkan melalui konektor yang dapat berupa jalur di
mother board, kabel tipis (flat cable), dan lain-lain yang disebut sebagai BUS. Bus
mengalirkan informasi alamat, data, dan kontrol sekaligus 8, 16, 32 atau 64 bit.

Masukan (Input) terdiri dari:
a. Keyboard (papan ketik): 84/101/104(Windows keys)
b. Mouse/track ball
c. Touch screen: contoh: ATM
d. Pen (stylus)
e. MICR (Magnetic Ink Character Recognition): di atas cek
f. Bar Code: seperti di label barang
g. OCR (Optical Character Recognition)
h. Sensor: masuk melalui kartu akuisisi data atau port serial/parallel
i. Kamera
j. Suara

Selain itu, input yang otomatis dapat berupa:
a. Tape, disket, catridge (Q150), CD-ROM
b. Modem


Keluaran (Output) terdiri dari:
a. Hard copy:
1. Impact printer (dot matrix dan line printer)
2. Non impact printer (inkjet printer, thermal dan electrostatic, thermal transfer,
magnetic, laser)
3. Microfilm atau microfiche
4. Typesetter
5. Plotter
b. Tape, disket, harddisk, catridge, memory stick, CD-ROM
c. Modem
d. Softcopy:
1. CRT (Cathode Ray Tube)
2. Flat panel (LCD/Plasma)
3. Suara


Jenis-jenis monitor yang umum berdasarkan kualitas tampilan:
a. Monochrome (satu warna: hitam, hijau atau amber)
b. CGA: Color Graphic Adapter
c. EGA: Enhanced Graphic Adapter
d. VGA: Video Graphic Array
e. Super VGA
f. XGA


CPU terdiri dari (computer architecture):
a. Arithmetic and Logic Unit (ALU): untuk melakukan perhitungan tambah, kurang
bagi, kali, and, or, complement, dll.
b. Register:
Bagian 1: Pemodelan, Komputer, dan Analisis Kesalahan

3
1. Memory Address Register (MAR)
2. Memory Data Register (MDR):
3. Program Counter (PC): berisi alamat memory dimana instruksi berikutnya
berada
4. Status Register (SR): Condition Codes atau Flags: sejumlah bits yang
menyatakan hasil dari operasi sebelumnya yang dapat menyatakan overflow
(V), carry out (C), negatif (N), nol (Z), extended (X), priority, dll.
5. Instruction Register (IR): berisi instruksi yang tengah dilakukan, tidak terlihat
oleh programmer
6. Stack pointer
c. Control: bertanggungjawab terhadap semua yang dilakukan CPU
d. Clock (timer): menentukan kecepatan proses/perhitungan.
e. Bus: konektor/kabel antara hardware
f. Dan lain-lain

Memory terdiri dari:
a. Random Access Memory (RAM): Memory yang ada hanya bila ada catu daya (flash
memory)
b. Read Only Memory (ROM): Memory yang tetap ada walaupun tidak ada sumber
daya (disket, hardisk, tape, catridge, memory stick, CD, dan lain-lain)
Memory dapat berisikan program maupun data.

Memory dalam DOS di PC mempunyai beberapa jenis (sistem baru tidak
membedakan lagi hal ini):
a. Base/Conventional Memory: 0-640 KB
b. UMA: Upper Memory Area: 640 KB sampai 1 MB
c. Extended Memory: memory di atas 1 MB (memory tambahan)
d. Expanded Memory: seperti Extended Memory, tetapi menggunakan satuan Page
Frame yang terletak pada UMA

Media Penyimpan Data:
a. Floppy Disk (disket): portable, lunak
Jenis-jenis disket yang umum:
5,25" Double Density: kapasitas 360 KB
5,25" High Density: kapasitas: 1,2 MB
3,5" Double Density: kapasitas: 720 KB
3,5" High Density: kapasitas: 1,44 MB
Dahulu ada yang Single Sided dan Single Density. Sekarang ada yang lebih besar
dari 1,44 MB.
b. Harddisk: terpasang di dalam komputer, keras. Kapasitas orde MB dan GB.
c. Memory stick.

Perangkat lunak (Software) terdiri dari:
a. Sistem: (Operating System (OS) dan Bahasa Pemrogaman)
b. Aplikasi: (Umum dan Khusus)

Beberapa Operating System:
a. Microsoft Windows Vista
b. Microsoft Windows XP
c. Microsoft Windows 98
Bagian 1: Pemodelan, Komputer, dan Analisis Kesalahan

4
d. DOS (Disc Operating System)
e. Linux
f. Leopard

Beberapa bahasa perangkat lunak komputer:
a. BASIC: Beginners All-purpose Symbolic Instruction Code: bahasa dasar yang
mudah digunakan. Versi: Visual Basic, QBasic, dll.
b. FORTRAN: FORmula TRANslator: umum digunakan untuk perhitungan
engineering.
c. PASCAL: umum digunakan untuk IF karena merupakan program pertama yang
terstruktur. Versi: Borlan Pascal, Delphi, dll.
d. COBOL: COmmon Business Oriented Language: umum digunakan untuk aplikasi
data processing komersial.
e. ADA: umum digunakan di departemen pertahanan AS.
f. C: umum digunakan karena mudah untuk berbeda jenis mesin. Versi: C++, dll.
g. Assembly Language: Bahasa tingkat rendah, relatif sulit untuk menggunakannya.
h. Matlab
i. Scilab
j. Dll.

Besar informasi:
a. BIT (BInary digiT): satu digit yang dapat berupa 1 atau 0
b. BYTE: 8 bit
c. WORD: 16 bit
d. LONG WORD: 32 bit

Data dapat ditulis dalam bentuk:
a. Biner: basis 2 (0 atau 1)
b. Oktal: basis 8 (0 sampai 7)
c. Heksadesimal: basis 16 (0 sampai 9 dan A sampai F)
d. Desimal: basis 10 (0 sampai 9): karena manusia berjari 10
Konversi dari satu jenis representasi data ke jenis lainnya dapat dilakukan.

Langkah-langkah pemecahan masalah:
a. Formulasi masalah
b. Mencari jawaban
c. Mengintepretasi data

Sebelum komputer digunakan, mencari jawaban dengan menggunakan persamaan
matematika akan menyita waktu yang paling banyak. Sementara itu, formulasi masalah
hanya menjelaskan hukum-hukum fundamental saja dan intepretasi data terkadang
tidak dimungkinkan karena waktu kurang.
Setelah ada komputer, tahap b mencari mudah dan cepat, sehingga waktu dapat
dialokasikan untuk memformulasikan masalah dengan lebih akurat dan untuk
mengintepretasi data sehingga diperoleh analisis yang tajam dan matang.


Faktor-faktor yang harus diperhitungkan pada pemrogaman:
a. Waktu memprogram
b. Waktu mencari kesalahan (debugging)
Bagian 1: Pemodelan, Komputer, dan Analisis Kesalahan

5
c. Kecepatan perhitungan
d. Ukuran program dan data
e. Fleksibilitas dan ekspandibilitas
f. Portability ke komputer lain
g. Kejelasan program
h. Dokumentasi program

Bagian 1: Pemodelan, Komputer, dan Analisis Kesalahan

6
BAB 2 PERKENALAN PROGRAMMING

Seperti yang telah dijelaskan sebelumnya, beberapa bahasa programming adalah:
a. BASIC: Beginners All-purpose Symbolic Instruction Code: bahasa dasar yang
mudah digunakan. Ditemukan di tahun 1960an oleh John Kemeny dan Thomas
Kurts dari Darmouth College. Contoh: Qbasic (Quick Basic), BASIC, GWBASIC,
Virtual Basic, Microsoft Basic, dll. Tidak mendukung subroutine sebaik
FORTRAN.
b. FORTRAN: FORmula TRANslator: umum digunakan untuk perhitungan
engineering. Diperkenalkan IBM di tahun 1957. Ketelitian tinggi. Mudah dalam
membuat subroutine. Harus dicompile sehingga lambat untuk mengembangkan
program tersebut. Grafik tidak didukung penuh. Contoh: FORTRAN 77, Microsoft
FORTRAN, dll.
c. PASCAL: umum digunakan untuk Teknik Informatika karena merupakan program
pertama yang berstruktur. Mendukung grafik dengan baik. Contoh: Turbo Pascal,
Borland Pascal, Delphi, dll..
d. COBOL: COmmon Business Oriented Language: umum digunakan untuk aplikasi
data processing komersial.
e. ADA: umum digunakan di departemen pertahanan AS.
f. C: umum digunakan karena mudah untuk berbeda jenis mesin. Contoh: C++, dll.
g. Assembly Language: Bahasa tingkat rendah, relatif sulit untuk menggunakannya.
h. Matlab: Matrix Laboratory, buatan Mathworks, Inc.
i. Scilab: Versi open source dari Matlab.
j. Dll.

Dalam kuliah ini kita akan menggunakan Quick Basic dan/atau Scilab karena bahasa
ini cukup sederhana tetapi cukup powerful.

Program Komputer: sekumpulan instruksi yang membuat komputer melakukan suatu
pekerjaan.

Pseudocode: kalimat-kalimat umum seperti kode program. Lebih mudah untuk
digunakan membuat program daripada diagram alir.

Langkah-langkah membuat program:
a. Merencanakan algoritma program dengan diagram alir
b. Menulis program dimulai dengan pseudocode.
c. Mencari kesalahan (debugging) dan mengetes program
d. Menulis dokumentasi (remark/comment)
e. Menyimpan dan merawat program

Beberapa saran:
Program komputer sebaiknya dibuat dalam sistem modular atau yang disebut
subprogram atau subroutine. Dengan cara ini pembuatan dapat dibuat bertahap
oleh beberapa orang yang berbeda sehingga program akan mudah untuk dibuat dan
dimengerti. Subroutine ini akan dipanggil oleh program utama (Main Program),
bila mana diperlukan dan dapat berulang-ulang.
Program sebaiknya dirancang sebagai top-down yang artinya program dibuat
dengan beberapa kalimat yang umum dan kemudian kalimat-kalimat ini dipecahkan
Bagian 1: Pemodelan, Komputer, dan Analisis Kesalahan

7
dalam bentuk pecahan yang dapat diatasi sehingga tidak ada yang kurang.
Contohnya, sebaiknya kita menulis daftar isi dahulu sebelum menulis tugas akhir.
Jenis bahasa pemrograman yang digunakan sekarang pada umumnya merupakan
program yang berstruktur (structured programming) sehingga program tersebut
mudah untuk dimengerti, dibetulkan dan diubah. Peraturan program yang
berstruktur ada di sub bab 2.4.2.
Program yang tidak berstruktur mempunyai perintah GO TO. Dimana setelah
perintah ini, komputer harus menuju alamat GOTO dan melanjutkan perhitungan di
sana. Bila program sudah panjang, maka program yang menggunakan perintah ini
akan sangat sulit untuk dimengerti.

CARA MERANCANG ALGORITMA PROGRAM :
Dengan merancang algoritma program, umumnya program akan lebih terstruktur dan
mudah untuk dimengerti.
Algoritma adalah langkah-langkas logis yang bertahap untuk menyelesaikan sesuatu.
Syarat sebuah algoritma adalah:
a. Setiap langkah sudah tertentu dan pasti.
b. Proses harus berhenti maksimum setelah jumlah langkah yang telah ditentukan.
c. Algortima harus umum untuk mengatasi kontigensi.

Representasi grafis sebuah algoritma disebut Diagram Alir (Flowchart). Diagram alir
terdiri dari beberapa blok yang dihubungkan oleh panah-panah dimana simbol setiap
balok menyatakan suatu jenis proses tertentu dan panah menyatakan aliran pekerjaan
yang harus dilakukan. Diagram alir dapat dibuat umum atau rinci.

Simbol-simbol Diagram Alir (lihat/gunakan template, atau gunakan software Visio):
a. Terminal: Mulai/Stop
b. Proses
c. Input/Output
d. Pilihan
e. Konektor dalam satu halaman
f. Konektor dalam halaman yang berbeda
g. Komentar
h. Arah aliran
i. Pekerjaan manual
j. Dokumen (printout)

Logika komputer dapat berbentuk (lihat Gambar 2.12):
a. Tahapan (sequence)
b. Pilihan (selection): IF-ELSE-ENDIF
c. Pengulangan (repetition): DOWHILE/DOUNTIL-ENDDO


CARA MEMBUAT KODE PROGRAM (SOURCE CODE):
KODE PROGRAM adalah langkah-langkah instruksi program.

Program Terstruktur
Prinsip struktur: Struktur Statik (di lembaran kertas), harus berhubungan langsung
dengan Struktur Dinamik (menurut waktu) untuk perhitungan yang sama. Tidak boleh
loncat-loncat yang tidak terstruktur di dalam program.
Bagian 1: Pemodelan, Komputer, dan Analisis Kesalahan

8

Peraturan Program Terstruktur:
a. Seluruh program hanya terdiri dari logika: Tahapan, Pilihan dan Pengulangan.
b. Setiap struktur hanya punya satu masukan dan satu keluaran.
c. Perpindahan tanpa kondisi (GOTO) sebaiknya dihindari.
d. Struktur harus jelas diberikan keterangan dan dengan menggunakan indentasi,
spasi, dan baris kosong.

Perbandingan antara program yang tidak terstruktur dan yang terstruktur dapat dilihat
di Gambar 2.4. Dapat dilihat bahwa maksud, logika dan organisasi program yang tidak
terstruktur tidaklah jelas.

KONTROL KUALITAS PROGRAM:
Debugging kesalahan:
a. Kesalahan tulisan (syntax error): bisa otomatis dicek
b. Kesalahan sewaktu dijalankan (run-time error): misal: kurang input
c. Kesalahan logika (logic error): paling berbahaya, sulit debuggingnya, perlu
dites.

Cara mengatasinya: print out hasil tengah perhitungan; bagi program menjadi
subroutine; gunakan fasilitas lacak (trace); baca ulang dan coba pecahkan secara
manual atau dengan kalkulator.

Pengetesan program:
Pengetesan dengan menggunakan input dan output yang telah diketahui secara analitik
atau dengan metode lain. Bila program sudah jalan, belum tentu program itu "benar"!

Jenis pengetesan:
a. Pengetesan modul: tes setiap subroutine
b. Pengetesan pengembangan: test setelah seluruh subroutine disatukan
c. Pengetesan seluruh sistem: test program dengan data typical, data aneh tapi
berlaku dan data yang tidak berlaku.
d. Pengetesan operasi: pengetesan oleh orang lain (versi beta).


DOKUMENTASI
Dokumentasi dalam:
a. Dalam program sertakan keterangan mengenai program, nama penulis, tanggal,
arti dari variabel, arti langkah yang digunakan, dan lain-lain.
b. Gunakan indentasi, spasi, pembagi bagian, dan lain-lain di dalam program.
c. Semua komentar akan membuat source code program tersebut menjadi sedikit
lebih panjang dan besar, akan tetapi keuntungannya sangat banyak. Selain itu,
setelah dicompile, komentar tersebut akan dibuang secara otomatis sehingga
tidak akan membuat file program menjadi besar.

Dokumentasi luar:
a. Dokumentasi luar adalah manual program yang dapat termasuk, teori dasar, cara
menggunakan program, daftar variabel, contoh pemakaian program, dan lain-
lain.
Bagian 1: Pemodelan, Komputer, dan Analisis Kesalahan

9
b. Selain itu, dokumen luar dapat pula merupakan komentar atau penjelasan
sewaktu hasil perhitungan dicetak.


PENYIMPANAN DAN PERAWATAN PROGRAM
Cara mensave file dan menyimpan disket
a. Simpanlah program anda dalam harddisk dan disket.
b. Bila program tersebut sangat berharga, buatlah beberapa duplikat program.
c. Cetaklah program anda bila perlu.
d. Jauhi kelembaban, magnet, panas/dingin, debu dari disket
Bagian 1: Pemodelan, Komputer, dan Analisis Kesalahan

10
SIMBOL-SIMBOL DIAGRAM ALIR

NO. SIMBOL ARTI
1.

PROCESS OR PROCESSING
2.

INPUT/OUTPUT
3.

DECISION
4.

PREDEFINES PROCESS (EX.
SUBROUTINE)
5.

PREDEFINES PROCESS (EX.
SUBROUTINE)
6.

TERMINAL OR TERMINATION
7.

CONNECTOR
8.

OFF-PAGE CONNECTOR
9.

COMMENTS OR ANNOTATIONS
10.

FLOW DIRECTIONS
11.

MANUAL OPERATION




Bagian 1: Pemodelan, Komputer, dan Analisis Kesalahan

11
PERKENALAN DENGAN QUICK BASIC DOS

File Quick Basic ada di c:\dos berupa file: qbasic.exe (190 kb) dan qbasic.hlp (128 kb).
Anda juga bisa membeli program qbasic yang profesional.

Cara menjalankan qbasic dari Windows 98? :
a. Klik Start
b. Klik Programs
c. Klik MS-DOS Prompt
d. Ketikkan qbasic bila dos prompt sudah di layar seperti: c:\windows>qbasic
e. Quick Basic versi DOS akan tampil seperti:

















f. Tekan <Enter> bila ingin melihat perkenalan mengenai QB (Survival Guide), atau
<Esc> bila ingin langsung membuat program.
g. Gunakan <Alt> untuk mengaktifkan menu bar, lalu tekan huruf yang menyala
(putih) untuk memilih menu. Atau gunakan mouse anda.
h. Gunakan Help (di kanan atas) bila perlu
i. Gunakan <Alt>-<Enter> untuk toggle antara full screen q basic atau partial screen
j. (Ketik exit untuk kembali ke Windows bila sudah exit dan dalam dos prompt)
k. Tuliskan program yang mudah. Contoh:
cls perhatikan program akan langsung mengubahnya menjadi CLS
(clear screen)
x=10 perhatikan program akan langsung menyisipkan spasi di sekitar =
y=15 perhatikan program akan langsung menyisipkan spasi di sekitar =
z=x+y perhatikan program akan langsung menyisipkan spasi di sekitar = dan +
print z
Lalu tekan <F5> untuk me-run program.
Quick Basic langsung akan ke dos prompt dan mencetak harga 25 di layar kosong.
Kembali ke Quick Basic dengan menekan <Esc>.
l. Gunakan <Help> lalu <Index> untuk melihat keyword apa yang anda dapat
gunakan dalam Quick Basic.
Help
Short cut
Layar
Immediate
Menu
Layar
Program
Bagian 1: Pemodelan, Komputer, dan Analisis Kesalahan
12
QUI CK BASI C KEYWORDS:

ABS Funct i on APPEND Keywor d
ABSOLUTE Keywor d AS Keywor d
ACCESS Keywor d ASC Funct i on
AND Oper at or ATN Funct i on
ANY Keywor d

BASE Keywor d BLOAD St at ement
Basi c Char act er Set Bool ean Oper at or s
BEEP St at ement BSAVE St at ement
BI NARY Keywor d

CALL St at ement COLOR St at ement
CALL ABSOLUTE St at ement COM St at ement
CASE Keywor d COMMON St at ement
CDBL Funct i on CONST St at ement
CHAI N St at ement COS Funct i on
CHDI R St at ement CSNG Funct i on
CHR$ Funct i on CSRLI N Funct i on
CI NT Funct i on CVD Funct i on
CI RCLE St at ement CVDMBF Funct i on
CLEAR St at ement CVI Funct i on
CLNG Funct i on CVL Funct i on
CLOSE St at ement CVS Funct i on
CLS St at ement CVSMBF Funct i on

DATA St at ement DEFLNG St at ement
Dat a Type Keywor ds DEFSNG St at ement
DATE$ Funct i on DEFSTR St at ement
DATE$ St at ement DI M St at ement
DECLARE St at ement DO. . . LOOP St at ement
DEF FN St at ement DOUBLE Keywor d
DEF SEG St at ement DRAWSt at ement
DEFDBL St at ement $DYNAMI C Met acommand
DEFI NT St at ement

ELSE Keywor d ERDEV Funct i on
ELSEI F Keywor d ERDEV$ Funct i on
END St at ement ERL Funct i on
ENVI RON St at ement ERR Funct i on
ENVI RON$ Funct i on ERROR St at ement
EOF Funct i on EXI T St at ement
EQV Oper at or EXP Funct i on
ERASE St at ement

FI ELD St at ement FOR. . . NEXT St at ement
FI LEATTR Funct i on FRE Funct i on
FI LES St at ement FREEFI LE Funct i on
FI X Funct i on FUNCTI ON St at ement

GET ( Fi l e I / O) St at ement GOSUB St at ement
GET ( Gr aphi cs) St at ement GOTO St at ement

HEX$ Funct i on

I F. . . THEN. . . ELSE St at ement I NSTR Funct i on
I MP Oper at or I NT Funct i on
I NKEY$ Funct i on I NTEGER Keywor d
I NP Funct i on I OCTL St at ement
I NPUT St at ement I OCTL$ Funct i on
Bagian 1: Pemodelan, Komputer, dan Analisis Kesalahan
13
I NPUT$ Funct i on I S Keywor d

KEY ( Assi gnment ) St at ement KI LL St at ement
KEY ( Event Tr appi ng) St at ement

LBOUND Funct i on LOCK. . . UNLOCK St at ement s
LCASE$ Funct i on LOF Funct i on
LEFT$ Funct i on LOG Funct i on
LEN Funct i on LONG Keywor d
LET St at ement LOOP Keywor d
LI NE ( Gr aphi cs) St at ement LPOS Funct i on
LI NE I NPUT St at ement LPRI NT St at ement
LI ST Keywor d LPRI NT USI NG St at ement
LOC Funct i on LSET St at ement
LOCATE St at ement LTRI M$ Funct i on

MI D$ Funct i on MKI $ Funct i on
MI D$ St at ement MKL$ Funct i on
MKD$ Funct i on MKS$ Funct i on
MKDI R St at ement MKSMBF$ Funct i on
MKDMBF$ Funct i on MOD Oper at or

NAME St at ement NOT Oper at or
NEXT Keywor d

OCT$ Funct i on ON TI MER St at ement
OFF Keywor d ON. . . GOSUB St at ement
ON COM St at ement ON. . . GOTO St at ement
ON ERROR St at ement OPEN St at ement
ON Keywor d OPEN COM St at ement
ON KEY St at ement OPTI ON BASE St at ement
ON PEN St at ement OR Oper at or
ON PLAY St at ement OUT St at ement
ON STRI G St at ement OUTPUT Keywor d

PAI NT St at ement POI NT Funct i on
PALETTE St at ement s POKE St at ement
PCOPY St at ement POS Funct i on
PEEK Funct i on PRESET St at ement
PEN Funct i on PRI NT St at ement
PEN St at ement PRI NT USI NG St at ement
PLAY Funct i on PSET St at ement
PLAY ( Musi c) St at ement PUT ( Fi l e I / O) St at ement
PLAY ( Event Tr appi ng) St at ement s PUT ( Gr aphi cs) St at ement
PMAP Funct i on

RANDOM Keywor d RETURN St at ement
RANDOMI ZE St at ement RI GHT$ Funct i on
READ St at ement RMDI R St at ement
REDI M St at ement RND Funct i on
REM St at ement RSET St at ement
RESET St at ement RTRI M$ Funct i on
RESTORE St at ement RUN St at ement
RESUME St at ement

SCREEN Funct i on SQR Funct i on
SCREEN St at ement STATI C St at ement
SEEK Funct i on $STATI C Met acommand
SEEK St at ement STEP Keywor d
SELECT CASE St at ement STI CK Funct i on
SGN Funct i on STOP St at ement
Bagian 1: Pemodelan, Komputer, dan Analisis Kesalahan
14
SHARED St at ement STR$ Funct i on
SHELL St at ement STRI G Funct i on
SI N Funct i on STRI G St at ement s
SI NGLE Keywor d STRI NG Keywor d
SLEEP St at ement STRI NG$ Funct i on
SOUND St at ement SUB St at ement
SPACE$ Funct i on SWAP St at ement
SPC Funct i on SYSTEM St at ement

TAB Funct i on TI MER St at ement s
TAN Funct i on TO Keywor d
THEN Keywor d TROFF St at ement
TI ME$ Funct i on TRON St at ement
TI ME$ St at ement TYPE St at ement
TI MER Funct i on

UBOUND Funct i on UNTI L Keywor d
UCASE$ Funct i on USI NG Keywor d
UNLOCK St at ement

VAL Funct i on VARSEG Funct i on
VARPTR Funct i on VI EWSt at ement
VARPTR$ Funct i on VI EWPRI NT St at ement

WAI T St at ement WI DTH St at ement s
WEND Keywor d WI NDOWSt at ement
WHI LE. . . WEND St at ement WRI TE St at ement

XOR Oper at or






















Bagian 1: Pemodelan, Komputer, dan Analisis Kesalahan
15

KONSTANTA (BILANGAN)
BILANGAN BULAT (INTEGER) EX. : 100, 16, -20
BILANGAN RIIL (BESARAN DESIMAL) EX. : 3.765, 1.54E3, 2.54D2

STRING (DERETAN KARAKTER ALFA-NUMERIK)

VARIABEL (NAMA DARI SUATU BILANGAN ATAU STRING)
VARIABEL INTEGER EX. I = 1!
VARIABEL PRESISI TUNGGAL EX. T1 = 2%, T2 = 1.25E3
VARIABEL PRESISI GANDA EX. D1 = 5#, D2 = 9.15D2
VARIABEL STRING EX. S$ = 17 AGUSTUS 45
VARIABEL BERSUSUN EX. A(10), B(5,5)

OPERATOR DAN RUMUS (EKSPRESI)
PEMANGKATAN (^)
PERKALIAN (*)
PEMBAGIAN (/)
PENJUMLAHAN (+)
PENGURANGAN (-)

PERNYATAAN PEMASUKAN DATA
LANGSUNG EX. : N=15, A = 1%, B=3%, C=5#
STATEMENT INPUT EX. : INPUT A, B, C
STATEMENT READ ... DATA EX. : READ A, B, C: DATA 3,5,1

PERNYATAAN KELUARAN DATA
STATEMENT PRINT EX. : PRINT A; B; C
STATEMENT WRITE EX. : WRITE A, B, C

BRANCHING AND LOOPING
OPERATOR PENGHUBUNG EX. : =, <>, <, <=, >, >=
STATEMENT IF - THEN EX. : IF D>0 THEN GOTO 100
STATEMENT IF - THEN - ELSE EX. : IF D>0 THEN GOTO 100
ELSE 200
STATEMENT FOR - TO ... NEXT EX. : FOR I = 1 TO 10
PRINT I; I^2
NEXT I

STATEMENT WHILE - WEND EX. : A=0 : I=0
WHILE I <=15
A=A+1
I=I+1
WEND
FUNCTION AND SUBROUTINE


Bagian 1: Pemodelan, Komputer, dan Analisis Kesalahan
16
BAB 3 PERKIRAAN DAN KESALAHAN
(APPROXIMATIONS AND ERRORS)

Analisis Numerik: mungkin menghasilkan perbedaan, yang disebut kesalahan
(error), bila dibandingkan dengan hasil analisis analitik.
Analisis Analitik: mungkin juga salah karena asumsi yang digunakan.

Akan dibahas:
Identifikasi kesalahan
Kuantifikasi kesalahan
Minimalisasi kesalahan

Dua kesalahan utama:
1. Kesalahan Pembulatan (Round-off Error): karena komputer hanya dapat
menuliskan angka dalam jumlah digit yang tertentu.
2. Kesalahan Pemotongan (Truncation Error): karena komputer menggunakan
perkiraan dalam menuliskan operasi matematik.

Kesalahan lain:
1. Blunder (Kesalahan Konyol)
2. Kesalahan Persamaan
3. Kesalahan Model
4. Ketidakpastian Data

3.1 ANGKA PENTING
Jumlah Angka yang Penting (Angka Berpengaruh atau Significant Figures):
jumlah digit yang dapat digunakan dengan pasti = jumlah digit yang pasti + satu digit
yang diperkirakan.
Contoh:
48,3 : 3 significant figures
87.324,45 : 7 significant figures
0,00001845 : 4 significant figures
45300 : 3, 4 atau 5 significant figures (tergantung nol
mana yang diyakinkan)

3.2 AKURASI DAN PRESISI (KETELITIAN DAN KETEPATAN):
a. Akurasi: bagaimana nilai yang dihitung/diukur mendekati harga yang sebenarnya.
b. Presisi: bagaimana harga yang dihitung/diukur dekat dari satu dengan lainnya.
Menyatakan: a. jumlah significant figures, dan
b. sebaran data yang berulang-ulang.

Ketidakakuratan (inaccuracy) atau bias: deviasi sistematik dari jawaban yang
benar.
Ketidakpresisian (imprecision) atau ketidakpastian (uncertainty): besarnya
sebaran.



Bagian 1: Pemodelan, Komputer, dan Analisis Kesalahan
17


Contoh:
a. Tidak akurat dan tidak presisi

b. Akurat tapi tidak presisi

c. Tidak akurat tapi presisi

d. Akurat dan presisi


3.3 KESALAHAN
Kesalahan Numerik: kesalahan karena menggunakan perkiraan dalam menyatakan
operasi atau menuliskan nilai matematika yang eksak.

Jenis-jenis Kesalahan Numerik:
1. Kesalahan Pembulatan (Round-off Error): karena komputer hanya dapat
menuliskan angka dalam jumlah digit yang tertentu.
2. Kesalahan Pemotongan (Truncation Error): karena komputer menggunakan
perkiraan dalam menuliskan operasi matematik.

Untuk keduanya: Nilai Sebenarnya = Perkiraan + Kesalahan.
Atau: Kesalahan Sebenarnya (E
t
) = Nilai Sebenarnya Perkiraan

Untuk meniadakan faktor besar nilai, persamaan diatas dapat dinormalisasi sebagai:

Persentase Sebenarnya Kesalahan Relatif:
Dalam praktek, nilai sebenarnya tidak ketahui (kecuali bila dapat dipecahkan secara
analitik). Oleh karena itu:
Persentase Perkiraan Kesalahan Relatif:

Bila melakukan iterasi:

Umumnya, tanda kesalahan tidak merupakan masalah, dan kesalahan hanya
diperkenankan bila lebih rendah dari batas toleransi yang ditentukan sebelumnya
(
s
). Jadi, iterasi atau perhitungan terus dilakukan hingga:
|
a
| <
s
Kriteria toleransi agar hasil benar hingga paling sedikit n significant figures:
Sebenarnya Nilai
Sebenarnya Kesalahan
Error) Relative Fractinal (True Relatif Kesalahan Sebenarnya Fraksi =
% 100
sebenarnya nilai
sebenarnya kesalahan

t
=
% 100
perkiraan nilai
perkiraan kesalahan

a
=
% 100
sekarang perkiraan
sebelumnya perkiraan - sekarang perkiraan

a
=
Bagian 1: Pemodelan, Komputer, dan Analisis Kesalahan
18

s
= (0,5 x 10
2-n
) %
3.4 KESALAHAN PEMBULATAN
Kesalahan pembulatan terjadi karena komputer hanya menyimpan jumlah significant
figures yang tertenti seperti untuk: , e, 7, dan lain-lain.

Komputer hanya mengenal binary digits (bits).
Satu unit dasar yang menyimpan informasi disebut word.

Sistem Penyajian Angka:
1. Sistem Desimal (base 10), karena kita punya 10 jari di tangan:
Angka: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
Contoh:
54321
10
= 5x10
4
+ 4x10
3
+ 3x10
2
+ 2x10
1
+ 1x10
0
= 54321
10

2. Sistem Biner (base 2):
Angka: 0, 1
Contoh:
10110
2
= 1x2
4
+ 0x2
3
+ 1x2
2
+ 1x2
1
+ 0x2
0
= 16 + 4 + 2 = 22
10
3. Sistem Oktal (base 8):
Angka: 0, 1, 2, 3, 4, 5, 6, 7
Contoh:
1234
8
= 1x8
3
+ 2x8
2
+ 3x8
1
+ 4x8
0
= 1x512 + 2x64 +3x8 + 4 = 668
10
4. Sistem Heksadesimal (base 16):
Angka: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F
Contoh:
2F4AD
16
= 2x16
4
+15x16
3
+ 4x16
2
+ 10x16
1
+13x16
0
= 2x65536 + 15x4096 +
4x256 +10x16 +13 = 193709
10


Base Pangkat: 0 1 2 3 4 5 6 7 8 9
0 Desimal 1 10 100 1.000 10.000 100.000 1.000.000 10.000.000 Dst.
2 Biner 1 2 4 8 16 32 64 128 256 512
8 Oktal 1 8 64 512 4.096 32.768 262.144 2.097.152 16.777.216 Dst.
16 Heksadesimal 1 16 256 4.096 65.536 1.048.576 16.777.216 Dst.


Penyajian Integer:
Beberapa metode dalam menyajikan integer:
a. Metode Besaran Bertanda (Signed Magnitude Methode):
Bit pertama sebuah word merupakan tanda: 0 bila positif, 1 bila negatif.
Untuk komputer 8 bit:
10101101
2
= (tanda -) + 0x2
6
+ 1x2
5
+ 0x2
4
+ 1x2
3
+1x2
2
+ 0x2
1
+ 1x2
0

= (tanda -) + 0 + 32 + 0 + 8 + 4 + 0 + 1 = - 45
10

Untuk komputer 16 bit:
Dapat disajikan angka: 1x2
14
+ 1 x2
13
+1x2
12
+ 1x2
11
+ 1x2
10
+1x2
9
+ 1x2
8
+ 1x2
7
+
1x2
6
+ 1x2
5
+1x2
4
+ 1x2
3
+ 1x2
2
+ 1x2
1
+ 1x2
0

= 32.767
10
= 2
15
1
Oleh karena itu, dapat disajikan angka dari 32767
10
hingga +32767
10
.
Tetapi 0
10
(1000000000000000
2
) diberikan ke 32768
10
. Oleh karena itu, dapat
disajikan angka 32768
10
hingga +32767
10
.
b. Twos Complement; lebih umum digunakan
Bagian 1: Pemodelan, Komputer, dan Analisis Kesalahan
19
c. Ones Complement

Penyajian Floating Point (angka dengan koma):
Angka = m x b
e

Dimana: m = mantissa (significand)
b = base dari sistem penomoran
e = eksponen (karaktersitik)
Contoh: 156,78 = 0,15678 x 10
3

Salah satu cara penyajian dalam sistem biner:

tanda eksponen bertanda mantissa

Mantissa biasanya dinormalisir bila ada nol di belakang koma.
Contoh: 0,023451
0,0234 dengan empat angka di belakang koma tetapi 3 significant figure.
Bila dinormalisasi, maka angka ini dapat menjadi: 0,2345 x 10
-1
, yang mempunyai
4 significant figures.

Oleh karena itu, karena normalisasi, maka harga mantissa harus berada dalam
jangkauan:
1
1 m
b
<
Dimana b = base. Bila base 10, m = 0,1 ~ 1, bila base 2, m = 0,5 ~ 1.

Karena mantissa hanya dapat terdiri dari beberapa significant figure, maka kesalahan
pembulatan akan terjadi.

Cara penulisan dengan floating number dapat membuat kita menulis angka di bawah
satu. Akan tetapi, cara ini mengambil banyak tempat dan proses perhitungan yang lama
daripada perhitungan dengan Integer.

Baca Contoh 3.4 dan Gambar 3.7 beserta penjelasannya.

Bagian 1: Pemodelan, Komputer, dan Analisis Kesalahan
20
BAB 4 KESALAHAN PEMOTONGAN DAN DERET TAYLOR


Kesalahan pemotongan terjadi karena komputer memperkirakan fungsi-fungsi
matematik.

4.1 DERET TAYLOR
f(x
i+1
) = f(x
i
) +
i i
x x x f
+1
1
( ) ( ) +
! 2
) (
11
xi f
(x
i+1
- x
i
)
2
+
3
1
111
) (
! 3
) (
i i
i
x x
x f

+
+ .... +
n
i i
i
x x
n
x n f
) (
!
) )( (
1

+
+ R
n

Sisa (Remainder):
1
1
) 1 (
) (
)! 1 (
) (
+
+
+

+
=
n
i i
n
n
x x
n
f
R



Bila h = x
i+1
x
i
= ukuran langkah (step size). Maka:

n
n i
n
i i
i i i
R h
n
x f
h
x f
h
x f
h x f x f x f + + + + + + =
+
!
) (
.....
! 3
) (
! 2
) (
) ( ) ( ) (
) (
3
3
2
' '
'
1


Dimana: ) (
)! 1 (
) (
) 1 ( ) 1 (
) 1 (
+ +
+
=
+
=
n n
n
n
h O h
n
f
R



Kesalahan pemotongan adalah dalam orde h
n+1
.
Artinya kesalahan dari Deret Taylor dapat dikontrol dengan menentukan ukuran
langkah.

Teorema Turunan Harga Rata-rata (Derivative Mean Value Theorem):
Bila anda fungsi f(x) dan turunan pertamanya yang kontinyu pada interval x
i
hingga
x
i+1
, maka akan ada paling sedikit satu titik pada fungsi yang mempunyai kemiringan
f() yang paralel dengan garis yang menghubungkan f(x
i
) dan f(x
i+1
), sehingga
kemiringan f() = R
o
/h. atau R
o
= f().h (orde nol).
Untuk orde satu:
'
2
1
( )
2!
f
R h

=
Menggunakan Deret Taylor untuk Mengestimasi Kesalahan Pemotongan.
Contoh:
Kecepatan parasut dalam Deret taylor:
n i i
i
i i i i i
R t t
t v
t t t v t v t v + + + + =
+ + +
.... ) (
! 2
) (
) )( ( ) ( ) (
2
1
' '
1
'
1


Potong persamaan setelah turunan pertama:
1 1
'
1
) )( ( ) ( ) ( R t t t v t v t v
i i i i i
+ + =
+ +

Atau:
i i i i
i i
i
t t
R
t t
t v t v
t v

=
+ +
+
1 1
1 '
) ( ) (
) (
Perkiraan orde pertama kesalahan pemotongan = ) (
1 i i
t t O
+

ukuran langkah
Bagian 1: Pemodelan, Komputer, dan Analisis Kesalahan
21
Turunan Numerik
Beda Hingga (Finite Divided Difference)
a. Beda Hingga Maju (Forward Difference)

' 1
1
1
( ) ( )
( ) ( )
i i
i i i
i i
f x f x
f x O x x
x x
+
+
+

= +


( )
i
f
O h
h

= +

b. Beda Hingga Mundur (Backward Difference)

h
f
h
x f x f
x f
i i i

=

=

) ( ) (
) (
1 '

) (h O
h
f
i
+

=

c. Beda Hingga Tengah (Centered Difference)

) (
2
) ( ) (
) (
2 1 1 '
h O
h
x f x f
x f
i i
+

=
+

Lebih Akurat

Beda hingga untuk turunan lebih lanjut, lihat Bab 23.





Bagian 1: Pemodelan, Komputer, dan Analisis Kesalahan
22
Contoh 4.4
Gunakanlah metode beda hingga maju dan mundur untuk O(h) serta metode beda
hingga tengah untuk O(h)
2
untuk mencari turunan pertama dari:
2 , 1 25 , 0 5 , 0 15 , 0 1 , 0 ) (
2 3 4
+ = x x x x x f
pada x = 0,5 dengan panjang langkah h = 0,5 , dan h = 0,25.

Jawab: nilai sebenarnya = -0,9125
Dengan menggunakan h = 0,5:
0
1
=
i
x 2 , 1 ) (
1
=
i
x f
5 , 0 =
i
x 925 , 0 ) ( =
i
x f
1
1, 0
i
x
+
= 2 , 0 ) (
1
=
+ i
x f

beda hingga maju
45 , 1
5 , 0
925 , 0 2 , 0
) 5 , 0 ( ' =

f % 9 , 58 =
t

beda hingga mundur :
55 , 0
5 , 0
2 , 1 925 , 0
) 5 , 0 ( ' =

f % 7 , 39 =
t

beda hingga tengah :
0 , 1
0 , 1
2 , 1 2 , 0
) 5 , 0 ( ' =

f % 6 , 9 =
t


Dengan mengurangi panjang langkah (h) menjadi 0,25, hasilnya:
25 , 0 ) (
1
=
i
x 10351563 , 1 ) (
1
=
i
x f
5 , 0 ) ( =
i
x 925 , 0 ) ( =
i
x f
75 , 0 ) (
1
=
i
x f 63632813 , 0 ) (
1
=
i
x f

beda hingga maju:
155 , 1
25 , 0
925 , 0 63632813 , 0
) 5 , 0 ( ' =

f % 5 , 26 =
t

beda hingga mundur:
714 , 0
25 , 0
10351563 , 1 925 , 0
) 5 , 0 ( ' =

f % 7 , 21 =
t

beda hingga tengah:
934 , 0
5 , 0
10351563 , 1 63632813 , 0
) 5 , 0 ( ' =

f % 36 , 2 =
t










Bagian 1: Pemodelan, Komputer, dan Analisis Kesalahan
23
4.2 PERAMBATAN KESALAHAN (ERROR PROPAGATION)
Untuk )
~
(x f , dan x
~
adalah perkiraan untuk x, maka )
~
( ) ( )
~
( x f x f x f = .
Fungsi dari satu variabel: Bila x
~
dekat x, dan )
~
(x f kontinu dan dapat diturunkan
maka : .... )
~
(
2
)
~
( ' '
)
~
( )
~
( ' )
~
( ) (
2
+ + + = x x
x f
x x x f x f x f
Atau )
~
( )
~
( ' )
~
( ) ( x x x f x f x f atau : )
~
( )
~
( ' )
~
( x x x f x f =

Jadi kesalahan dapat diperkirakan dari turunan fungsi dan estimasi kesalahan yang
independen.

Fungsi dari dua variabel:
v
v
f
u
u
f
v u f
~ ~
)
~
,
~
(

=
dimana v dan u
~ ~
adalah estimasi kesalahan dari u dan v

Fungsi dari lebih dari dua variabel:

n
n
n
x
x
f
x
x
f
x
x
f
x x x f
~
.....
~ ~
)
~
,.....
~
,
~
(
2
2
1
1
2 1

+ +




Contoh 4.6
EI
FL
y
8
4
=
F = pembebanan yang terjadi (lb/ft)
L = panjang batang (ft)
E = modulus of elasticity (lb/ft
2
)
I = momen inersia (ft
4
)

Perkirakan kesalahan untuk data yang diberikan:
F = 50 lb/ft
L = 30 ft
E = 1,5 x 10
8
lb/ft
2

I = 0,06 ft
4

F = 2 lb/ft
L = 0,1 ft
E = 0,01 x 10
8
lb/ft
2

I = 0,0006 ft
4

Jawab :
Terapkan persamaan di atas:
I
I
y
E
E
y
L
L
y
F
F
y
I E L F y

= ) , , , (

I
EI
FL
E
I E
FL
L
EI
FL
F
EI
L
I E L F y + + +
2
4
2
4 3 4
8 8 2 8
) , , , (

039375 , 0 005625 , 0 00375 , 0 0075 , 0 0225 , 0 = + + + = y

Jadi 039375 , 0 5626 , 0 = y ft <<jumlah angka penting berapa??>>



Bagian 1: Pemodelan, Komputer, dan Analisis Kesalahan
24
STABILITAS DAN KONDISI

Kondisi: sensitivitas masalah akibat perubahan masukan.
Tidak stabil dalam numerik dapat terjadi bila ketidakpastian nilai masukan dapat
dibesarkan akibat metode numerik.

Contoh:
Deret Taylor orde pertama: )
~
( )
~
( ' )
~
( ) ( x x x f x f x f + =

Kesalahan relatif f(x):
)
~
(
)
~
( )
~
( '
) (
)
~
( ) (
x f
x x x f
x f
x f x f


Kesalahan relatif x:
x
x x
~
~

<< kenapa bukan dibagi dengan x??>



Angka Kondisi (Condition Number): Perbandingan kedua kesalahan diatas :
)
~
(
)
~
( '
~
x f
x f x
=
bila 1, artinya kesalahan relatif fungsi
kesalahan relatif x
bila > 1, artinya kesalahan relatif fungsi
membesar
bila < 1 , artinya kesalahan relatif fungsi
teredam
bila << 1 atau >>1 artinya ada kondisi buruk



Contoh 4.7
Interpretasikan angka kondisi untuk permasalahan ini:
a. x x f tan ) ( =

+ =
2
1 , 0
2
~

x
b. x x f tan ) ( =

+ =
2
01 , 0
2
~

x
Jawab:
angka kondisi :
x
x x
~
tan
) cos / 1 (
~ 2
=
Untuk kasus a : angka kondisi = 2 , 11
314 , 6
) 86 , 40 ( 7279 , 1
=



Untuk kasus b : angka kondisi = 101
66 , 63
) 4053 ( 5865 , 1
=



Dari data didapatkan bahwa 2 kasus di atas mempunyai kondisi buruk, hal ini terbukti
benar karena nilai tan x untuk x
2

mendekati tak terhingga.






Bagian 1: Pemodelan, Komputer, dan Analisis Kesalahan
25
4.3 KESALAHAN NUMERIK TOTAL :
KESALAHAN PEMOTONGAN + KESALAHAN PEMBULATAN
Kesalahan Pembulatan turun bila significant figure naik.
Kesalahan Pembulatan naik bila jumlah perhitungan naik atau terjadi
pengurangan angka yang hampir sama.
Kesalahan Pemotongan turun bila ukuran langkah (h) kecil. Hal ini dapat menyebabkan
pengurangan angka yang hampir sama, atau kenaikan jumlah perhitungan yang dapat
menyebabkan Kesalahan Pembulatan meningkat.

Pada kenyataannya Kesalahan Pembulatan kecil karena significant figure cukup.



PENGONTROLAN KESALAHAN NUMERIK:
Tidak ada pendekatan sistematik secara umum untuk mengevaluasi kesalahan numerik
untuk semua masalah.

Acuan pemrograman untuk mengurangi kesalahan.
1. Hindari pengurangan dua angka yang hampir sama. Hal ini akan mengurangi
significant figures. Atur ulang persamaan atau gunakan perhitungan dengan
extended precision.
2. Perkirakan kesalahan numerik total dengan perhitungan teoritik. Gunakan Deret
Taylor untuk menentukan kesalahan pembulatan dan kesalahan pemotongan.
3. Lakukan eksperimen dengan perhitungan agar berpengalaman dalam menghitung
atau memperkirakan kesalahan.(gunakan h atau metode yang berbeda)
bandingkan hasilnya

Kesalahan lainnya:
1. Blunder (kesalahan konyol): prinsip-prinsip fundamental perlu dipahami, gunakan
kebiasaan-kebiasan baik seperti yang dijelaskan pada Bab 2, cek ulang hasil
perhitungan numerik.
2. Kesalahan Persamaan/Model: bandingkan dengan model matematik.
3. Ketidakpastian Data: kalibrasi ulang alat ukur atau gunakan alat ukur yang lebih
akurat dan presisi, gunakan analisis statistik.




Bagian 1: Pemodelan, Komputer, dan Analisis Kesalahan
26
RANGKUMAN BAGIAN 1