SlideShare a Scribd company logo
1 of 59
Niklaus Wirth
Eidgenossische Technische Hochschule
Zurich, Switzerland
RAM
Contoh
WINDOWS
Mempunyai
Processor contoh Intel Pentium
KOMPUTER
adalah alat pengolah data,
dengan konstruksi elektronik,
yang mempunyai, internal storage
bekerja dengan bantuan
Operating System
menurut program yang diberikan
kepadanya.
misal :
Intel Pentium
PROCESSOR
MEMORY
(internal Storage)
SCREEN
KEYBOARD
HARDDISK
(external storage)
RAM
misal
kapasitas
64 MB
Input
device
Misal
kapasitas
10 GB
Output
device
Input &
Output
device
misal :
Intel Pentium
Data
Operating
System
OPERATING
SYSTEM
PROGRAM
--------
--------
--------
--------
--------
--------
data
PROCESSOR
MEMORY
(internal Storage)
SCREEN
KEYBOARD
HARDDISK
(external storage)
data data
Program
RAM
misal
kapasitas
64 MB
Input
device
Misal
kapasitas
10 GB
Output
device
Input &
Output
device
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
yang dapat menyala atau padam.
Bila menyala disebut ON, dan padam disebut OFF
Contoh sebuah huruf A
bila 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.
Catatan :
ON
OFF
disini sengaja dibuat
jarak, hanya agar
mudah melihat jumlah
bitnya ada 8 buah.
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 A
yang dinyatakan dengan ON dan OFF nya bit-bit sebagai
berikut :
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 x
32 16 8 4 2 1
Bilangan Decimal
Basis (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)
0
1
1 0
1 1
1 0 0
1 0 1
1 1 0
1 1 1
1 0 0 0
1 0 0 1
= 0
= 1
= 2
= 3
= 4
= 5
= 6
= 7
= 8
= 9
Nilai yang terkandung dalam sebuah BYTE
Setiap 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 A
yang disimpan dalam satu BYTE memory akan bernilai = 65
karena bit yang ON bernilai 64 dan 1.
Yang dinyatakan dengan angka biner (binary digit)
menjadi :
0 1 0 0 0 0 0 1
128 64 32 16 8 4 2 1
128 64 32 16 8 4 2 1
A
B
C
D
E
HURUF
atau
KARAKTER : = 65
= 66
= 67
= 68
= 69
KOMPUTER
adalah alat pengolah data,
dengan konstruksi elektronik,
yang mempunyai, internal storage
bekerja dengan bantuan
Operating System
menurut program yang diberikan kepadanya.
Operating System
adalah software yang dibuat untuk
mengendalikan bekerjanya komputer.
Semua pekerjaan didalam komputer dikendalikan
(di-control) oleh Operating System
Beberapa Contoh Operating System :
DOS
WINDOWS
WINDOWS NT
UNIX
LINUX
XENIX
MACINTOSH
SUN SOLARIS
KOMPUTER
adalah alat pengolah data,
dengan konstruksi elektronik,
yang mempunyai, internal storage
bekerja dengan bantuan
Operating System
menurut program yang diberikan kepadanya.
= Langkah-langkah
dalam Alagoritma
Instruksi-instruksi
harus tersusun
secara logis
Memerlukan
LOGIKA
yang benar
PROGRAM
adalah kumpulan
instruksi-instruksi
yang diberikan kepada komputer
untuk menyelesaikan suatu tugas
PROGRAM
ditulis dalam suatu bahasa yang disebut Bahasa
Pemrograman (Programming Language)
Contoh Bahasa
Pemrograman :
COBOL
FORTRAN
Pascal
BASIC
C
Java
dan sebagainya
Bahaca C ini yang kita
gunakan untuk
menerapkan Algoritma
di komputer
Tipe Data.
Tipe data dasar (primitif) yang digunakan oleh Bahasa C.
char atau signed char
unsigned char
Sebutan
Tipe Data
Bentuk penulisan
dalam Bahasa C
Jumlah Byte
yang
diperlukan
Jangkauan nilai
numerik
-128 s.d. 127
0 s.d. 255
1. Character
2. Integer
3. Floating point
(single precision)
4. Double precision
int atau signed int
atau signed
unsigned int
atau unsigned
long atau long int
atau signed long
atau signed long int
unsigned long atau
float
double
long double
4
8
10
2
4
4
2
1
1
-32768 s.d. 32767
0 s.d. 65535
-2147483648 s.d. 2147483647
0 s.d. 4294967295
3.4E-4932 s.d 1.1E4932
positip atau negatip
1.7E-308 s.d. 1.7E308
positip atau negatip
3.4E-38 s.d. 3.4E38
positip atau negatip
Beberapa Escape Character yang akan dibahas
n Cursor pindah ke kolom pertama baris berikutnya
(fungsi CR/LF, Carriage return and Line Feed)
yang lebih dikenal dengan istilah pindah baris
b Cursor mundur satu langkah pada baris yang sama
r Cursor pindah ke posisi pertama baris yang sama
(Carriage Return)
t Cursor pindah ke posisi tabulasi berikutnya
v Cursor pindah ke baris berikutnya pada posisi
kolom (X) yang sama
Beberapa Escape Character lain
a Membunyikan bell (untuk pringatan /alert)
f Ganti halaman (pada pencetakan ke printer)
0 Menyatakan karakter null, misalnya karakter
khusus sebagai tanda ‘end’ sebuah kalimat
atau string.
’ Untuk menampilkan karakter tanda petik tunggal
single quotation mark)
” Untuk menampilkan tanda petik ganda (double uotation mark)
 Untuk menempilkan garis miring terbalik (back slash)
Beberapa contoh karakter ASCII
Kode
ASCII
Kombinasi
bit
Menyatakan
Karakter
00
01
02
.
48
49
50
.
.
.
65
66
.
.
.
97
98
.
.
.
127
128
0000 0000
0000 0001
0000 0010
.
0011 0000
0011 0001
0011 0010
.
.
.
0100 0001
0100 0010
.
.
.
0110 0001
0110 0010
.
.
.
0111 1111
1000 0000
NULL
0
1
2
.
.
.
A
B
.
.
.
a
b
.
.
.

