Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
1
Bab 05 Tipe Data dan Mengisi Variabel
5.1 Bab 05 Tipe Data dan Mengisi Variabel 67
2
C C++ #include <stdio.h> void main() { int A, B, T; A = 5;
5.2 Menyiapkan dan Mengisi Variabel (Assignment Statement). C C++ #include <stdio.h> void main() { int A, B, T; A = 5; B = 2; T = A + B; printf(“%i”, T); } #include <iostream.h> void main() { int A, B, T; A = 5; B = 2; T = A + B; cout << T; } int A; A = 5; Menyiapkan variabel A (isinya ada tapi tidak diketahui) Mengisi variabel A (diisi dengan suatu nilai yang dikehendaki dalam contoh ini nilai = 5 ) 67
3
A = 5; maksudnya megisi variabel A dengan nilai 5.
5.3 A = 5; maksudnya megisi variabel A dengan nilai 5. B = 2; maksudnya mengisi variabel B dengan nilai 2. A = B; maksudnya mengisi variabel A dengan nilai yang dimiliki oleh B T = A + B; maksudnya mengisi variabel T dengan nilai hasil penambahan nilai A dan nilai B. Catatan : nilai A maksudnya isi varibel A 67
4
J a k a r t a 69 5.2.1. Mengisi dan Mencetak Variabel String
Pada Program C / C++ 5.4 C C++ char S[10] = “Jakarta”; printf(“%s”, S); char S[10] = “Jakarta”; cout << S; Tercetak : Jakarta Tercetak : Jakarta Dalam memory : S J a k a r t a \0 \0 \0 karakter NULL 69
5
Error 69 #include<stdio.h> void main() { char S[10];
5.5 #include<stdio.h> void main() { char S[10]; S = “Jakarta”; printf(“%s”, S); } Error #include<stdio.h> #include<string.h> void main() { char S[10]; strcpy(S,“Jakarta”); printf(“%s”, S); } Lihat halaman 24 String copy Tercetak : Jakarta 69
6
5.6
7
5.7 5.3. Mengisi dan Mencetak Variabel Character ( char ) C C++ #include<stdio.h> void main() { char C; C = ‘A’; printf(“%c”, C ); } #include<iostream.h> void main() { char C; C = ‘A’; cout << C; } Tercetak : A Tercetak : A 128 64 32 16 8 4 2 1 Karakter = A Nilai desimal = 65 C 70
8
71 x x x x x x x x sign -128 127 x x x x x x x x
Mengisi dan Mencetak isi variabel tipe char, pada program C 5.8 Bila dianggap numerik sign : 0 nilai positip 1 nilai negatip dalam bentuk two’s complement 1. char atau signed char x x x x x x x x sign -128 127 2. unsigned char Bila isinya dianggap sebagai nilai numerik, maka nilai yang dapat ditampung berkisar dari : 0 sampai dengan 255 x x x x x x x x 71
9
71 Lebih jelasnya dapat digambarkan sebagai berkut : 00000000 00000001
5.9 2) signed char 3) unsigned char 4) Kode ASCII 2) signed char 3) unsgned char 4) Kode ASCII 1) data 8 bit 1) data 8 bit . 1 . 49 50 65 66 97 98 127 1 . 49 50 65 66 97 98 127 null 1 2 . A B a b . -128 -127 . -96 -95 -85 -84 -64 -63 -1 128 129 . 160 161 171 172 192 193 255 Ç ü . á í + - _ 71
10
0 1 0 0 0 0 0 1 67 #include<stdio.h> void main()
Beberapa contoh program C yang memperlihatkan berbedaan tipe signed char dan unsigned char. 5.10 1. #include<stdio.h> void main() {signed char C = ‘A’; printf(“%c\n”, C); printf(“%i\n”, C); } #include<stdio.h> void main() { unsigned char C = ‘A’; printf(“%c\n”, C); printf(“%i\n”, C); } Tercetak : A 65 Tercetak : A 65 128 64 32 16 8 4 2 1 Karakter = A Nilai desimal = 65 C Untuk nilai decimal < 128 signed dan unsigned bernilai numerik sama 67
11
0 1 0 0 0 0 0 1 67 2. #include<stdio.h> #include<stdio.h>
5.11 #include<stdio.h> void main() {signed char C = 65; printf(“%c\n”, C); printf(“%i\n”, C); } #include<stdio.h> void main() { unsigned char C = 65; printf(“%c\n”, C); printf(“%i\n”, C); } Tercetak : A 65 Tercetak : A 65 128 64 32 16 8 4 2 1 Karakter = A Nilai desimal = 65 C 67
12
5.12 3. #include<stdio.h> void main() {signed char C = 192; printf(“%c\n”, C); printf(“%i\n”, C); } #include<stdio.h> void main() { unsigned char C = 192; printf(“%c\n”, C); printf(“%i\n”, C); } Tercetak : + -64 Tercetak : + 192 128 64 32 16 8 4 2 1 = 192 = 1’s complement dari 192 bernilai = 63 1 + 1’s compl + 1 = 2’s compl. = 2’s complement dari 192 bernilai = 64 72
13
4. #include<stdio.h> void main() {signed char C = 255; printf(“%c\n”, C); printf(“%i\n”, C); } #include<stdio.h> void main() { unsigned char C = 255; printf(“%c\n”, C); printf(“%i\n”, C); } 5.13 Tercetak : _ -1 Tercetak : _ 255 128 64 32 16 8 4 2 1 = 255 = 1’s complement dari 255 bernilai = 0 1 + 1’s compl + 1 = 2’s compl. = 2’s complement dari 255 bernilai = 1 72
14
Beberapa contoh hasil cetakan data dengan tipe char atau signed char dicetak dengan berbagai macam format. 5.14 dicetak dengan format hasil yang tercetak Isi variabel C Keterangan %c %i atau %d %X %x %li %f A 65 41 error char C = ‘A’; atau dengan char C = 65; nilai ASCII karakter A = 65 niliai Hexadecimal karaktaer A = 41 tidak bisa dicetak dengan format floating point 73
15
4 1 73 %c %i atau %d %X %x %li %f A 65 41 error char C = ‘AB’; 5.15
dicetak dengan format hasil yang tercetak Isi variabel C Keterangan %c %i atau %d %X %x %li %f A 65 41 error char C = ‘AB’; nilai ASCII karakter A = 65 niliai Hexadecimal karaktaer A = 41 tidak bisa dicetak dengan format floating point Bila ditulis 2 karakter, maka yang diambil hanyalah karakter pertama 73
16
4 1 73 %c %i atau %d %X %x %li %f } 125 7D 7d error char C = 125; 5.16
dicetak dengan format hasil yang tercetak Isi variabel C Keterangan %c %i atau %d %X %x %li %f } 125 7D 7d error char C = 125; 73
17
4 1 73 %c %i atau %d %X %x -1 FFFF ffff char C = 255; char C = 32767;
5.17 dicetak dengan format hasil yang tercetak Isi variabel C Keterangan %c %i atau %d %X %x -1 FFFF ffff char C = 255; atau dengan char C = 32767; Mencetak spasi = 255 = 32767 Untuk %i, %X data dianggap 2 byte yaitu tipe int. 73
18
5.18 Diambil 8 bit terakhir karena disimpan dalam tipe char dicetak sebagai Nilai karakter numeric ASCII Nilai yang akan disimpan Binary digit (bit) nilai yang akan disimpan 65 127 128 255 32767 32768 65535 65536 65 127 -128 -1 A Ç _ 74
19
5.4. Mengisi dan Mencetak isi Sebuah Variabel Numerik Integer
5.19 C C++ #include<stdio.h> void main() { int N = 65; printf(“%i”, N); } #include<iostream.h> void main() { int N = 65; cout << N; } untuk nilai integer, digunakan format “%i” atau “%d” Pada program C++, nilai variabel integer yang dapat dicetak berada dalam batas : s.d Java public class Contoh01 { public static void main(String args[]) { int N = 65 System.out.println(N); } Ketiga program diatas, akan mencetak sebuah nilai 65 dilayar monitor 77
20
77 Beberapa Contoh Pencetakan Variabel Numerik khusus pada program C
5.20 #include<stdio.h> void main() { unsigned int N = 65; printf(“%u”, N); } #include<stdio.h> void main() { float F = 25.75 printf(“%f”, F); } tercetak : 65 tercetak : #include<stdio.h> void main() { long int N = 65; printf(“%li”, N); } #include<stdio.h> void main() { double D = 25.75; printf(“%f”, D); } tercetak : 65 tercetak : 77
21
xxxx xxxx xxxx xxxx sign xxxx xxxx xxxx xxxx 78
Mengisi dan Mencetak isi Variabel Numerik Integer pada program C 5.21 1. int atau signed int (numerik integer bertanda) 2 Byte ( 16 bit) xxxx xxxx xxxx xxxx -32768 32767 sign 2. unsigned int (numerik integer tanpa tanda) 2 Byte ( 16 bit) xxxx xxxx xxxx xxxx 65535 78
22
79 xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx sign : 0 = positip
3. long atau long int atau signed long int 5.22 4 Byte ( 32 bit) xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx sign : 0 = positip 1 = negatip dalam bentik two’s complement 4. unsigned long int 4 Byte ( 32 bit) xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx 79
23
5.4.1.1 Mengisi dan Mencetak isi Variabel Numerik Integer
tipe int atau signed int dan unsigned int pada program C 5.23 1. #include<stdio.h> void main() {signed int N = 65; printf(“%i\n”, N); printf(“%u\n”, N); printf(“%c\n”, N); printf(‘%X\n”, N); } #include<stdio.h> void main() { unsigned int N = 65; printf(“%i\n”, N); printf(“%u\n”, N); printf(“%c\n”, N); printf(“%X\n”, N); } Tercetak : 65 65 A 41 Tercetak : 65 65 A 41 N Catatan: Hexadecimal dari 65 sebenarnya adalah tapi yang dicetak hanya 4 1 80
24
0000 0011 0100 0001 80 N 5.24 2. #include<stdio.h>
void main() { unsigned int N = 833; printf(“%i\n”, N); printf(“%u\n”, N); printf(“%c\n”, N); printf(“%X\n”, N); } #include<stdio.h> void main() {signed int N = 833; printf(“%i\n”, N); printf(“%u\n”, N); printf(“%c\n”, N); printf(‘%X\n”, N); } Tercetak : 833 833 A 341 Tercetak : 833 833 A 341 N Yang dicetak dengan format %c (karakter) hanyalah 8 bit paling kanan atau satu byte yang paling kanan 80
25
81 5.25 #include<stdio.h> void main() {signed int N; N = 32768;
3. #include<stdio.h> void main() {signed int N; N = 32768; printf(“%i\n”, N); printf(“%u\n”, N); printf(‘%X\n”, N); } 5.25 Tercetak : 32768 8000 4. #include<stdio.h> void main() {signed int N; N = 65535; printf(“%i\n”, N); printf(“%u\n”, N); printf(‘%X\n”, N); } Tercetak : -1 65535 FFFF 81
26
81 5.26 %u %i Diambil 32 bit terakhir karena disimpan dalam
tipe signed int atau unsinged int 5.26 Yang tercetak bila dicetak dengan %u %i Nilai yang akan disimpan Binary digit (bit) nilai yang akan disimpan 65 32767 32768 65535 65536 65546 98304 65 32767 -32768 -1 10 65 32767 32768 65535 10 81
27
82 5.4.1.2 Mengisi dan Mencetak isi Variabel Numerik
Integer tipe long int atau signed long int dan unsigned long int pada program C 5.27 Batas nilai untuk signed long int adalah : , dan batas nilai untuk unsigned long int adalah : 1. #include<stdio.h> void main() {signed long int N; N = 65; printf(“%i\n”, N); printf(“%u\n”, N); printf(“%li\n”, N); printf(“%lu\n”, N); printf(“%c\n”, N); printf(‘%X\n”, N); } Tercetak : 65 65 A 41 82
28
Signed long int N; N = 65; 82 5.28 Nilai yang disimpan kedalam N = 65
Binary digit untuk nilai 65 = Disimpan dalam 4 Byte signed long int menjadi : 5.28 #include<stdio.h> void main() {signed long int N; N = 65; printf(“%i\n”, N); printf(“%u\n”, N); printf(“%li\n”, N); printf(“%lu\n”, N); printf(“%c\n”, N); printf(‘%X\n”, N); } %c %i atau %u atau %X %li atau %lu Bila dicetak denganformat %c, (karakter), maka hanya isi satu byte paling kanan yang diambil untuk dicetak. Bila dicetak dengan %i, %d, %u, atau %X maka hanya 2 byte paling kanan yang diambil untuk dicetak. 82
29
83 2. signed long int N; N = 2147483647; printf(“%i\n”, N); Tercetak :
printf(“%u\n”, N); printf(“%li\n”, N); printf(“%lu\n”, N); printf(‘%X\n”, N);} 5.29 Tercetak : -1 65535 FFFF : bit = Tersimpan sebagai : Yang dicetak dengan: -1 %i %u %X %li %lu 65535 F F F F 83
30
83 3. signed long int N; N = -2147483648; Tercetak :
5.30 3. signed long int N; N = ; printf(“%i\n”, N); printf(“%u\n”, N); printf(“%li\n”, N); printf(“%lu\n”, N); printf(‘%X\n”, N);} Tercetak : : bit = Tersimpan sebagai : Yang dicetak dengan: %i %u %X %li %lu 83
31
84 4294967295 = batas tertinggi nilai 5.31 unsigned long int 4.
signed long int N; N = ; printf(“%i\n”, N); printf(“%u\n”, N); printf(“%li\n”, N); printf(“%lu\n”, N); printf(‘%X\n”, N);} Tercetak : -1 65535 FFFF : bit = Tersimpan sebagai : -1 65535 F F F F Yang dicetak dengan: %i %u %X %li %lu 84
32
84 5. signed long int N; N = 4294967296; printf(“%i\n”, N); Tercetak :
5.32 5. signed long int N; N = ; printf(“%i\n”, N); printf(“%u\n”, N); printf(“%li\n”, N); printf(“%lu\n”, N); printf(‘%X\n”, N);} Tercetak : : bit = Tersimpan sebagai : Yang dicetak dengan: %i %u %X %li %lu 84
33
5.4.2. Mengisi dan Mencetak isi variabel numeric integer,
5.33 Mengisi dan Mencetak isi variabel numeric integer, pada program C++ Sama dengan tipe variabel numeric integer pada bahasa C, pada C++ , tipe numeric integer adalah : signed int atau cukup ditulis :int unsigned int, signed long int, dan unsigned long int. Batas nilai yang disimpanpun sama yaitu : signed int : dari unsigned int : dari signed long int : dari unsigned long int : dari Perbedaan C++ dengan C, adalah pada C++, hasil yang tercetak tergantung pada tipe variabel dimana data tersebut disimpan. Perhatikan beberapa contoh berikut ini : 85
34
85 5.4.2.1 Mengisi dan Mencetak isi Variabel Numerik
5.34 Mengisi dan Mencetak isi Variabel Numerik Integer tipe int atau signed int dan unsigned int pada program C++ menggunakan signed int menggunakan unsigned int 1. #include<iostream.h> void main() { signed int N; N = 65; cout << N; } #include<iostream.h> void main() { unsigned int N; N = 65; cout << N; } Tercetak : 65 Tercetak : 65 85
35
85 menggunakan signed int menggunakan unsigned int 2.
5.35 menggunakan signed int menggunakan unsigned int 2. #include<iostream.h> void main() { signed int N; N = 32768; cout << N; } #include<iostream.h> void main() { unsigned int N; N = 32768; cout << N; } Tercetak : Tercetak : Batas tertinggi nilia signed int adalah 85
36
86 menggunakan signed int menggunakan unsigned int 3.
5.36 menggunakan signed int menggunakan unsigned int 3. #include<iostream.h> void main() { signed int N; N = 65535; cout << N; } #include<iostream.h> void main() { unsigned int N; N = 65535; cout << N; } Tercetak : -1 Tercetak : Nilai tertinggi yang dapat disimpan dalam : signed int adalah : 32767 dan pada unsigned int adalah Bagaimana bit-bit disimpan dalam 2 Byte memory dapat dilihat pada sub bab 86
37
86 menggunakan signed long int menggunakan unsigned long int 1.
5.37 Mengisi dan Mencetak isi Variabel Numerik Integer tipe signed long int dan unsigned long int pada program C++ menggunakan signed long int menggunakan unsigned long int 1. #include<iostream.h> void main() { signed long int N; N = ; cout << N; } #include<iostream.h> void main() { unsigned long int N; N = ; cout << N; } Tercetak : Tercetak : 86
38
86 #include<iostream.h> void main() { signed long int N;
5.38 menggunakan signed long int menggunakan unsigned long int 2. #include<iostream.h> void main() { signed long int N; N = ; cout << N; } #include<iostream.h> void main() { unsigned long int N; N = ; cout << N; } Tercetak : -1 Tercetak : Nilai tertinggi yang dapat disimpan dalam : signed long int adalah : dan pada unsigned long int adalah : Bagaimana bit-bit disimpan dalam 4 Byte memory dapat dilihat pada sub bab 86
39
87 5.5. Mengisi dan Mencetak isi Variabel Numerik
5.39 5.5. Mengisi dan Mencetak isi Variabel Numerik Floating Point float dan double Data floating point dalam Bahasa C dan C++, dibagi 2 macam yaitu : 1. Tipe float : 4 Byte memory Menampung nilai : 3.4E E38 baik positip maupun negatip 2. Tipe double : a. double : b. long double : 8 Byte memory Menampung Nilai :1.7E E308 baik positip nmaupun negatip 10 Byte memory Menempung nilai : 3.4E E4932 baik positip maupun negatip 87
40
87 Tercetak : 27.500000 Tercetak : 27.5 C C++ Tercetak : 27.500000
5.40 Contoh penggunaan : C C++ #include<stdio.h> void main() { float F = 27.5; printf(“%f”, F); } #include<iostream.h> void main() { float F = 27.5; cout << F; } Tercetak : Tercetak : 27.5 C C++ #include<stdio.h> void main() { double D = 27.5; printf(“%f”, D); } #include<iostream.h> void main() { double D = 27.5; cout << D; } Tercetak : Tercetak : 27.5 Format hasil cetakan yang lebih rinci dapat dilihat pada Bab 4, mencetak nilai konstanta floating point 87
41
4.8 Soal Latihan Mandiri 88 I. Pemahaman Mengenai Pemilihan Tipe Data.
5.41 Soal Latihan Mandiri I. Pemahaman Mengenai Pemilihan Tipe Data. 1. Sebutkan bermacam-macam tipe data standard yang termasuk dalam tipe integer, serta sebutkan jumlah byte yang diperlukan, dan jangkauan (rentang) nilai yang dapat ditampung oleh masing-masing tipe data tersebut. 2. Sebutkan format untuk mencetak nilai integer. 3. Sebutkan jumlah byte yang diperlukan untuk menyimpan data tipe float (floating point) serta rentang nilai yang dapat ditampung oleh tipe tersebut. Sebutkan format untuk mencetak nilai untuk tipe data float 4. Sebutkan format untuk mencetak nilai untuk tipe data float 88
42
5.42 5. Untuk menyimpan data Gaji Pegawai, pilih salah satu tipe data berikut ini yang sebaiknya digunakan : 1) int 2) long int 3) float dan berikan alasan memilih tipe data tersebut 6. Untuk menyimpan jumlah penduduk di Indonesia, pilih salah satu tipe data berikut iniyangsebaiknya digunakan : 3) float dan berikan alasan memilih tipe data tersebut. 7. Untuk menghitung jumlah huruf yang digunakan untuk memberi nama seseorang, pilih salah satu tipe data berikut ini yang sebaiknya digunakan : 1) char 2) int 3) long int dan berikan alasan memilih tipe data tersebut. 88
43
5.43 II. Pemahaman mengenai nilai yang tersimpan dalam sebuah tipe data tertentu. 1. Gambarkan bit-bit isi variabel A, yang dibuat dan diisi dengan instruksi sebagai berikut : a. int A; A = 25; b. int A; A = -97; c. char A; A = ‘C’; d. char A; A = 175; 2. Berapa nilai numeric isi variabel A yang dibuat dengan int A, bila komposisi bit bit isi variabel tersebut digambarkan sebagai berikut : a. b. 88
44
0 1 0 0 0 0 1 1 88 a. printf(“%c”, A); b. printf(“%i”, A);
5.44 3. Variabel A yang dibuat dengan char A; komposisi bit-bit isi variabel tersebut digambarkan sebagai berikut : Apa yang tercetak bila dicetak dengan instruksi : a. printf(“%c”, A); b. printf(“%i”, A); c. printf(“%X”, A); d. printf(“%o”, A); 88
45
0 1 1 0 0 0 0 1 88 a. printf(“%c”, A); b. printf(“%i”, A);
5.45 4. Variabel A yang dibuat dengan char A; komposisi bit-bit isi variabel tersedut digambarkan sebagai berikut : Apa yang tercetak bila dicetak dengan instruksi : a. printf(“%c”, A); b. printf(“%i”, A); c. printf(“%X”, A); d. printf(“%o”, A); 88
46
Bersambung ke Bab-6 halaman 89
5.46 Bersambung ke Bab-6 halaman 89 88
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.