01 1-Algoritma&Bhs Pemrog-lanjut
-
Upload
independent -
Category
Documents
-
view
4 -
download
0
Transcript of 01 1-Algoritma&Bhs Pemrog-lanjut
Dalam pelajaran Algoritma,
Tugas / Pekerjan Tersebut akan
diselesaikan
Oleh
KOMPUTER
Langkah-langkah harus tersusun secara LOGISdan Efisienagar dapat menyelesaikan tugas dengan BENARdan Efisien.
Algoritmaadalah langkah-langkah yang diambil dalam menyelesaikan suatu tugas / pekerjaan
TEKNIK,karena membuat Algoritma adalah suatu pekerjaan yang bersifat mendesain suatu rancang bangun yang efektif dan efisien.
Seni,karena Algoritma penuh dengan kreativitas dan imajinasi yang jenius
Algoritma merupakan gabungan antara SENI dan TEKNIK
KONSEP ALGORITMA
Ciri – Ciri Algoritma1. Algoritma mempunyai awal dan akhir. Suatu algoritma harus berhenti setelah mengerjakan serangkaian tugas atau dengan kata lain suatu algoritma memiliki langkah yang terbatas
2.Setiap langkah harus di definisikan dengan tepat sehingga tidak memiliki arti ganda
3.Memiliki masukan (input) atau kondisi awal4.Memiliki keluaran (output) atau kondisi akhir
5.Algoritma harus efektif, bila diikuti harus benar-benar menyelesaikan masalah.
Penulisan Algoritma• Dalam bahasa natural
– (Bahasa Indonesia, bahasa inggris, dll)• Pseudocode Pseudocode mirip dengan SE. Karena kemiripan ini kadang-kadang SE dan Pseudocode dianggap sama. Pseudo berarti imitasi atau tiruan atau menyerupai, sedangkan code menunjuk pada kode program. Sehingga pseudocode adalah kode yang mirip dengan instruksi kode program sebenarnya
Contoh • Dalam bahasa NaturalAlgoritma luas persegi panjang :
1.Dapatkan nilai panjang2.Dapatkan nilai lebar3.Kalikan nilai panjang dan nilai lebar
4.Simpan hasilnya dalam Luas
5.Umumkan luasnya berapa
• Dalam pseudocodeAlgoritma luas persegi panjang :
1.input panjang;2.input lebar;3.luas = panjang x lebar;
4.print luas
Penulisan Algoritma• Menggunakan flow chart (diagram alir)– (menggambarkan urutan langkah-langkah kegiatan /program mulai dari awal sampai akhir dengan menggunakan simbol atau gambar tertentu.)•Kegunaan : mendesain dan mempresentasikan program
Lambang FlowchartTerminator (mulai/selesai)
Input/output
Proses
Decision (percabangan)
Data Flow (Aliran data)
Preparation (pemberian nilai awal suatu variabel)Call (memanggil prosedur/fungsi)Connector (di halaman yg sama
Connector ( di halaman lain)
KONSEP ALGORITMA Sifat Algoritma1.Banyaknya Langkah Instruksi Harus Berhingga,2.Langkah atau Instruksi harus Jelas,3.Proses harus Jelas dan mempunyai batasan, 4.Input dan Output harus mempunyai Batasan, 5.Efektifitas, 6.Adanya Batasan Ruang Lingkup,
An algorithm is a finite set of instructions which, if followed, accomplish a particular task. In addition every algorithm must satisfy the following criteria :1). Input : there are zero or more quantities which are
externally supplied; 2). Output : at least one quantity is produced;
3). Definiteness : each instruction must be clear and unambiguous;
4). Finiteness : if we trace out the instructions of an algorithm, then for all cases the algorithm will terminate after a finite number of steps;
5). Effectiveness : every instruction must be sufficiently basic that it can in principle be carried out by a person using only pencil and paper. It is not enough that each operation be definite as in 3), but it must also be feasible. Horowitz,Eliis and Sahni, Sartaj;
FUNDAMENTAL OF DATA STRUCTUTES; Computer Science Press, Inc.; Rocville, Maryland; 1983
Salah satu buku literatur, memberikan definisi dan kriteria sebuah algoritma sebagai berikut :
Baca sendiri
Secara bebas definisi diatas dapat diterjemahkan sebagai berkut :
Algoritma adalah sekumpulan instruksi, yang apabila dijalankan, akan menyelesaikan suatu tugas tertentu. Sebagai tammbahan, setiap algoritma harus memenuhi kriteria sebagai berikut
1). Tidak harus ada data masukan yang dimasukkan dari luar.
2). Paling tidak ada satu buah keluaran
3) Setiap instruksi jelas maksudnya dan tidak meragukan
4). Algoritma baik secara keseluruhan maupun sub algoritma bila ditelusuri harus ada titik berhentinya.
5). Setiap instruksi selain jelas juga harus dapat dilaksanakan, dan juga efektif dalam arti harus menghasilkan sesuatu. Sebagai contoh A = A + 0 atau A = A*1, adalah termasuk instruksi yang tidak efektif.
Baca sendiri
Horowitz,Eliis and Sahni, Sartaj; FUNDAMENTALOF DATA STRUCTUTES; Computer Science Press, Inc.; Rocville, Maryland; 1983
PSEUDO-CODEfor i1 to n-1 do examine A(i) to A(n) and suppose the smallest integer is at A(j); then interchange A(i) and A(j).end
ALGORITMA
for i 1 to n-1 do j i for k j+1 to n do if A(k) < A(j) then j k end t A(i); A(i) A(j); A(j) tend
Baca sendiri
2).
Mencari suatu nilai dalam array dengan cara Binary Search.
PSEUDO-CODEProcedure BINSRCH(A,n,x,j)initialize lower and upperwhile there are more elements to check do let A(mid) be the middle element case : x > A(mid) : set lower to mid + 1 : X < A(mid) : set upper to mid - 1 : else : found endendnot foundend BINSRCH
Baca sendiri
Bila ditulis dalam bentuk algoritma:
ALGORITMAProcedure BINSCRH(A,n,x,j)lower 1; upper nwhile lower <= upper do mid [ (lower + upper) / 2 ] case : x > A(mid) : lower mid +1 : x < A(mid) : upper 1 : else : j mid; return endendj 0end
Baca sendiri
Untuk menunjukkan kaitan antara Pseudo Code dan Algoritma, berikut ini diperlihatkan beberapa contoh penulisan Algoritma untuk Pseudo Code yang diberikan
Pseudo Code Algoritma•Nilai A ditambah dengan 5
•Cetak nilai A, bila nilai tersebut lebih besar dari 5
•Dari dua buah nilai A dan B cetak salah satu yang terbesar
•A = A + 5
•IF(A > 5) THEN WRITE(A)
•IF (A>B) THEN WRITE(A) ELSE WRITE B)
Baca sendiri
Latihan 1.Buatlah algoritma untuk menghitung keliling dan luas lingkaran
2.Buatlah algoritma untuk menghitung luas dan volume suatu balok
3.Buatlah algoritma untuk menghitung luas segitiga
ALGORITMAfor i 1 to n-1 do j i for k j+1 to n do if A(k) < A(j) then j k end t A(i); A(i) A(j); A(j) tend
a. Bahasa BASICFOR I=1 TO N-1 J = 1 FOR K=J+1 TO N IF A(K)< A(J)THEN J = K END IF NEXT K T=A(I): A(I)=A(J): A(J)=TNEXT I
Baca sendiri
b. Bahasa PASCALFOR I := 1 TO N-1 Begin J := 1; FOR K := J+1 TO N Begin IF A[K] < A[J] J := K; End; T:=A[I]; A[I]:=A[J]; A[J]:=T; End;
ALGORITMAfor i 1 to n-1 do j i for k j+1 to n do if A(k) < A(j) then j k end t A(i); A(i) A(j); A(j) tend
Baca sendiri
ALGORITMAfor i 1 to n-1 do j i for k j+1 to n do if A(k) < A(j) then j k end t A(i); A(i) A(j); A(j) tend
c. Bahasa C atau C++for(I=1; I <= N-1; I++) { J = 1; for(K = J+1; K <= N; K++) { if(A[K] < A[J] ) J = K; } T=A[I]; A[I]=A[J]; A[J]=T; }Baca sendiri
ALGORITMAfor i 1 to n-1 do j i for k j+1 to n do if A(k) < A(j) then j k end t A(i); A(i) A(j); A(j) tend
d. Bahasa Javafor(I=1; I <= N-1; I++) { J = 1; for(K = J+1; K <= N; K++) { if(A[K] < A[J] ) J = K; } T=A[I]; A[I]=A[J]; A[J]=T; }Baca sendiri
ALGORITMAfor i 1 to n-1 do j i for k j+1 to n do if A(k) < A(j) then j k end t A(i); A(i) A(j); A(j) tend
d. Bahasa Javafor(I=1; I <= N-1; I++) { J = 1; for(K = J+1; K <= N; K++) { if(A[K] < A[J] ) J = K; } T=A[I]; A[I]=A[J]; A[J]=T; }
c. Bahasa C atau C++for(I=1; I <= N-1; I++) { J = 1; for(K = J+1; K <= N; K++) { if(A[K] < A[J] ) J = K; } T=A[I]; A[I]=A[J]; A[J]=T; }
Baca sendiri
1.3. Program Flowchart. START
JUM 0
READ
I 1
I I + 1
JUM JUM + 1
NIL >= 60
NIL
I <= 100
WRITE JUM
END
yes
no
while
if
yes
no
Menginput sampel 100 nilai ujian mahasiswa dan mencetak ada berapa orang mahasiswa yang lulus dari 100 sampel tersebut.Dinyatakan lulus apabila nilai ujian lebih besar atau sama dengan 60.
JUM 0I 1WHILE I <= 100 DO READ(NIL) IF NIL >= 60 THEN JUM JUM + 1 ENDIF I I + 1 ENDDOWRITE(JUM)
Baca sendiri
for i to n-1 do j i for k j+1 to n do if A(k) < A(j) then j k end t A(i); A(i) A(j); A(j) tend
T A(I)
I 1
K K + 1
A(K) < A(J)
I <= N - 1 yes
no
For J I
K J + 1
K <= N
J K
A(I) A(J)
A(J) T
For yesno
yes
no
if
I I + 1
Baca sendiri
for i to n-1 do j i for k j+1 to n do if A(k) < A(j) then j k end t A(i); A(i) A(j); A(j) tend
T A(I)
I 1
K K + 1
A(K) < A(J)
I <= n - 1
no
For
J I
K J + 1
K <= N
J K
A(I) A(J)
A(J) T
yes
yes
no
if
For
no
yes
I I + 1Baca sendiri
Terminal, untuk menyatakan START dan END hanya sebagai tanda, tidak melakukan suatu pekerjaan khusus.
Process, untuk menyatakan assignment statement
I/O, Input/Output operation. untuk menyatakan proses baca (READ) dan proses tulis (WRITE)
Decision, untuk menyatakan pengambilan keputusan sesuai dengan suatu kondisi. Digunakan untuk menggambarkan control statement.
Garis, untuk menyatakan urutan pelaksanaan, atau alur proses.
Baca sendiri
Preparation, Pemberian nilai awal suatu variabel. Biasa dipakai pada bahasa COBOL, juga bahasa C.
Call , Memanggil suatu subprogram (procedure, atau function)
Titik connector yang berada pada halaman yang sama
Titik connector yang berada pada halaman lain.
Baca sendiri
dari cara kerjanya, ada tiga macam atau tiga kategori pokok komponen instruksi dalam algoritma, yaitu :
1.4. Struktur Alur Algoritma.
1. Assignment Statement,2. Input / Output Statement, dan3. Control Statement.yang masih dapat ditambah satu macam lagi yaitu 4.Call Statement & Return Statement
(boleh ditambah/tidak)
Baca sendiri
Statement adalah suatu pernyataan yang menyebabkan suatu tindakan akan dilakukan oleh komputer. Tindakan tersebut misalnya adalah tindakan untuk menghitung, menampilkan hasil, menerima input data, mengendalikan proses program dan lain sebagainya
1.4. Struktur Alur Algoritma.1. Assignment Statement statement
yang digunakan untuk memberikan nilai ke suatu variable
• Menggunakan (=) sebagai assignment operator
• Assignment statements adalah:Variabel = expression
• Contoh: luas = 3.14 * radius * radius;
Baca sendiri
Assignment statements
Expression
Variabel
Assignment operator
Statement Input :Statement Input : 2. Statement Input – Output2. Statement Input – Output
Adalah statement / fungsi yg digunakan untuk membaca data dari keyboard.
Fungsi-fungsi yang bisa digunakan pada bahasa C++ antara lain sbb:
getchar(); getche(); getch(); gets(); scanf();
scanf:scanf:
Format :int scanf( const char *format [,argument]... );
Spesifikai format adalah : ”% type”
• Semua tipe argument pada scanf adalah pointerpointer.
TypeType Digunakan untuk membacaDigunakan untuk membacad Data integeru Data unsigned integerx Data heksadesimal
e, f, g Data floating pointc Single characters Karakter string yg diakhiri dengan
whitespaceO Data unsigned octal
[ … ] Karakter string yg diakhiri dengan karakter yg tidak ada didalam [..]
[^..] Karakter string yg diakhiri dengan karakter yg ada didalam [..]
Contoh :/* Program Luas_Segi_Empat */
#include <stdio.h>
int Panjang,Lebar,Luas;
id main(){ scanf(”%d”,&Panjang); scanf(”%d”,&Lebar); Luas = Panjang * Lebar; return 0;}
Perintah scanf dapat memakai lebih dari satu argument; Contoh :
/* Program Luas Segi Empat */
#include <stdio.h>
void main(){ int Panjang,Lebar,Luas;
scanf(“%d %d”,&Panjang,&Lebar); Luas = Panjang * Lebar; ……}
Statement Output :Statement Output :Statemen ini digunakan untuk menuliskan data ke layar monitor.
Beberapa fungsi yang yang ada pada bahasa C antara lain:• puts()• putchar()• printf()
Contoh :/** Program Luas Segi Empat **/#include <stdio.h>void main(){ int Panjang,Lebar,Luas; /* local variable */ printf(”Panjang = ”); scanf(“%d”,&Panjang); printf(”Lebar = ‘); scanf(“%d”,&Lebar); Luas = Panjang * Lebar; printf(”Luas = %d\n”, Luas);}
printf:printf:Mencetak / mengirim sejumlah argument menurut format ke standard output.Sintak :
printf(const char *format[,argument, …]);
Header file : <stdio.h>Spesifikai format sbb:
%[flags][width][.precision] type
type dapat diganti dengan :d atau i : signed decimalo : unsigned octalu : unsigned decimal
x : unsigned hexadecimalf : floating pointe : floating point (exponent)c : single characters : string% : % characterp : pointer
flags dapat diganti sbb:none : right justify (rata kanan)- : left justify (rata kiri)+ : untuk bilangan dimulai dgn
tanda – atau +width : menentukan jumlah kolom yang disediakanprecision : menentukan jumlah angka dibelakang koma (untuk bilangan pecahan)
Contoh 1 :Statement Ditampilkan di
monitorprintf(“%6d”,34); ….34printf(“%-6d”,34); 34....Contoh 2 :Statement Ditampilkan di
monitorprintf(“%10s”,”Muda”); ……Mudaprintf(“%-10s”,”Muda”); Muda.…..printf(“%6.2f”,3.14276); ..3.14
Penempatan Kursor• Layar dibagi dalam kolom dan baris, umumnya digunakan ukuran kolom = 80 dan baris = 25.•Layar dapat dihapus dengan menggunakan fungsi: clrscr();
Contoh :Contoh :#include <stdio.h>#include <conio.h>float P, L, Ls, Kll; /* global variable */main(){ clrscr(); /*membersihkan layar */ gotoxy(30,10); printf(”Panjang : ”); scanf(“%f”,&P); gotoxy(30,11); printf(“Lebar :” ); scanf(“%f”,&L); Kll = 2 * P * L; Ls = P * L; gotoxy(30,13); printf(“Keliling = %8.2f ”, Kll); gotoxy(30,14); printf(“Luas = %8.2f‘, Ls ); return 0;}
1.4. Struktur Alur Algoritma.3. Control Statement.statement yang berfungsi untuk mengendalikan proses
dari program, proses ini dapat berupa proses penyeleksian kondisi atau perulangan. Statement ini dibentuk dengan diawali kata-kata kunci if, switch, for, while, do-while, goto, break, dan continue.
4. Call Statement & Return Statement
Baca sendiri
Digunakan untuk pengiriman nilai atau pemnaggilan nilai dari satu fungsi ke fungsi lainnya, pernyataan return() diikuti oleh argument yang berupa nilai yang dikirim
Dilihat dari struktur alur atau urutan pelaksanaan instruksi, ada tiga macam struktur flow yaitu :1. Sequential flow aliran yang
dikerjakan urut sesuai dengan urutan penulisan
2. Branch flow, aliran yang melakukan percabangan
- Uncoditional Branch flow perintah – perintah eksekusi percabangan tanpa syarat tertentuA. Simple Conditional Branch (menggunakan IF Statement)
- Conditional Branch flow, (menggunakan IF-THEN Statement)atau Conditional Selection flow. (menggunakan IF-THEN-ELSE Statement) B. Multiway Conditional Branch (menggunakan CASE Statement
Baca sendiri
Dilihat dari struktur alur atau urutan pelaksanaan instruksi, ada tiga macam struktur flow yaitu :3. Repetition flow atau Iteration flow atau
Loop flow,• Loop adalah sekelompok instruksi yang dikerjakan
secara berulang-ulang.• Instruksi Loop adalah instruksi yang menyebabkan
terbentuknya suatu loop.• Struktur Loop adalah struktur penulisan
instruksi dimana terdapat instruksi loop, yang menyebabkan sekelompok instruksi yang dikerjakan secara berulang-ulang.
- Unconditional Repetition flow, Akan mengerjakan loop tanpa dipengaruhi oleh suatu kondisi tertentu.
- Conditional Repetition flow.Akan mengerjakan loop berdasarkan kondisi tertentu. Berapa kali loop dikerjakan tidak dapat dipastikan, karena semata-mata tergantung kondisi tertentu
1.4.1. Struktur sequential Contoh :
for i to n-1 do j i for k j+1 to n do if A(k) < A(j) then j k end t A(i); A(i) A(j); A(j) tend
1)2)3)4)5)6)7)
t A(i) A(i) A(j) A(j) t
Contoh lain:
READ(A)READ(B)T A + BWRITE(T)
6)
Keempat instruksi ini dilaksanakan secara berurutan atau sekuen sehingga membentuk struktur sequential flow
Statement no 6) terdiri dari tiga instruksi yang dilaksanakan secara berurutan (sequential )Ketiga instruksi ini dapat disusun sebagai berikut:
Statement no 1) dan pasangannya no. 7), serta statement no 3) dan pasangannya no 5) adalah dua statement yang membentuk pengulangan (repitition atau loop).Sedangkan statement no 4) adalah statement pencabangan (branch).
1.4.2. Struktur Conditional Branch/Selection. Contoh : IF-THEN-ELSE Statement
READ(A)READ(B)IF A > B THEN WRITE(A) ELSE WRIE(B)ENDIF
1)2)3)4)5)6)
Baca sendiri
Statement no 3, 4, 5, dan 6) membentuk struktur pencabangan tergantung kondisi apakah A>B (A lebih besar dari B).Bila A>B maka (then) yang dicetak adalah A,selainnya (else), yaitu bila A tidak lebih besar dari B yang dicetak adalah B.Disini terjadi suatu pilihan atau seleksi.Atau disini ada dua alternatif, mencetak A atau mencetak B.Sehingga struktur ini sering juga disebut struktur :
SELEKSI (selection), atauALTERNASI (alternation).
Contoh : IF-THEN Statement
READ(N)IF N >= 60 THEN WRITE(“LULUS”)ENDIF
1)2)3)4)
Statement no 2, 3, dan 4) membentuk struktur pencabangan tergantung kondisi apakah N >= 60 (Nilai lebih besar atau sama dengan 60).Bila N lebih besar atau sama dengan 60, maka (then) mencetak perkataan “LULUS”, dan control dilanjutkan ke instruksi dibawah EndIf.Tapi bila N lebih kecil dari 60, maka control langsung ke instruksi dibawah EndIf, tidak mengerjakan suatu instruksi.
Terlihat disini, mengerjakan sesuatu hanya bila kondisi terpenuhi.Sehingga struktur ini sering juga disebut struktur
KONDISI (Condition)
Contoh : CASE Statement
READ(Nilai)CASE : Nilai = “A” : WRITE(“Bagus Sekali”) : Nilai = “B” : WRITE(“Bagus”) : Nilai = “C” : WRITE(“Cukup”) : Nilai = “D” : WRITE(“Kurang”) : else : WRITE(“Kurang Sekali”)EndCase
Baca sendiri
READ(Nilai)CASE Nilai OF “A” : WRITE(“Bagus Sekali”) “B” : WRITE(“Bagus”) “C” : WRITE(“Cukup”) “D” : WRITE(“Kurang”) else : WRITE(“Kurang Sekali”)EndCase
atau
1.4.3. Struktur LoopContoh : Unconditional LOOP
T 0FOR I 1 TO 100 DO READ(A) T T + A ENDDOWRITE(T)
1)2)3)4)5)6)7)
Baca sendiri
Algoritma ini melaksanakan instruksi no 4 dan 5) sebanyak 100 kali, sehingga algoritma ini menginput 100 buah nilai, menghitung serta mencetak totalnya.Loop ini dikatakan unconditional, karena pengulangannya dipastikan sebanyak 100 kali, (sengaja dibuat 100 kali) tidak tergantung suatu kondisi tertentu (unconditional)
Contoh : Conditional LOOP
T 0I 1WHILE I <= 100 DO READ(A) T T + A I I + 1 ENDDOWRITE(T)
1)2)3)4)5)6)7)8)9)
Baca sendiri
Dalam contoh diperlihatkan bahwa loop akan dikerjakan selama nilai T lebih kecil atau sama dengan 100. Loop akan selesai bila T lebih besar dari 100.
Langkah-langkah harus tersusun secara LOGISdan Efisienagar dapat menyelesaikan tugas dengan benardan efisien.
ALGORITMAadalah langkah-langkah yang diambil dalam menyelesaikan suatu tugas / pekerjaan
Dalam pelajaran Algoritma, Tugas / Pekerjaan tersebut
akan diselesaikan dengan menggunakan
memang dirancang untuk dapat
melaksanakan perintah
yang diberikan oleh manusia
Susunan perintah-perintah
inilah yang disebut
algoritma
RAM
ContohWINDOWS
MempunyaiProcessor contoh Intel Pentium
KOMPUTER adalah alat pengolah data, dengan konstruksi elektronik, yang mempunyai, internal storagebekerja dengan bantuan Operating Systemmenurut program yang diberikan kepadanya.
misal :Intel Pentium
PROCESSOR
MEMORY (internal Storage)
SCREENKEYBOARD
HARDDISK(external storage) RAM
misal kapasitas
64 MB
Input device
Misalkapasitas
10 GB
Outputdevice
Input & Outputdevice
misal :Intel Pentium Data
OperatingSystem
OPERATINGSYSTEM
PROGRAM------------------------------------------------
data
PROCESSOR
MEMORY (internal Storage)
SCREENKEYBOARD
HARDDISK(external storage)
data data
Program
RAMmisal
kapasitas64 MB
Input device
Misalkapasitas
10 GB
Outputdevice
Input & Outputdevice
laporan
KOMPUTER adalah alat pengolah data, dengan konstruksi elektronik, yang mempunyai, internal storagebekerja dengan bantuan Operating Systemmenurut program yang diberikan kepadanya.
mempunyai
Suatu tempat didalam komputer
mempunyai kapasitasdaya tampung
B Byte
1 KB (Kilo Byte ) = 1024 Byte
1 MB (Mega Byte ) = 1024 KB
1 GB (Giga Byte ) = 1024 MB
1 TB (Tera Byte ) = 1024 GB
B Byte
1 KB (Kilo Byte ) = 1024 Byte
1 MB (Mega Byte ) = 1024 KB
1 GB (Giga Byte ) = 1024 MB
1 TB (Tera Byte ) = 1024 GB. . . . . . . . . . . . . . = 1024 TB
B Byte
1 KB (Kilo Byte ) = 1024 Byte
1 MB (Mega Byte ) = 1024 KB
1 GB (Giga Byte ) = 1024 MB
1 TB (Tera Byte ) = 1024 GB. . . . . . . . . . . . . . = 1024 TB. . . . . . . . . . . . . . = 1024 ……
Bilangan bineradalah bilangan yang berbasis 2
x x x x x . x x x x
Hanya mengenal 2 macam notasi atau simbol yaitu : 0 dan 1
16 8 4 2 1 0.5 0.25 0.125 0.0625
Setiap digit1 ,
nilainya
titik decimalangka biner
(binary digit)
1 0 0 1 1 . 1 0 1 0 16 8 4 2 1 0.5 0.25 0.125 0.0625
Setiap digit1 ,
nilainya
Bilangan binary ini nilainya secara decimal = 19.625
16 + 2 +1 = 19 0.5 + 0.125 = 0.625
124816326412825651210242048...
ini yang dipakai untuk kilo
1024 = nilai yang paling mendekati 1000
mengapa 20
21
22
23
24
25
26
27
28
29
210
2048...
yang biasa kita gunakan sehari-hariBilangan decimal
yaitu bilangan yang berbasis 10
x x x x . x x x
mengenal 10 macam notasi atau simbol yaitu : 0, 1, 2, ……..9
1000 100 10 1 0.1 0.01 0.001
Setiap satu satuan , nilainya
titik decimal
memory
no: 0 1 2 3
No :64 * 1024 * 1024 - 1(Untuk memory 64 MB)
1 BYTE = 8 bit (binary digit)
X X X X X X X X
1 2 3 4 5 6 7 8
Bila memory dianggap sebagai sebidang tanah,maka 1 BYTE dapat dianggap sebagai 1 meter persegi
Satuan lain :WORD ( 4 Byte)HALF WORD ( 2 Byte)DOUBLE WORD ( 8 Byte)SECTOR (512 Byte)
BYTE adalah satuan memory (storage) terkecil yang masih bisa diberi alamat
MEMORY dan satuan BYTE
Memory, bila dibayangkan sebagai sebidang tanah, maka satu BYTE adalah area sebesar satu meter persegi, yang dapat menyimpan satu buah huruf
Bila dibayangkan sebagai sebuah ruangan, maka satu BYTE adalah sebuah ubin yang dapat menampung sebuah huruf
RANDOM ACCESS (Akses secara Acak)0 1 2 3 4 5 . . . . . .
Komputer dapat mengakses (menuju, mencapai, mendapatkan) sebuah Byte dalam memory, secara langsung, tanpa harus menelusuri satu per satu mulai Byte 0,1,2,3, dan seterusnya. Bagi komputer, untuk mengakses Byte no 1000, sama mudahnya dengan mengakses Byte nomor 1, atau nomor lainnya
Sebuah Byte terdiri dari 8 komponen yang disebut bit.Sulit menerangkan benda yang disebut bit tersebut secara fisik. Hanya dapat diilustrasikan sebagai sebuah bohlam lampu atau bola lampu yang hanya memiliki salah satu dari 2 kondisi yaitu : menyala atau padam.Bila menyala disebut ON, dan padam disebut OFFContoh sebuah huruf Abila disimpan dalam satu BYTE memory
ON
OFF
1 BYTE = 8 bit (binary digit atau angka biner)
ilustrasi sebuah BYTE yang terdiri dari 8 buah bohlam lampu.
Menurut standardASCII
Bit = Binary digit (angka biner)Untuk keperluan komputasi secara digital,maka : bit yang ON dinyatakan dengan angka 1, dan bit yang OFF dinyatakan dengan angka 0
Sehingga huruf Ayang dinyatakan dengan ON dan OFF nya bit-bit sebagaiberikut :
ON
OFF
selanjutnya dinyatakan dengan :
0 1 0 0 0 0 0 1
Binary digit (angka biner)
Bilangan Binary, Basis (Radix) = 2, karena hanya mengenal 2 notasi atau simbol yaitu:0 dan 1
x x x x x x32 16 8 4 2 1
Bilangan DecimalBasis (Radix) = 10,karena mengenal 10 notasi atau simbol yaitu : 0, 1, 2, 3, . . . 9
x x x x 1000 100 10 1
Binary digit (angka biner)
01
1 01 1
1 0 01 0 11 1 01 1 1
1 0 0 01 0 0 1
= 0= 1= 2= 3= 4= 5= 6= 7= 8= 9
Nilai decimal
Nilai yang terkandung dalam sebuah BYTESetiap bit yang ON mempunyai nilai sesuai dengan posisinya dalam sebuah BYTE yang dapat digambarkan sebagai berikut :
128 64 32 16 8 4 2 1
Contoh : Bila bit-bit dalam satu Byte dinyatakan sebagai berikut :
0 0 1 1 0 1 0 1 32 16 4 1
maka nilai numerik yang tersimpan = 53( = 32 + 16 + 4 + 1 )
Nilai karakter A
Ilustrasi huruf A yang disimpan dalam suatu BYTE
128 64 32 16 8 4 2 1
Sehingga karakter A, atau huruf Ayang disimpan dalam satu BYTE memory akan bernilai = 65karena bit yang ON bernilai 64 dan 1.
Yang dinyatakan dengan angka biner (binary digit)menjadi :
0 1 0 0 0 0 0 1128 64 32 16 8 4 2 1
KOMPUTER adalah alat pengolah data, dengan konstruksi elektronik, yang mempunyai, internal storagebekerja dengan bantuan Operating Systemmenurut program yang diberikan kepadanya.
Operating Systemadalah software yang dibuat untukmengendalikan bekerjanya komputer.
Semua pekerjaan didalam komputer dikendalikan (di-control) oleh Operating System
Beberapa Contoh Operating System :DOSWINDOWSWINDOWS NTUNIXLINUXXENIXMACINTOSHSUN SOLARIS
KOMPUTER adalah alat pengolah data, dengan konstruksi elektronik, yang mempunyai, internal storagebekerja dengan bantuan Operating Systemmenurut program yang diberikan kepadanya.
= Langkah-langkah dalam Alagoritma
Instruksi-instruksiharus tersusunsecara logis
MemerlukanLOGIKA
yang benar
PROGRAM adalah kumpulan instruksi-instruksiyang diberikan kepada komputer untuk menyelesaikan suatu tugas
PROGRAMditulis dalam suatu bahasa yang disebut Bahasa Pemrograman (Programming Language)
Contoh BahasaPemrograman :COBOLFORTRANPascalBASICCJavadan sebagainya
Bahaca C ini yang kitagunakan untukmenerapkan Algoritmadi komputer
Mencari Total dua buah bilangan(Misal dua buah bilangan tersebut masing masing bernilai 5 dan 4).
diselesaikandengan
menggunakan SIPOA, SWIPOA,
SEMPOA
diselesaikan dengan
menggunakanKALKULATOR
diselesaikan dengan
menggunakanKOMPUTER
Bila diselesaikan dengan komputer
menggunakan EXCEL
Menggunakan program
yang dibuat sendiriSuatu program yang sudah
jadi, dibuat oleh orang lain, yang
siap untuk kita gunakan
Diketahui dua buah bilangan masing- masing bernilai 5 dan 4.Susun program yang ditulis dalam Bahasa C / C++, untuk mencetak total kedua buah bilangan tersebut.
Mencari Total dua buah bilangan(Misal dua buah bilangan tersebut masing masing bernilai 5 dan 4).
Persoalan ini, bila akan diselesaikan dengan program komputer, maka bunyi kalimatnya dapat diganti menjadi :
Soal
Algoritmasecara Umum A 5 B 4 T A + B WRITE(T)
Algoritma dalam Bahasa C#include<stdio.h>void main(){ int A,B,T; A = 5; B = 4; T = A + B; printf(“%i”, T);}
Diketahui dua buah bilangan masing- masing bernilai 5 dan 4.Susun algoritma yang ditulis dalam dalam Bahasa C/C++, untuk mencetak total kedua buah bilangan tersebut.
#include<iostream.h>void main(){ int A,B,T; A = 5; B = 4; T = A + B; cout << T;}
Algoritma dalam Bahasa C++
Soal-1a
Algoritmasecara Umum A 5 B 4 T A + B WRITE(T)
Dapat ditulis secara bebas asal dapat dimengerti oleh orang lain
A 5 B 4 T A + B WRITE(T)
Dapat diganti, misalnya dengan :WRITE TPRINT ( T )PRINT TCETAK TTULIS TPrint TWrite Tdan sebagainyaasal dipahami
Dapat diganti misal :A diisi 5
Seperti yang dicontohkan dalam buku literatur
ALGORITMAadalah langkah-langkah yang diambil dalam menyelesaikan suatu tugas
KEMBALI KE :
A 5 B 4 T A + B WRITE(T)
ADA 4 LANGKAH
Direncanakan yang
menyelesaikan tugas atau pekerjaan tersebut adalah :
KOMPUTER
ALGORITMAadalah langkah-langkah yang diambil dalam menyelesaikan suatu tugas
atau pekerjaan
A 5 B 4 T A + B WRITE(T)
ADA 4 LANGKAH
Satu langkah identik dengan satu instruksi komputer
ALGORITMAadalah INSTRUKSI-INSTRUKSI yang diberikan kepada KOMPUTER untuk menyelesaikan suatu pekerjaan
SEHINGGA DAPAT DIKATAKAN :
Komputer memang dirancang untuk
dapat menerima dan melaksanakan
instruksi yang diberikan kepadanya
Direncanakan yang
menyelesaikan tugas atau pekerjaan tersebut adalah :
KOMPUTER
A 5 B 4 T A + B WRITE(T)
ALGORITMA YANG DITULIS SEPERTI INI , TIDAK DIPAHAMI OLEH KOMPUTER
Komputerhanya mengerti
bahasanya sendiriyang disebutBAHASA MESIN
karena
Tidak disiapkan alat untuk menerjemahkan ALGORITMA tersebut
menjadi BAHASA MESIN
ALGORITMAadalah INSTRUKSI-INSTRUKSI yang diberikan kepada KOMPUTER untuk menyelesaikan suatu pekerjaan
Algoritmasecara Umum A 5 B 4 T A + B WRITE(T)
Algoritma dalam Bahasa C#include<stdio.h>void main(){ int A,B,T; A = 5; B = 4; T = A + B; printf(“%i”, T);}
#include<iostream.h>void main(){ int A,B,T; A = 5; B = 4; T = A + B; cout << T;}
Algoritma dalam Bahasa C++
TIDAK DIMENGERTI OLEH KOMPUTER
DIMENGERTI OLEH KOMPUTERkarena
Sudah disiapkan atau disediakan ALAT PENERJEMAH nya menjadi BAHASA MESIN
Algoritma dalam Bahasa C#include<stdio.h>void main(){ int A,B,T; A = 5; B = 4; T = A + B; printf(“%i”, T);}
#include<iostream.h>void main(){ int A,B,T; A = 5; B = 4; T = A + B; cout << T;}
Algoritma dalam Bahasa C++
Agar dapat diterjemahkan menjadi BAHASA MESIN, maka ALGORITMA harus ditulis dalam suatu Bahasa Pemrograman (Programming Language)
Contoh : Bahaca C
Algoritmasecara Umum A 5 B 4 T A + B WRITE(T)
Algoritma dalam Bahasa C#include<stdio.h>void main(){ int A,B,T; A = 5; B = 4; T = A + B; printf(“%i”, T );} Variabel
tidak didefine/ dideklarasi/ dinyatakan/ dipesanlebih dulu
Variabel perlu didefine/
dideklarasi/lebih dulu
VARIABLE--------------VARIABEL
- Tipe (Type)- Nama- Isi Mewakili
ALAMAT(address)
Diketahui dua buah bilangan masing- masing bernilai 5 dan 4.Susun algoritma yang ditulis dalam dalam Bahasa C untuk mencetak total kedua buah bilangan tersebut.
Soal-1a
Algoritmasecara Umum A 5 B 4 T A + B WRITE(T)
Algoritma dalam Bahasa C++#include<iostream.h>void main(){ int A,B,T; A = 5; B = 4; T = A + B; cout << T;} Variabel
tidak didefine/ dideklarasi/ dinyatakan/ dipesanlebih dulu
Variabel perlu didefine/
dideklarasi/lebih dulu
VARIABLE--------------VARIABEL
- Tipe (Type)- Nama- Isi Mewakili
ALAMAT(address)
Diketahui dua buah bilangan masing- masing bernilai 5 dan 4.Susun algoritma yang ditulis dalam dalam Bahasa C++, untuk mencetak total kedua buah bilangan tersebut.
Soal-1a
#include<iostream.h> void main() { int A,B,T; A=5; B=4; T=A+B: cout << T;}
Ccompiler
windows
#include<iostream.h>void main(){ int A,B,T; A = 5; B = 4; T = A + B; cout << T;}
5 4 9A B T
9
5 + 4 = 9C PU
MEMORY
SCREEN
KEYBOARD
WindowsCcompiler
HARDDISK
2
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
2 3
1
4