Ç
Kode
ASCII
Kombinasi
bit
Menyatakan
Karakter
128
129
.
.
160
161
.
.
171
172
.
.
192
193
.
.
224
225
.
.
254
255
1000 0000
1000 0001
.
.
1010 0000
1010 0001
.
.
1010 1011
1010 1100
.
.
1100 0000
1100 0001
.
.
1110 0000
1110 0001
.
.
1111 1110
1111 1111
Ç
ü
.
.
á
í
.
.
½
¼
.
.
+
-
.
.
_
ß
.
.
_
_
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
Spasi
!
“
#
$
%
&
‘
(
)
*
+
,
-
.
/
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
0
1
2
3
4
5
6
7
8
9
:
:
<
=
>
?
Kode
ASCII
Char
Kode
ASCII Char
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
@
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
P
Q
R
S
T
U
V
W
X
Y
Z
[

]
^
_
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
`
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
p
q
r
s
t
u
v
w
x
y
z
{
|
}
~

65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
80
81
82
83
84
85
86
87
88
89
90
P
Q
R
S
T
U
V
W
X
Y
Z
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
112
113
114
115
116
117
118
119
120
121
122
p
q
r
s
t
u
v
w
x
y
z
Keterangan untuk Nilai Numeric Integer:
int atau signed int
xxxx xxxx xxxx xxxx
Sign: 0 = positip
1 = negatip
2 BYTE
( 16 bit)
Jangkauan nilai : -32768 s.d. 32767
-32768 0 32767
Nilai negatip disimpan dalam
bentuk
two’s complement
Tipe data : integer
int atau signed int 2 BYTE
( 16 bit)
0000 0000 0000 0000 = 0
0000 0000 0000 0001 = 1
0000 0000 0000 0010 = 2
0000 0000 0000 0011 = 3
0111 1111 1111 1111 = 32767
1000 0000 0000 0000 = -32768
1000 0000 0000 0001 = -32767
1111 1111 1111 1110 = -2
1111 1111 1111 1111 = -1
32767
-32768
0
1
-3
-2
-1
2
3
32766
-32767
tipe
int
32767
bila ditambah 1
akan menjadi
-32768
-32768
bila dikurangi 1
akan menjadi
32767
1 000 0000 0000 0000 = -32768
Sign
negatip
Nilai :
one’s complement :
ditambah 1
two’s complement :
1 000 0000 0000 0000
0 111 1111 1111 1111
1 +
1 000 0000 0000 0000
bit ini
nilainya = 32768
Nilai :
one’s complement :
ditambah 1
two’s complement :
1111 1111 1111 1111
0000 0000 0000 0000
1 +
0000 0000 0000 0001
bit ini
nilainya = 1
1 111 1111 1111 1111 = -1
Pengertian One’s complement (1’s
compl.)
dan Two’s complement (2’s
compl.).
2’s
= 1’s
+ 1
0
1
1
nilai :
1’s compl :
+
1
0
1
nilai :
1’s compl :
+
1’s compl. maksudnya supaya lengkap menjadi satu
sehingga 0 pelengkapnya = 1, dan
1 pelengkapnya = 0
Sedangkan 2’s compl. = 1’s compl. ditambah satu
Soal : Berapa nilai yang tersimpan dalam 2 Byte
bilangan integer berikut ini.
0 0 0 0 0 0 0 0 1 0 0 0 1 0 1 1
Jawab : Bit paling kiri nilainya = 0, berarti nilai yang terkandung
bernilai positip.
Kemudian susun nilai-nilai setiap bit sebagai berikut :
0 0 0 0 0 0 0 0 1 0 0 0 1 0 1 1
128 64 32 16 8 4 2 1
Bit-bit yang ON nilainya : = 128 + 8 + 2 + 1
=139
Sehingga nilai yang terkandung dalam 2 Byte integer
diatas adalah : 139
Soal : Berapa nilai yang tersimpan dalam 2 Byte
bilangan integer berikut ini.
1 1 1 1 1 1 1 1 0 1 1 1 0 1 0 1
Bit paling kiri nilainya = 1, berarti nilai yang terkandung
bernilai negatip. Nilai negatip disimpan dalam bentuk
two’s complement
Jawab :
1 1 1 1 1 1 1 1 0 1 1 1 0 1 0 1Bit yang tersimpan :
One’s complement :
Two’s complement :
0 0 0 0 0 0 0 0 1 0 0 0 1 0 1 0
1
0 0 0 0 0 0 0 0 1 0 0 0 1 0 1 1
128 8 2 1
Nilai Bit yang ON = 128 + 8 + 2 + 1 = 139
Jadi nilai yang tersimpan dalam 2 Byte integer diatas = -139.
Soal : Simpan nilai 39 dalam 2 BYTE integer.
Jawab : Susun nilai-nilai bilangan biner sebagai berikut :
64 32 16 8 4 2 1
x x x x x x x
39 terdiri dari 32 + 4 + 2 + 1
Sehingga nilai 39 tersimpan dalam 2 Byte integer,
adalah :
0 0 0 0 0 0 0 0 0 0 1 0 0 1 1 1
32 4 2 1
Soal : Simpan nilai -39 dalam 2 BYTE integer.
Jawab : Susun nilai-nilai bilangan bine sebagai berikut :
64 32 16 8 4 2 1
x x x x x x x
39 terdiri dari 32 + 4 + 2 + 1
nilai 39 tersimpan dalam 2 Byte integer, adalah :
0 0 0 0 0 0 0 0 0 0 1 0 0 1 1 1
32 4 2 1
39 =
1 1 1 1 1 1 1 1 1 1 0 1 1 0 0 01’s =
1
1 1 1 1 1 1 1 1 1 1 0 1 1 0 0 12’s= - 39 =
Soal : Apa yang tercetak oleh instruksi berikut ini :
Jawab :
printf(“%i”, 50000);
Susun nilai-nilai angka biner yang totalnya cukup
untuk 50000
32768
16384
8192
4096
2048
1024
512
258
128
64
32
16
1 1 0 0 0 0 1 1 0 1 0 1 0 0 0 0
50000 merupakan gabungan (penjumlahan) dari :
32768 + 16384 + 512 + 256 + 64 + 16
Ternyata bit yang paling kiri nilainya = 1, jadi nilainya negatip
1 1 0 0 0 0 1 1 0 1 0 1 0 0 0 0
1’s = 0 0 1 1 1 1 0 0 1 0 1 0 1 1 1 1
1
0 0 1 1 1 1 0 0 1 0 1 1 0 0 0 0
8 4 2 1
32768
16384
8192
4096
2048
1024
512
258
128
64
32
16
1 1 0 0 0 0 1 1 0 1 0 1 0 0 0 0
1’s =
ditambah 1
2’s =
0 0 1 1 1 1 0 0 1 0 1 0 1 1 1 1
1
0 0 1 1 1 1 0 0 1 0 1 1 0 0 0 0
0 0 1 1 1 1 0 0 1 0 1 1 0 0 0 0
Nilai bit-bit yang ON =
8192 + 4096 + 2048 + 1024 + 128 + 32 + 16 = 15 536
sehingga : printf(“%i”, 50000);
akan mencetak : -15536
8 4 2 1
Soal : Apa yang tercetak oleh instruksi berikut ini :
Jawab :
printf(“%i”, 100000);
Susun nilai-nilai angka biner yang totalnya cukup
untuk 100000
65536
32768
16384
8192
4096
2048
1024
512
258
128
64
32
16
1 1 0 0 0 0 1 1 0 1 0 1 0 0 0 0 0
100000 merupakan gabungan (penjumlahan) dari :
65536 + 32768 + 1024 + 512 + 128
Ternyata bit yang paling kiri nilainya = 1, jadi nilainya negatip
1 0 0 0 0 1 1 0 1 0 1 0 0 0 0 0
Karena dicetak dengan format %i, yang berarti nilai inteher
2 Byte, maka yang diambil hanya 16 bit dari kanan, yaitu :
8 4 2 1
32768
16384
8192
4096
2048
1024
512
258
128
64
32
16
1’s =
ditambah 1
2’s =
0 1 1 1 1 0 0 1 0 1 0 1 1 1 1 1
1
0 1 1 1 1 0 0 1 0 1 1 0 0 0 0 0
0 1 1 1 1 0 0 1 0 1 1 0 0 0 0 0
Nilai bit-bit yang ON =
16384 + 8192 + 4096 + 2048 + 256 + 64 + 32 = 31 072
sehingga : printf(“%i”, 100000);
akan mencetak : -31072
1 0 0 0 0 1 1 0 1 0 1 0 0 0 0 0
8 4 2 1
Berapa nilai yang tersimpan dalam 2 Byte
bilangan integer berikut ini.
1 1 1 1 1 1 1 1 0 1 0 1 0 0 0 1
Latihan di Kelas
0 0 0 0 0 0 0 1 0 1 1 0 1 0 0 0a.
b.
1.
Gambarkan representasi bit-bit bila bilangan berikut ini
disimpan dalam 2 Byte integer.
2.
a. 325
b. -293
Apa yang tercetak oleh instruksi berikut ini :
a.
b.
3.
printf(“%i”, 40000);
printf(“%i”,-40000);
Berapa nilai yang tersimpan dalam 2 Byte
bilangan integer berikut ini.
1 1 1 1 1 1 1 0 1 1 0 1 0 1 0 1
Pekerjaan Rumah.
0 0 0 0 0 0 0 1 1 0 1 0 1 0 1 0a.
b.
1.
Gambarkan representasi bit-bit bila bilangan berikut ini
disimpan dalam 2 Byte integer.
2.
a. 317
b. -333
Apa yang tercetak oleh instruksi berikut ini :3.
a. printf(“%i”, 35000);
b. printf(“%i”,-35000);
4.4.1 Mencetak Konstanta Tanpa Format Pada Program C++
4.4 Mencetak Konstanta Pada Program C++
#include<iostream.h>
void main()
{
cout << “Jakarta”;
}
Dalam program diatas, ada satu instruksi mencetak sebuah nilai atau
konstanta string yaitu : cout << “Jakarta”;
Instruksi cout membutuhkan file iostream.h untuk diinclude.
Instruksi diatas akan mencetak perkataan Jakarta dilayar monitor.
Instruski cetak
Yang tercetak
di layar
cout << “Jakarta”;
cout << “A”;
cout << ‘A’;
cout << 123;
cout << 123L;
cout << 32768;
cout << 65536;
cout << -32768;
cout << 2147438647
cout << 2147438648
cout << 4294967295
cout << 4294967296
Jakarta
A
A
123
123
32768
65536
-32768
2147438647
2147438648
4294967295
0
Keterangan
Batas maksimum nilai Signed Long
int
Melampaui batas maksimum signed
long int dianggapnya unsigned
long int
Batas maksimum unsigned long int
Satu angka diatas batas
maksimum unsigned long int semua
bitnya = 0
57
Instruski cetak
Yang tercetak
di layar
cout << 123.456;
cout << 123.4567;
cout << 123.456789;
cout << 1234567.890
cout << 123E2
cout << 123.45E3
123.456
123.457
123.457
1.234567e+06
12300
123450
Keterangan
Fraction
Lebih dari 6 digit
dibulatkan keatas
Lebih dari 6 digit
4.4.2 Mencetak Konstanta Dengan Format Pada Program C++
#include<iostream.h>
void main()
{
cout << 4725;
}
123456789012345
Tercetak: 4725
Catatan-1: Angka-angka 123456789012345 yang terlihat bukan hasil cetakan.
Angka-angka itu hanya digunakan untuk membantu melihat letak hasil
cetakan.
#include<iostream.h>
#include<iomanip.h>
void main()
{
cout << setw(10);
cout << 4725;
}
123456789012345
Tercetak: 4725
Catatan-1: Angka-angka 123456789012345 yang terlihat bukan hasil cetakan.
Angka-angka itu hanya digunakan untuk membantu melihat letak hasil
cetakan.
Catatan-2: Untuk dapat menggunakan instruksi setw() perlu ditambahkan
#include<iomanip.h>
Instruksi setw( ), hanya berlaku mengatur format cetakan satu elemen
cetakan yang mengikutinya. Elemen-elemen selanjutnya tidak dipengaruhi
lagi oleh setw( ). Perhatikan contoh berikut ini.
#include<iostream.h>
#include<iomanip.h>
void main()
{
cout << setw(10);
cout << 4725 << “n” << 5678 ;
}
123456789012345
Tercetak : 4725
5678
Terlihat hanya nilai pertama yaitu 4725 yang dicetak dengan lebar10
spasi sedangkan nilai berikutnya 5678 tidak dipengaruhi lagi oleh setw()
4.4.2.3 Mencetak dengan menggunakan manipulator
#include<iostream.h>
void main()
{
cout << “ABC”;
cout << “PQR””
}
Tercetak: ABCPQR
#include<iostream.h>
void main()
{
cout << “ABC” << endl;
cout << “PQR”;
}
Tercetak: ABC
PQR
cout << “ABC”;
cout << endl << “PQR”;
cout << “ABC” << endl << “PQR”;
Turun satu baris sebelum mencetak PQR
atau sebagai berikut :
1. Penggunaan manipulator endl.
2. Penggunaan manipulator ends, dec, hex, oct
Instruksi Hasil yang tercetak
cout << “ABC” << ends << “PQR”;
cout << 29;
cout << hex << 29;
cout << hex;
cout << 29;
ABCPQR
29
1d
1d
 = tanda karakter NULL
Instruksi
cout << hex << 29 << endl;
cout << 30
cout << hex << 29 << endl;
cout << dec << 30;
cout << hex ‘A’
cout << oct << 29;
1d
1e
1d
30
A
35
pengaruh cout << hex
tetap ada sampai diganti
dengan cout << dec atau
cout << oct
Hanya nilai integer yang
dapat dicetak dalam bentuk
Hexadecimal
29 = 3*8 + 5*1
Hasil
Cetakan Keterangan
2. Penggunaan manipulator setprecision( )
Instruksi Hasil yang tercetak
cout << 123.456
cout << 123.4567
cout << 123.45678
cout << setprecision(0) << 123.456789;
cout << setprecision(1) << 123.456789;
cout << setprecision(2) << 123.456789;
cout << setprecision(3) << 123.456789;
cout << setprecision(4) << 123.456789;
cout << setprecision(5) << 123.456789;
cout << setprecision(6) << 123.456789;
cout << setprecision(7) << 123.456789;
cout << setprecision(8) << 123.456789;
cout << setprecision(9) << 123.456789;
cout << setprecision(10) << 123.456789;
cout << setprecision(11) << 123.456789;
cout << setprecision(12) << 123.456789;
123.456
123.457
123.457
1e+02
1e+02
1e+02
1e+02
123.5
123.46
123.457
123.4568
123.45679
123.456789
123.456789
123.456789
123.456789
3. Penggunaan manipulator setprecision( ) dengan menggunakan
format cetakan yang diatur dengan setiosflags(ios::fixed)
Contoh :
a.. Mencetak tanpa diformat dengan setiosflag(ios::fixed)
b. Mencetak dengan diformat dengan setiosflag(ios::fixed)
#include<iostream.h>
#include<iomanip.h>
void main()
{
cout << setprecision(12) << 123.456789;
}
Tercetak: 123.456789
#include<iostream.h>
#include<iomanip.h>
void main()
{
cout << setiosflags(ios::fixed);
cout << setprecision(12) << 123.456789;
}
Tercetak: 123.456789000000 Tercetak dengan 12 decimal point
Instruksi cetak yang didahului oleh setiosflags(ios::fixed)
cout << setprecision(0) << 123.456789;
cout << setprecision(1) << 123.456789;
cout << setprecision(2) << 123.456789;
cout << setprecision(3) << 123.456789;
cout << setprecision(4) << 123.456789;
cout << setprecision(5) << 123.456789;
cout << setprecision(6) << 123.456789;
cout << setprecision(7) << 123.456789;
cout << setprecision(8) << 123.456789;
cout << setprecision(9) << 123.456789;
cout << setprecision(10) << 123.456789;
cout << setprecision(11) << 123.456789;
cout << setprecision(12) << 123.456789;
123
123.5
123.46
123.457
123.4568
123.45679
123.456789
123.4567890
123.45678900
123.456789000
123.4567890000
123.45678900000
123.456789000000

More Related Content

What's hot

Arsitektur komputer pertemuan 6
Arsitektur komputer pertemuan 6Arsitektur komputer pertemuan 6
Arsitektur komputer pertemuan 6
Afrina Ramadhani
 
Modul teknik digital dan logika
Modul teknik digital dan logikaModul teknik digital dan logika
Modul teknik digital dan logika
Bambang Apriyanto
 
Bab 2 teknik digital
Bab 2 teknik digitalBab 2 teknik digital
Bab 2 teknik digital
Frendy Kusuma
 
Materi Rangkaian Digital I
Materi Rangkaian Digital IMateri Rangkaian Digital I
Materi Rangkaian Digital I
Amien Nuryanto
 
Operasi arithmatika dan logika
Operasi arithmatika dan logikaOperasi arithmatika dan logika
Operasi arithmatika dan logika
Hata Netral
 

What's hot (19)

2.1 sistem nombor perduaan
2.1 sistem nombor perduaan2.1 sistem nombor perduaan
2.1 sistem nombor perduaan
 
Arsitektur komputer pertemuan 6
Arsitektur komputer pertemuan 6Arsitektur komputer pertemuan 6
Arsitektur komputer pertemuan 6
 
02 aritmetika cara komputer
02 aritmetika cara komputer02 aritmetika cara komputer
02 aritmetika cara komputer
 
Bab 7 rankaian kombinasional data transmisi
Bab 7 rankaian kombinasional data transmisiBab 7 rankaian kombinasional data transmisi
Bab 7 rankaian kombinasional data transmisi
 
Modul teknik digital dan logika
Modul teknik digital dan logikaModul teknik digital dan logika
Modul teknik digital dan logika
 
Operasi aritmatika
Operasi aritmatikaOperasi aritmatika
Operasi aritmatika
 
Presentasi bab 6
Presentasi bab 6Presentasi bab 6
Presentasi bab 6
 
03 orakom - representasi data
03   orakom - representasi data03   orakom - representasi data
03 orakom - representasi data
 
Bab 2 teknik digital
Bab 2 teknik digitalBab 2 teknik digital
Bab 2 teknik digital
 
Materi Rangkaian Digital I
Materi Rangkaian Digital IMateri Rangkaian Digital I
Materi Rangkaian Digital I
 
Aritmatika biner
Aritmatika binerAritmatika biner
Aritmatika biner
 
BAB II ISI MAKALAH REPRESENTASI DATA
BAB II ISI MAKALAH REPRESENTASI DATABAB II ISI MAKALAH REPRESENTASI DATA
BAB II ISI MAKALAH REPRESENTASI DATA
 
Aritmatika Biner - Pertemuan 3
Aritmatika Biner - Pertemuan 3Aritmatika Biner - Pertemuan 3
Aritmatika Biner - Pertemuan 3
 
Octave dan Mikrokontroller Communication
Octave dan Mikrokontroller CommunicationOctave dan Mikrokontroller Communication
Octave dan Mikrokontroller Communication
 
Operasi arithmatika dan logika
Operasi arithmatika dan logikaOperasi arithmatika dan logika
Operasi arithmatika dan logika
 
Gerbang logika kombinasi
Gerbang logika kombinasiGerbang logika kombinasi
Gerbang logika kombinasi
 
Tugas b log
Tugas b logTugas b log
Tugas b log
 
Persentasi bab 6
Persentasi bab 6Persentasi bab 6
Persentasi bab 6
 
Number system
Number system Number system
Number system
 

Viewers also liked (10)

Penggunaan if dan teknik dasar bagian 3
Penggunaan if dan teknik dasar bagian 3Penggunaan if dan teknik dasar bagian 3
Penggunaan if dan teknik dasar bagian 3
 
Pengenalan c++ bagian 3
Pengenalan c++ bagian 3Pengenalan c++ bagian 3
Pengenalan c++ bagian 3
 
Pengenalan c++ bagian 2
Pengenalan c++ bagian 2Pengenalan c++ bagian 2
Pengenalan c++ bagian 2
 
Penggunaan if dan teknik dasar bagian 2
Penggunaan if dan teknik dasar bagian 2Penggunaan if dan teknik dasar bagian 2
Penggunaan if dan teknik dasar bagian 2
 
Penggunaan if dan teknik dasar bagian 1
Penggunaan if dan teknik dasar bagian 1Penggunaan if dan teknik dasar bagian 1
Penggunaan if dan teknik dasar bagian 1
 
Algoritma dan pengetahuan terkait (menghitung, konversi, dll)
Algoritma dan pengetahuan terkait (menghitung, konversi, dll) Algoritma dan pengetahuan terkait (menghitung, konversi, dll)
Algoritma dan pengetahuan terkait (menghitung, konversi, dll)
 
Dasar c++ input, proses, output
Dasar c++ input, proses, output Dasar c++ input, proses, output
Dasar c++ input, proses, output
 
Pengenalan c++ bagian 1
Pengenalan c++ bagian 1Pengenalan c++ bagian 1
Pengenalan c++ bagian 1
 
Algoritma matematika
Algoritma matematika Algoritma matematika
Algoritma matematika
 
kemonotonan dan kecekungan
kemonotonan dan kecekungankemonotonan dan kecekungan
kemonotonan dan kecekungan
 

Similar to Teori pendukung [introduction to algoritm]

AOK_-_Week_9_ALU_and_Bit_and_Byte_Representation..pdf
AOK_-_Week_9_ALU_and_Bit_and_Byte_Representation..pdfAOK_-_Week_9_ALU_and_Bit_and_Byte_Representation..pdf
AOK_-_Week_9_ALU_and_Bit_and_Byte_Representation..pdf
BrainWonderson
 
Teknik komputer jaringan(algoritma)
Teknik komputer jaringan(algoritma)Teknik komputer jaringan(algoritma)
Teknik komputer jaringan(algoritma)
Eddy_TKJ
 
Materi 4-dan-resume-materi-1-3
Materi 4-dan-resume-materi-1-3Materi 4-dan-resume-materi-1-3
Materi 4-dan-resume-materi-1-3
Ismanu Rahadi
 
Algoritma copy
Algoritma   copyAlgoritma   copy
Algoritma copy
Eddy_TKJ
 
Presentasi modul 6
Presentasi modul 6Presentasi modul 6
Presentasi modul 6
mharianto
 
Presentation1 tgs111
Presentation1 tgs111Presentation1 tgs111
Presentation1 tgs111
Sii Frc
 

Similar to Teori pendukung [introduction to algoritm] (20)

AOK_-_Week_9_ALU_and_Bit_and_Byte_Representation..pdf
AOK_-_Week_9_ALU_and_Bit_and_Byte_Representation..pdfAOK_-_Week_9_ALU_and_Bit_and_Byte_Representation..pdf
AOK_-_Week_9_ALU_and_Bit_and_Byte_Representation..pdf
 
Teknik komputer jaringan(algoritma)
Teknik komputer jaringan(algoritma)Teknik komputer jaringan(algoritma)
Teknik komputer jaringan(algoritma)
 
Teknik komputer jaringan(algoritma)
Teknik komputer jaringan(algoritma)Teknik komputer jaringan(algoritma)
Teknik komputer jaringan(algoritma)
 
Materi 4-dan-resume-materi-1-3
Materi 4-dan-resume-materi-1-3Materi 4-dan-resume-materi-1-3
Materi 4-dan-resume-materi-1-3
 
Tutorial Emulator 8086.pdf
Tutorial Emulator 8086.pdfTutorial Emulator 8086.pdf
Tutorial Emulator 8086.pdf
 
INFORMATIKA SISTEM KOMPUTER-KELAS 8.pptx
INFORMATIKA SISTEM KOMPUTER-KELAS 8.pptxINFORMATIKA SISTEM KOMPUTER-KELAS 8.pptx
INFORMATIKA SISTEM KOMPUTER-KELAS 8.pptx
 
ppt BAB 1.pptx
ppt BAB 1.pptxppt BAB 1.pptx
ppt BAB 1.pptx
 
Algoritma
AlgoritmaAlgoritma
Algoritma
 
Algoritma copy
Algoritma   copyAlgoritma   copy
Algoritma copy
 
Assembly 01
Assembly 01Assembly 01
Assembly 01
 
Representasi Data dalam Komputer
Representasi Data dalam KomputerRepresentasi Data dalam Komputer
Representasi Data dalam Komputer
 
P5-6
P5-6P5-6
P5-6
 
Sistem bilangan2
Sistem bilangan2Sistem bilangan2
Sistem bilangan2
 
Sistem bilangan3
Sistem bilangan3Sistem bilangan3
Sistem bilangan3
 
Information Mathematics Theory
Information Mathematics TheoryInformation Mathematics Theory
Information Mathematics Theory
 
Presentasi modul 6
Presentasi modul 6Presentasi modul 6
Presentasi modul 6
 
Muhammad Abrar Istiadi - How to hack #idsecconf2016 Online CTF
Muhammad Abrar Istiadi - How to hack #idsecconf2016 Online CTFMuhammad Abrar Istiadi - How to hack #idsecconf2016 Online CTF
Muhammad Abrar Istiadi - How to hack #idsecconf2016 Online CTF
 
Sistem bilangan biner
Sistem bilangan binerSistem bilangan biner
Sistem bilangan biner
 
Perancangan sistem digital
Perancangan sistem digitalPerancangan sistem digital
Perancangan sistem digital
 
Presentation1 tgs111
Presentation1 tgs111Presentation1 tgs111
Presentation1 tgs111
 

Teori pendukung [introduction to algoritm]

  • 1.
  • 2.
  • 3. Niklaus Wirth Eidgenossische Technische Hochschule Zurich, Switzerland
  • 4.
  • 5. RAM Contoh WINDOWS Mempunyai Processor contoh Intel Pentium KOMPUTER adalah alat pengolah data, dengan konstruksi elektronik, yang mempunyai, internal storage bekerja dengan bantuan Operating System menurut program yang diberikan kepadanya.
  • 6.
  • 7. misal : Intel Pentium PROCESSOR MEMORY (internal Storage) SCREEN KEYBOARD HARDDISK (external storage) RAM misal kapasitas 64 MB Input device Misal kapasitas 10 GB Output device Input & Output device
  • 8. misal : Intel Pentium Data Operating System OPERATING SYSTEM PROGRAM -------- -------- -------- -------- -------- -------- data PROCESSOR MEMORY (internal Storage) SCREEN KEYBOARD HARDDISK (external storage) data data Program RAM misal kapasitas 64 MB Input device Misal kapasitas 10 GB Output device Input & Output device
  • 9.
  • 10. 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
  • 11. 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
  • 12. 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
  • 13. 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 yang dapat menyala atau padam. Bila menyala disebut ON, dan padam disebut OFF Contoh sebuah huruf A bila 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.
  • 14. Catatan : ON OFF disini sengaja dibuat jarak, hanya agar mudah melihat jumlah bitnya ada 8 buah.
  • 15. 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 A yang dinyatakan dengan ON dan OFF nya bit-bit sebagai berikut : ON OFF selanjutnya dinyatakan dengan : 0 1 0 0 0 0 0 1
  • 16. 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 x 32 16 8 4 2 1 Bilangan Decimal Basis (Radix) = 10, karena mengenal 10 notasi atau simbol yaitu : 0, 1, 2, 3, . . . 9 x x x x 1000 100 10 1
  • 17. Binary digit (angka biner) 0 1 1 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 1 0 0 0 1 0 0 1 = 0 = 1 = 2 = 3 = 4 = 5 = 6 = 7 = 8 = 9
  • 18. Nilai yang terkandung dalam sebuah BYTE Setiap 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 )
  • 19. Nilai karakter A Ilustrasi huruf A yang disimpan dalam suatu BYTE 128 64 32 16 8 4 2 1 Sehingga karakter A, atau huruf A yang disimpan dalam satu BYTE memory akan bernilai = 65 karena bit yang ON bernilai 64 dan 1. Yang dinyatakan dengan angka biner (binary digit) menjadi : 0 1 0 0 0 0 0 1 128 64 32 16 8 4 2 1
  • 20. 128 64 32 16 8 4 2 1 A B C D E HURUF atau KARAKTER : = 65 = 66 = 67 = 68 = 69
  • 21. KOMPUTER adalah alat pengolah data, dengan konstruksi elektronik, yang mempunyai, internal storage bekerja dengan bantuan Operating System menurut program yang diberikan kepadanya.
  • 22. Operating System adalah software yang dibuat untuk mengendalikan bekerjanya komputer. Semua pekerjaan didalam komputer dikendalikan (di-control) oleh Operating System Beberapa Contoh Operating System : DOS WINDOWS WINDOWS NT UNIX LINUX XENIX MACINTOSH SUN SOLARIS
  • 23. KOMPUTER adalah alat pengolah data, dengan konstruksi elektronik, yang mempunyai, internal storage bekerja dengan bantuan Operating System menurut program yang diberikan kepadanya.
  • 24. = Langkah-langkah dalam Alagoritma Instruksi-instruksi harus tersusun secara logis Memerlukan LOGIKA yang benar PROGRAM adalah kumpulan instruksi-instruksi yang diberikan kepada komputer untuk menyelesaikan suatu tugas
  • 25. PROGRAM ditulis dalam suatu bahasa yang disebut Bahasa Pemrograman (Programming Language) Contoh Bahasa Pemrograman : COBOL FORTRAN Pascal BASIC C Java dan sebagainya Bahaca C ini yang kita gunakan untuk menerapkan Algoritma di komputer
  • 26. Tipe Data. Tipe data dasar (primitif) yang digunakan oleh Bahasa C. char atau signed char unsigned char Sebutan Tipe Data Bentuk penulisan dalam Bahasa C Jumlah Byte yang diperlukan Jangkauan nilai numerik -128 s.d. 127 0 s.d. 255 1. Character 2. Integer 3. Floating point (single precision) 4. Double precision int atau signed int atau signed unsigned int atau unsigned long atau long int atau signed long atau signed long int unsigned long atau float double long double 4 8 10 2 4 4 2 1 1 -32768 s.d. 32767 0 s.d. 65535 -2147483648 s.d. 2147483647 0 s.d. 4294967295 3.4E-4932 s.d 1.1E4932 positip atau negatip 1.7E-308 s.d. 1.7E308 positip atau negatip 3.4E-38 s.d. 3.4E38 positip atau negatip
  • 27. Beberapa Escape Character yang akan dibahas n Cursor pindah ke kolom pertama baris berikutnya (fungsi CR/LF, Carriage return and Line Feed) yang lebih dikenal dengan istilah pindah baris b Cursor mundur satu langkah pada baris yang sama r Cursor pindah ke posisi pertama baris yang sama (Carriage Return) t Cursor pindah ke posisi tabulasi berikutnya v Cursor pindah ke baris berikutnya pada posisi kolom (X) yang sama
  • 28. Beberapa Escape Character lain a Membunyikan bell (untuk pringatan /alert) f Ganti halaman (pada pencetakan ke printer) 0 Menyatakan karakter null, misalnya karakter khusus sebagai tanda ‘end’ sebuah kalimat atau string. ’ Untuk menampilkan karakter tanda petik tunggal single quotation mark) ” Untuk menampilkan tanda petik ganda (double uotation mark) Untuk menempilkan garis miring terbalik (back slash)
  • 29. Beberapa contoh karakter ASCII Kode ASCII Kombinasi bit Menyatakan Karakter 00 01 02 . 48 49 50 . . . 65 66 . . . 97 98 . . . 127 128 0000 0000 0000 0001 0000 0010 . 0011 0000 0011 0001 0011 0010 . . . 0100 0001 0100 0010 . . . 0110 0001 0110 0010 . . . 0111 1111 1000 0000 NULL 0 1 2 . . . A B . . . a b . . .  Ç Kode ASCII Kombinasi bit Menyatakan Karakter 128 129 . . 160 161 . . 171 172 . . 192 193 . . 224 225 . . 254 255 1000 0000 1000 0001 . . 1010 0000 1010 0001 . . 1010 1011 1010 1100 . . 1100 0000 1100 0001 . . 1110 0000 1110 0001 . . 1111 1110 1111 1111 Ç ü . . á í . . ½ ¼ . . + - . . _ ß . . _ _
  • 33. Keterangan untuk Nilai Numeric Integer: int atau signed int xxxx xxxx xxxx xxxx Sign: 0 = positip 1 = negatip 2 BYTE ( 16 bit) Jangkauan nilai : -32768 s.d. 32767 -32768 0 32767 Nilai negatip disimpan dalam bentuk two’s complement
  • 34. Tipe data : integer int atau signed int 2 BYTE ( 16 bit) 0000 0000 0000 0000 = 0 0000 0000 0000 0001 = 1 0000 0000 0000 0010 = 2 0000 0000 0000 0011 = 3 0111 1111 1111 1111 = 32767 1000 0000 0000 0000 = -32768 1000 0000 0000 0001 = -32767 1111 1111 1111 1110 = -2 1111 1111 1111 1111 = -1
  • 35. 32767 -32768 0 1 -3 -2 -1 2 3 32766 -32767 tipe int 32767 bila ditambah 1 akan menjadi -32768 -32768 bila dikurangi 1 akan menjadi 32767
  • 36. 1 000 0000 0000 0000 = -32768 Sign negatip Nilai : one’s complement : ditambah 1 two’s complement : 1 000 0000 0000 0000 0 111 1111 1111 1111 1 + 1 000 0000 0000 0000 bit ini nilainya = 32768 Nilai : one’s complement : ditambah 1 two’s complement : 1111 1111 1111 1111 0000 0000 0000 0000 1 + 0000 0000 0000 0001 bit ini nilainya = 1 1 111 1111 1111 1111 = -1
  • 37. Pengertian One’s complement (1’s compl.) dan Two’s complement (2’s compl.). 2’s = 1’s + 1 0 1 1 nilai : 1’s compl : + 1 0 1 nilai : 1’s compl : + 1’s compl. maksudnya supaya lengkap menjadi satu sehingga 0 pelengkapnya = 1, dan 1 pelengkapnya = 0 Sedangkan 2’s compl. = 1’s compl. ditambah satu
  • 38. Soal : Berapa nilai yang tersimpan dalam 2 Byte bilangan integer berikut ini. 0 0 0 0 0 0 0 0 1 0 0 0 1 0 1 1 Jawab : Bit paling kiri nilainya = 0, berarti nilai yang terkandung bernilai positip. Kemudian susun nilai-nilai setiap bit sebagai berikut : 0 0 0 0 0 0 0 0 1 0 0 0 1 0 1 1 128 64 32 16 8 4 2 1 Bit-bit yang ON nilainya : = 128 + 8 + 2 + 1 =139 Sehingga nilai yang terkandung dalam 2 Byte integer diatas adalah : 139
  • 39. Soal : Berapa nilai yang tersimpan dalam 2 Byte bilangan integer berikut ini. 1 1 1 1 1 1 1 1 0 1 1 1 0 1 0 1 Bit paling kiri nilainya = 1, berarti nilai yang terkandung bernilai negatip. Nilai negatip disimpan dalam bentuk two’s complement Jawab : 1 1 1 1 1 1 1 1 0 1 1 1 0 1 0 1Bit yang tersimpan : One’s complement : Two’s complement : 0 0 0 0 0 0 0 0 1 0 0 0 1 0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0 1 0 1 1 128 8 2 1 Nilai Bit yang ON = 128 + 8 + 2 + 1 = 139 Jadi nilai yang tersimpan dalam 2 Byte integer diatas = -139.
  • 40. Soal : Simpan nilai 39 dalam 2 BYTE integer. Jawab : Susun nilai-nilai bilangan biner sebagai berikut : 64 32 16 8 4 2 1 x x x x x x x 39 terdiri dari 32 + 4 + 2 + 1 Sehingga nilai 39 tersimpan dalam 2 Byte integer, adalah : 0 0 0 0 0 0 0 0 0 0 1 0 0 1 1 1 32 4 2 1
  • 41. Soal : Simpan nilai -39 dalam 2 BYTE integer. Jawab : Susun nilai-nilai bilangan bine sebagai berikut : 64 32 16 8 4 2 1 x x x x x x x 39 terdiri dari 32 + 4 + 2 + 1 nilai 39 tersimpan dalam 2 Byte integer, adalah : 0 0 0 0 0 0 0 0 0 0 1 0 0 1 1 1 32 4 2 1 39 = 1 1 1 1 1 1 1 1 1 1 0 1 1 0 0 01’s = 1 1 1 1 1 1 1 1 1 1 1 0 1 1 0 0 12’s= - 39 =
  • 42. Soal : Apa yang tercetak oleh instruksi berikut ini : Jawab : printf(“%i”, 50000); Susun nilai-nilai angka biner yang totalnya cukup untuk 50000 32768 16384 8192 4096 2048 1024 512 258 128 64 32 16 1 1 0 0 0 0 1 1 0 1 0 1 0 0 0 0 50000 merupakan gabungan (penjumlahan) dari : 32768 + 16384 + 512 + 256 + 64 + 16 Ternyata bit yang paling kiri nilainya = 1, jadi nilainya negatip 1 1 0 0 0 0 1 1 0 1 0 1 0 0 0 0 1’s = 0 0 1 1 1 1 0 0 1 0 1 0 1 1 1 1 1 0 0 1 1 1 1 0 0 1 0 1 1 0 0 0 0 8 4 2 1
  • 43. 32768 16384 8192 4096 2048 1024 512 258 128 64 32 16 1 1 0 0 0 0 1 1 0 1 0 1 0 0 0 0 1’s = ditambah 1 2’s = 0 0 1 1 1 1 0 0 1 0 1 0 1 1 1 1 1 0 0 1 1 1 1 0 0 1 0 1 1 0 0 0 0 0 0 1 1 1 1 0 0 1 0 1 1 0 0 0 0 Nilai bit-bit yang ON = 8192 + 4096 + 2048 + 1024 + 128 + 32 + 16 = 15 536 sehingga : printf(“%i”, 50000); akan mencetak : -15536 8 4 2 1
  • 44. Soal : Apa yang tercetak oleh instruksi berikut ini : Jawab : printf(“%i”, 100000); Susun nilai-nilai angka biner yang totalnya cukup untuk 100000 65536 32768 16384 8192 4096 2048 1024 512 258 128 64 32 16 1 1 0 0 0 0 1 1 0 1 0 1 0 0 0 0 0 100000 merupakan gabungan (penjumlahan) dari : 65536 + 32768 + 1024 + 512 + 128 Ternyata bit yang paling kiri nilainya = 1, jadi nilainya negatip 1 0 0 0 0 1 1 0 1 0 1 0 0 0 0 0 Karena dicetak dengan format %i, yang berarti nilai inteher 2 Byte, maka yang diambil hanya 16 bit dari kanan, yaitu : 8 4 2 1
  • 45. 32768 16384 8192 4096 2048 1024 512 258 128 64 32 16 1’s = ditambah 1 2’s = 0 1 1 1 1 0 0 1 0 1 0 1 1 1 1 1 1 0 1 1 1 1 0 0 1 0 1 1 0 0 0 0 0 0 1 1 1 1 0 0 1 0 1 1 0 0 0 0 0 Nilai bit-bit yang ON = 16384 + 8192 + 4096 + 2048 + 256 + 64 + 32 = 31 072 sehingga : printf(“%i”, 100000); akan mencetak : -31072 1 0 0 0 0 1 1 0 1 0 1 0 0 0 0 0 8 4 2 1
  • 46. Berapa nilai yang tersimpan dalam 2 Byte bilangan integer berikut ini. 1 1 1 1 1 1 1 1 0 1 0 1 0 0 0 1 Latihan di Kelas 0 0 0 0 0 0 0 1 0 1 1 0 1 0 0 0a. b. 1. Gambarkan representasi bit-bit bila bilangan berikut ini disimpan dalam 2 Byte integer. 2. a. 325 b. -293 Apa yang tercetak oleh instruksi berikut ini : a. b. 3. printf(“%i”, 40000); printf(“%i”,-40000);
  • 47. Berapa nilai yang tersimpan dalam 2 Byte bilangan integer berikut ini. 1 1 1 1 1 1 1 0 1 1 0 1 0 1 0 1 Pekerjaan Rumah. 0 0 0 0 0 0 0 1 1 0 1 0 1 0 1 0a. b. 1. Gambarkan representasi bit-bit bila bilangan berikut ini disimpan dalam 2 Byte integer. 2. a. 317 b. -333 Apa yang tercetak oleh instruksi berikut ini :3. a. printf(“%i”, 35000); b. printf(“%i”,-35000);
  • 48. 4.4.1 Mencetak Konstanta Tanpa Format Pada Program C++ 4.4 Mencetak Konstanta Pada Program C++ #include<iostream.h> void main() { cout << “Jakarta”; } Dalam program diatas, ada satu instruksi mencetak sebuah nilai atau konstanta string yaitu : cout << “Jakarta”; Instruksi cout membutuhkan file iostream.h untuk diinclude. Instruksi diatas akan mencetak perkataan Jakarta dilayar monitor.
  • 49. Instruski cetak Yang tercetak di layar cout << “Jakarta”; cout << “A”; cout << ‘A’; cout << 123; cout << 123L; cout << 32768; cout << 65536; cout << -32768; cout << 2147438647 cout << 2147438648 cout << 4294967295 cout << 4294967296 Jakarta A A 123 123 32768 65536 -32768 2147438647 2147438648 4294967295 0 Keterangan Batas maksimum nilai Signed Long int Melampaui batas maksimum signed long int dianggapnya unsigned long int Batas maksimum unsigned long int Satu angka diatas batas maksimum unsigned long int semua bitnya = 0 57
  • 50. Instruski cetak Yang tercetak di layar cout << 123.456; cout << 123.4567; cout << 123.456789; cout << 1234567.890 cout << 123E2 cout << 123.45E3 123.456 123.457 123.457 1.234567e+06 12300 123450 Keterangan Fraction Lebih dari 6 digit dibulatkan keatas Lebih dari 6 digit
  • 51. 4.4.2 Mencetak Konstanta Dengan Format Pada Program C++ #include<iostream.h> void main() { cout << 4725; } 123456789012345 Tercetak: 4725 Catatan-1: Angka-angka 123456789012345 yang terlihat bukan hasil cetakan. Angka-angka itu hanya digunakan untuk membantu melihat letak hasil cetakan.
  • 52. #include<iostream.h> #include<iomanip.h> void main() { cout << setw(10); cout << 4725; } 123456789012345 Tercetak: 4725 Catatan-1: Angka-angka 123456789012345 yang terlihat bukan hasil cetakan. Angka-angka itu hanya digunakan untuk membantu melihat letak hasil cetakan. Catatan-2: Untuk dapat menggunakan instruksi setw() perlu ditambahkan #include<iomanip.h>
  • 53. Instruksi setw( ), hanya berlaku mengatur format cetakan satu elemen cetakan yang mengikutinya. Elemen-elemen selanjutnya tidak dipengaruhi lagi oleh setw( ). Perhatikan contoh berikut ini. #include<iostream.h> #include<iomanip.h> void main() { cout << setw(10); cout << 4725 << “n” << 5678 ; } 123456789012345 Tercetak : 4725 5678 Terlihat hanya nilai pertama yaitu 4725 yang dicetak dengan lebar10 spasi sedangkan nilai berikutnya 5678 tidak dipengaruhi lagi oleh setw()
  • 54. 4.4.2.3 Mencetak dengan menggunakan manipulator #include<iostream.h> void main() { cout << “ABC”; cout << “PQR”” } Tercetak: ABCPQR #include<iostream.h> void main() { cout << “ABC” << endl; cout << “PQR”; } Tercetak: ABC PQR cout << “ABC”; cout << endl << “PQR”; cout << “ABC” << endl << “PQR”; Turun satu baris sebelum mencetak PQR atau sebagai berikut : 1. Penggunaan manipulator endl.
  • 55. 2. Penggunaan manipulator ends, dec, hex, oct Instruksi Hasil yang tercetak cout << “ABC” << ends << “PQR”; cout << 29; cout << hex << 29; cout << hex; cout << 29; ABCPQR 29 1d 1d  = tanda karakter NULL
  • 56. Instruksi cout << hex << 29 << endl; cout << 30 cout << hex << 29 << endl; cout << dec << 30; cout << hex ‘A’ cout << oct << 29; 1d 1e 1d 30 A 35 pengaruh cout << hex tetap ada sampai diganti dengan cout << dec atau cout << oct Hanya nilai integer yang dapat dicetak dalam bentuk Hexadecimal 29 = 3*8 + 5*1 Hasil Cetakan Keterangan
  • 57. 2. Penggunaan manipulator setprecision( ) Instruksi Hasil yang tercetak cout << 123.456 cout << 123.4567 cout << 123.45678 cout << setprecision(0) << 123.456789; cout << setprecision(1) << 123.456789; cout << setprecision(2) << 123.456789; cout << setprecision(3) << 123.456789; cout << setprecision(4) << 123.456789; cout << setprecision(5) << 123.456789; cout << setprecision(6) << 123.456789; cout << setprecision(7) << 123.456789; cout << setprecision(8) << 123.456789; cout << setprecision(9) << 123.456789; cout << setprecision(10) << 123.456789; cout << setprecision(11) << 123.456789; cout << setprecision(12) << 123.456789; 123.456 123.457 123.457 1e+02 1e+02 1e+02 1e+02 123.5 123.46 123.457 123.4568 123.45679 123.456789 123.456789 123.456789 123.456789
  • 58. 3. Penggunaan manipulator setprecision( ) dengan menggunakan format cetakan yang diatur dengan setiosflags(ios::fixed) Contoh : a.. Mencetak tanpa diformat dengan setiosflag(ios::fixed) b. Mencetak dengan diformat dengan setiosflag(ios::fixed) #include<iostream.h> #include<iomanip.h> void main() { cout << setprecision(12) << 123.456789; } Tercetak: 123.456789 #include<iostream.h> #include<iomanip.h> void main() { cout << setiosflags(ios::fixed); cout << setprecision(12) << 123.456789; } Tercetak: 123.456789000000 Tercetak dengan 12 decimal point
  • 59. Instruksi cetak yang didahului oleh setiosflags(ios::fixed) cout << setprecision(0) << 123.456789; cout << setprecision(1) << 123.456789; cout << setprecision(2) << 123.456789; cout << setprecision(3) << 123.456789; cout << setprecision(4) << 123.456789; cout << setprecision(5) << 123.456789; cout << setprecision(6) << 123.456789; cout << setprecision(7) << 123.456789; cout << setprecision(8) << 123.456789; cout << setprecision(9) << 123.456789; cout << setprecision(10) << 123.456789; cout << setprecision(11) << 123.456789; cout << setprecision(12) << 123.456789; 123 123.5 123.46 123.457 123.4568 123.45679 123.456789 123.4567890 123.45678900 123.456789000 123.4567890000 123.45678900000 123.456789000000