Variabel
(TIB21 –PEMROGRAMAN DASAR)
Pertemuan 3, 4
Sub-CPMK
• Mahasiswa mampu mendeklarasikan variabel dan penugasan
sesuai dengan peruntukannya (C3, A3)
Materi
• Tipe Data
• Deklarasi
• Inisialisasi
• Enumerasi
• Penugasan
• Record
Perhatian
• Tidak disarankan copy-paste kode program dari presentasi ini,
karena ada beberapa symbol yang dianggap sebagai Unicode
oleh editor yang anda gunakan, sehingga akan dianggap
sebagai symbol yang salah oleh compiler, sebaiknya diketik
ulang saja
• Pembahasan C++ dan Pascal pada materi ini bukan materi
utama, hanya sebagai pembanding
1.
Tipe Data
1.1 Variabel
• Variabel merupakan penyimpanan data
• Pada pemrograman, variabel akan disimpan pada alamat
memory pada lokasi yang sesuai dengan panjang datanya
• Karena itu variabel pada pemrograman harus dideklarasikan
terlebih dahulu untuk mengalokasikan alamat memory sebagai
tempat penyimpanan data dari variable tersebut
1.2. Ketentuan penamaan variabel
• Tidak boleh diawali dengan angka
• Terdiri dari satu kata, tidak boleh dipisahkan dengan spasi
• Tidak menggunakan karakter symbol kecuali underscore
• Tidak Menggunakan keyword
1.3. Alokasi Memori
• Alokasi Memory memerlukan panjang Data dan bagaimana
data tersebut diperlakukan, sehingga tidak terjadi kerancuan
pada pemanggilan maupun penyimpanan
• Panjang data dan perlakuan data tergantung pada jenis data
• Karena itu variabel harus dideklarasikan sesuai dengan jenis
datanya
1.4. Tipe Data
• Tipe data :
– Nilai yang mungkin terisi ke variabel
• Variabel agar dapat digunakan harus dideklarasikan sesuai
dengan tipe data yang akan ditampungnya
• Suatu variabel tidak dapat menampung data yang tidak sesuai
dengan tipe data peruntukannya
• Ada dua macam tipe data
A. Tipe data sederhana/primitif
B. Tipe data bentukan
TMSM - Introduction to Data Structure 9
1.4.1. Tipe Data Sederhana
Merupakan tipe data bawaan dari bahasa pemrograman.
Beberapa tipe data primitif (ada yang menyebutnya tipe data sederhana) yang umum
terdapat pada berbagai bahasa pemrograman
• Boolean → Tipe data yang hanya memperbolehkan dua nilai 1/0 atau TRUE/FALSE saja
• Character → menampung 8 bit data yang diterjemahkan menjadi karakter, Character
termasuk tipe data integer
• Integer → bilangan bulat, Terdapat beberapa jenis bilangan integer berdasarkan
panjang bit nya: Byte, short integer, integer, long integer
• Pecahan → bilangan pecahan, umumnya direpresentasikan dalam bentuk floating
point, berdasarkan panjang dan ketelitiannya, floating point dapat dibagi menjadi
single precision (32 bit) dan double precision (64 bit)
TMSM - Introduction to Data Structure 10
1.4.2.
Tipe Data Bentukan
• Tipe Data bentukan adalah tipe data yang dibentuk dari tipe
data lainnya.
• Tipe data ini dibentuk menjadi struktur
• Dapat berisi satu atau lebih field dengan tipe data yang sama
ataupun tipe data yang berbeda
1.4.3 Tipe Data
Pada 4th generation Language
• Pada 4th generation language seperti Phyton, deklarasi variable
sudah tidak diperlukan lagi, setiap data ketika diinisialisasi akan
langsung ditentukan tipe datanya oleh compiler
• kemudahan lain dari 4th generation language adalah tipe data
yang dapat berubah-ubah tanpa memberi perintah untuk
melakukan casting data seperti pada 3th generation language
• Sebagai Bahasa pemrograman genereasi 4, tipe data dari suatu
variable pada phyton otomatis di deklarasaikan ketika
menugaskan sebuah nilai pada suatu variable.
1.4.4 Tipe Data pada Phyton
• Text Type: str
• Numeric Types: int, float, complex
• Sequence Types: list, tuple, range
• Mapping Type: dict
• Set Types: set, frozenset
• Boolean Type: bool
• Binary Types: bytes, bytearray, memoryview
• None Type: NoneType
1.4.4. Tipe Data Phyton (lanjutan)
Tipe Data Contoh Penjelasan
Boolean True atau False Menyatakan benar True yang bernilai 1, atau salah False yang bernilai 0
String "Ayo belajar Python"
Menyatakan karakter/kalimat bisa berupa huruf angka, dll (diapit
tanda " atau ')
Integer 25 atau 1209 Menyatakan bilangan bulat
Float 3.14 atau 0.99 Menyatakan bilangan yang mempunyai koma
Hexadecimal 9a atau 1d3 Menyatakan bilangan dalam format heksa (bilangan berbasis 16)
Complex 1 + 5j Menyatakan pasangan angka real dan imajiner
List ['xyz', 786, 2.23]
Data untaian yang menyimpan berbagai tipe data dan isinya bisa
diubah-ubah
Tuple ('xyz', 768, 2.23)
Data untaian yang menyimpan berbagai tipe data tapi isinya tidak bisa
diubah
Dictionary {'nama': 'adi','id':2}
Data untaian yang menyimpan berbagai tipe data berupa pasangan
penunjuk dan nilai
1.4.5 Contoh Penugasan Tipe data
• x = "Hello World" #Contoh str
• x = 20 #Contoh int
• x = 20.5 #Contoh float
• x = 1j #Contoh complex
• x = ["apple", "banana", "cherry"] #Contoh list
• x = ("apple", "banana", "cherry") #Contoh tuple
• x = range(6) #Contoh range
• x = {"name" : "John", "age" : 36} #Contoh dict
1.4.5 Contoh Penugasan Tipe data (lanjut)
• x = {"apple", "banana", "cherry"} #Contoh set
• x = frozenset({"apple", "banana", "cherry"}) #Contoh frozenset
• x = True #Contoh bool
• x = b"Hello" #Contoh bytes
• x = bytearray(5) #Contoh bytearray
• x = memoryview(bytes(5)) #Contoh memoryview
• x = None #Contoh NoneType
1.5. Contoh Variabel
• Misalkan
– X adalah variable
– 25 adalah nilainya
• Maka pernyataan
X = 25
• Akan membuat variable x berisi
nilai 25
1.6 Memeriksa Tipe Data
• Pada pemrograman seringkali kita sudah berada pada baris
yang sangat jauh, sehingga untuk memeriksa tipe data yang
sudah di deklarasikan akan menyulitkan,
• Hal ini dapat diatasi dengan perintah type()
• Contoh
• x = 5
• print(type(x))
1.7 Tipe Data Bilangan
Tipe data bilangan pada phyton
hanya ada 3
• int
• float
• complex
• Contoh
x = 1 # int
y = 2.8 # float
z = 1j # complex
1.8 Casting
• Casting : mengubah tipe data
suatu nilai menjadi suatu tipe
data tertentu
• Perintah casting pada phyton:
– int()
– float()
– str()
• Contoh casting ke integer
x = int(1) # x will be 1
y = int(2.8) # y will be 2
z = int("3") # z will be 3
• Contoh Csting ke float
x = float(1) # x will be 1.0
y = float(2.8) # y will be 2.8
z = float("3") # z will be 3.0
w = float("4.2") # w will be 4.2
• Casting ke String
x = str("s1") # x will be 's1'
y = str(2) # y will be '2'
z = str(3.0) # z will be '3.0'
2.
Deklarasi
2.1. Deklarasi
• Pada pemrograman, variabel akan disimpan pada alamat memory
pada lokasi yang sesuai dengan panjang datanya
• Karena itu variabel pada pemrograman harus dideklarasikan
terlebih dahulu untuk mengalokasikan alamat memory sebagai
tempat penyimpanan data dari variabel tersebut
• Pada 4th generation language seperti Phyton, ketika dilakukan
inisialisasi terhadap suatu variable, maka secara otomatis compiler
akan langsung melakukan deklarasi sesuai dengan data yang
ditugaskan pada variable tersebut, sehingga programmer tidak
perlu melakukan deklarasi variabel
2.2. Syntax Deklarasi
• Pada Bahasa Pemrograman C, deklarasi variabel dilakukan
dengan menuliskan perintah deklarasi sesuai dengan tipe
datanya diikuti dengan nama variable
• Contoh:
• int a; //Deklarasi variabel a bertipe data integer
• float b; //Deklarasi variabel b bertipe data floating point
• char c; //Deklarasi variabel c bertipe data char
2.3. Keyword Deklarasi dalam C
• char → Character
• unsigned char → char tak
bertanda
• signed char → char bertanda
• int → integer
• unsigned int → integer tak
bertanda
• signed int → integer bertanda
• float → Floating Point 32 bit
• double → floating point 64 bit
• bool → Boolean (0/1)
2.4. Deklarasi Char pada C
• Deklarasi char dapat berupa sebuah character tunggal, dapat juga berupa
rangkaian character.
• Deklarasi variable character tunggal dapat dilakukan langsung dengan
perintah char
char c; //deklarasi variable character tunggal
• Deklarasi rangkaian character dapat kita lakukan dengan bantuan array
char (array akan di bahas pada pembahasan Array) dengan susunan:
char nama_variable[panjangrangkaian];
Contoh:
char nama[20]; //deklarasi variable nama bertipe character sepanjang 20 char
2.5. Pointer
• Pointer adalah variabel yang berisi alamat dari suatu memory
yang menyimpan data
• Variabel pointer dimaksudkan menyimpan alamat awal dari
suatu memory yang berisi sel-sel memory yang dialokasikan
untuk menyimpan data sesuai dengan tipe data yang
dialokasikan
• Pada 4th generation language, tidak diperkenankan langsung
mengakses alamat memory, karena itu untuk linked-list nanti
akan disiasati dengan penggunaan tipe data list
TMSM - Linked List 26
2.6. Contoh Pointer
• Variabel Pointer a menunjuk ke
alamat variabel b.
• variabel b menyimpan sebuah
bilangan (17)
• Variabel a dapat menyimpan
alamat dari variabel b pada
memory (1462)
TMSM - Linked List 27
a: variabel
pointer
v: variabel
biasa
2.7. Deklarasi Variabel bertipe Pointer
• Variabel Pointer dapat dideklarasikan dengan mencantumkan
karakter * di depan variabel yang dideklarasikan
• Contoh dalam C:
int *a;
• Deklarasi ini akan mendaftarkan variabel a untuk menyimpan
data bertipe pointer yang ditujukan untuk menunjuk ke alamat
yang berisi data int
3.
Inisialisasi
3.1. Inisialisasi
• Inisialisasi adalah pengisian nilai awal variabel
• Biasanya diisikan pada saat variabel dideklarasikan
Contoh pada C++:
int a = 100; //deklarasi variable a bertipe integer dan insialisasi dengan nilai 100
• Dapat juga melakukan inisialisasi melalui statement terhadap
suatu variable
Contoh pada C++:
int a;
a = 100;
3.2. Aturan penulisan inisialisasi
• Inisialisasi pada variable tunggal
Nama_variable = nilai inisialisasi #contoh pada Phyton
Tipe_data Nama_variable = nilai inisialisasi; //contoh pada C
• Inisialisasi variable array dapat dilakukan dengan
menggunakan kurung kurawal dengan data set di dalam
kurung kurawal tersebut, tiap item data dipisahkan tanda koma
nama_array[panjangArray] = {data_0, data_1, data_2, …data_n};
3.3. Preparasi
• Inisialisasi dan enumerasi pada flowchart dapat diterapkan
menggunakan notasi preparasi
Contoh:
int a=10;
A = 10
Mulai
4.
Enumerasi
4.1. Enumerasi
• Enumerasi adalah sekumpulan konstanta bilangan bulat /
integer yang masing-masing konstanta akan memiliki nama dan
nilai yang berbeda.
• Enumerasi lebih ditujukan untuk penanganan kesalahan proses
input, output maupun proses pengolahan data dalam internal
CPU.
• Penggunaan konstanta yang didefinisikan atau pun enumerasi
akan mempermudah penanganan kesalahan daripada saat
hanya menggunakan angka.
4.2. Aturan Penulisan
• Enumerasi menggunakan keyword enum
• Syntax enumerasi:
enum nama_variable{enumerasi1, enumerasi2, enumerasi3,
…enumerasi_n};
Enumerasi pertama akan bernilai 0, dan enumerasi berikutnya akan
melanjutkan nilai setelah 0: 1, 2, 3, dst
Contoh:
enum bilangan{nol, satu, dua, tiga, empat, lima}
4.2. Aturan Penulisan (lanj…)
• Syntax enumerasi:
enum nama_variable{enumerasi1=angkamulai, enumerasi2, enumerasi
3, …enumerasi n};
Enumerasi pertama akan bernilai 1, dan enumerasi berikutnya akan
melanjutkan nilai setelah 1: 2, 3, dst
Contoh:
enum bilangan{satu=1, dua, tiga, empat, lima}
4.3. Keluaran Enumerasi
• Keluaran enumerasi berupa angka yang diwakilinya
Contoh
enum bilangan{satu=1, dua, tiga, empat, lima};
enum kelas{I=1, II, III, IV, V, VI};
cout<<tiga; //akan tercetak 3 di layar
Cout<<IV; //akan tercetak 4 di layar
5.
Penugasan
5.1 Penugasan
• Penugasan / Statement merupakan pemberian
nilai pada variabel
• Penugasan dapat dilakukan langsung dengan nilai
yang akan diberikan, dapat juga dengan
menuliskan rumus ataupun fungsi mengikuti
variable yang akan diisi
5.1 Penugasan (lanj…)
• Contoh Penugasan langsung:
a = 10;
Print(a) //akan tercetak 10
• Contoh penugasan dengan rumus
a = 10; //penugasan langsung
b = a + 5; //penugasan dengan rumus
Print(b) //akan tercetak 15
5.2. Notasi Penugasan
• Pada flowchart dapat
menggunakan bangun persegi
panjang berisi rumus.
• Contoh:
• Pada pseudo-code dapat berupa
rumus pada baris program
• Contoh:
a = 10;
• Pada kalimat deskriptif dapat
dituliskan dengan pembacaan
rumusnya:
• Contoh:
[step 11] isi variable a dengan 10
6.
Record
6.1 Record / Structure
• Rekaman atau record atau structure adalah sekumpulan data
yang disusun dari tipe data yang sama atau tipe data yang
berbeda.
• Sebuah record berisi beberapa variabel lain yang ‘dipaketkan’.
Konsep struktur data seperti ini sedikit mirip dengan konsep
class dan object dalam object oriented programming
• Dalam Bahasa pemrograman Generasi 3, Record/Structure
harus di definisikan terlebih dahulu,
TMSM - Tipe Data Abstrak 43
6.1 Record / Structure (lanj…)
• Hasil definisi Record/Structure diperlakukan seperti tipe data,
• Ketika akan digunakan, Record/Structure harus dideklarasikan
dahulu pada sebuah variable
• Struct / Record yang sudah didefinisikan dapat di deklarasikan
menjadi sebuah variable tunggal ataupun sebagai Array
sebagaimana layaknya tipe data lainnya
• Tetapi dalam Bahasa pemrograman generasi 4 seperti Phyton,
tidak diijinkan mendefinisikan Record/Struct, karenanya harus
disiasati dengan menggunakan tipe data list dan dictionary
TMSM - Tipe Data Abstrak 44
6.2. Mengakses Record
• Record diakses pada field-fieldnya
• Record dapat diakses dengan menyebutkan terlebih dahulu
nama variable diikuti nama field yang akan diakses setelah
didahului tanda titik
TMSM - Tipe Data Abstrak 45
6.3. Record dalam C++
• Definisi
struct RecordName
{
vartype FieldName1;
vartype FieldName2;
vartype FieldName3;
...
vartype FieldNameN;
};
• Deklarasi
RecordName varRecord;
• Penugasan
varRecord.FieldNameN = data;
• Mengakses Record
VarData = varRecord.FieldNameN;
TMSM - Tipe Data Abstrak 46
• Definisi
struct Bangun
{
int x1;
int y1;
int x2;
int y2;
int x3;
int y3;
};
• Deklarasi
Bangun Segitiga;
• Penugasan
Segitiga.x1 = 10;
Segitiga.y1 = 16;
• Mengakses Record
Temp = Segitiga.x1;
TMSM - Tipe Data Abstrak 47
6.3. Record dalam C++ (Lanj.)
6.4 Record pada Phyton
• Sebagai Bahasa Pemrograman Generasi 4, banyak Batasan
akses memory yang diberikan pada Phyton, sehingga tidak
memiliki perintah untuk membuat structure record
• Untuk mensiasati hal ini, maka kita beberapa opsi yang dapat
digunakan:
– Menggunakan Dictionary
– Menggunakan Class (catatan: materi ini akan dibahas pada mata kuliah struktur data)
6.5. Tipe Data Dictionary (Phyton)
• Bagi pemrograman struktur data, diperlukan record yang dapat diakses
berdasarkan nama field.
• Phyton tidak mengiijinkan membuat definisi struct secara langsung
seperti pada Bahasa pemrograman generasi 3
• Tetapi Phyton masih menyediakan sebuah tipe data Dictionary yang
dapat diakses berdasarkan nama fieldnya
• Dictionary adalah kumpulan yang dipesan/didefinisikan, dapat diubah,
dan tidak memungkinkan duplikat.
• Digunakan untuk menyimpan nilai data dalam pasangan kunci:nilai.
6.5.1. Syntax Dictionary
• Dictionary ditulis diantara kurung kurawal, dan memiliki key-key dan
nilainya.
• Nama Kunci diapit tanda petik ganda, nilai menyesuaikan tipe datanya
• Syntax
namaDictionary = {“key1” : nilai1,
“key2” : nilai2,
“key3” : nilai3,
dst}
• Contoh:
mahasiswa = { "nama" : "Emil", “tahun" : 2004}
6.5.2. Perlakuan Dictionary Sebagai
Struct/Record
• Key dapat dianggap sebagai nama field
• Syntax
namaRecord = {“namaField1” : data,
“namaField2” : data,
“namaField3” : data,
dst}
• Contoh:
mahasiswa = { "nama" : "Emil", “tahun" : 2004}
6.5.3. Perintah-Perintah Dictionary
• clear() : membersihkan semua elemen dari Dictionary
• copy() : mengcopykan dictionary ke variable lain
• fromkeys() : mengambil dictionary beserta nama-nama key dan
nilainya
• get() : mengambil nilai dari key tertentu
• items() : mengambil daftar yang berisi tuple untuk setiap
pasangan nilai kunci
• keys() : mengambil daftar yang berisi key-key dari dictionary
6.5.3. Perintah-Perintah Dictionary (lanjut)
• pop() : menghapus element berdasarkan key yang spesifik
• popitem() : Menghapus key terakhir berikut nilainya
• setdefault() : Mengambil nilai secara spesifik dari suatu key
yang dikehendaki pada parameter pertama. Jika key tidak
ditemukan, maka key tersebut akan disisipkan dengan suatu
nilai yang tercantum pada parameter kedua
• update() : menambahkan key berikut valuenya
• values() : Mengambil daftar value dari dictionary
6.5.4. Mengakses Value Tiap Field
• Mengakses Value dari Field-field Dictionary dapat dilakukan dengan method get,
dapat juga dengan penyebutan langsung nama field/key nya
• Contoh:
car = {
"brand": "Ford",
"model": "Mustang",
"year": 1964
}
a = car.get(“model”)
print(a)
b = car[“year”]
print(b)
6.5.5. Contoh Mengakses
key dan value Dictionary
6.5.6. Memodifikasi Value
dari suatu item Dictionary
• Memodikasi nilai dari suatu item dapat dilakukan dengan menuliskan penugasan
dari nama dictionary dengan nama field / item di dalam kurung siku nya
• Contoh mengubah nilai field “color” dengan “white”
car[“color”] = “white”
6.5.7. Modifikasi Struktur Record
• Salah satu keistimewaan Penggunaan Dictionary Phyton
sebagai Record/Struct dibandingkan Record Pada
Pemrograman Generasi 3 adalah kemudahan menambah dan
menghapus Field nya
Ringkasan
• Variabel merupakan penyimpanan data
• variabel harus dideklarasikan sesuai dengan jenis datanya
• Inisialisasi adalah pengisian nilai awal variabel
• Enumerasi adalah sekumpulan konstanta bilangan bulat /
integer yang masing-masing konstanta akan memiliki nama dan
nilai yang berbeda.
• Penugasan / Statement merupakan pemberian nilai pada
variabel
TMSM - Introduction to Data Structure 58
TUHAN Memberkati Anda
Teady Matius Surya Mulyana (tmulyana@bundamulia.ac.id)
Terimakasih

Variabel dalam pemrograman bahasa python

  • 1.
  • 2.
    Sub-CPMK • Mahasiswa mampumendeklarasikan variabel dan penugasan sesuai dengan peruntukannya (C3, A3)
  • 3.
    Materi • Tipe Data •Deklarasi • Inisialisasi • Enumerasi • Penugasan • Record
  • 4.
    Perhatian • Tidak disarankancopy-paste kode program dari presentasi ini, karena ada beberapa symbol yang dianggap sebagai Unicode oleh editor yang anda gunakan, sehingga akan dianggap sebagai symbol yang salah oleh compiler, sebaiknya diketik ulang saja • Pembahasan C++ dan Pascal pada materi ini bukan materi utama, hanya sebagai pembanding
  • 5.
  • 6.
    1.1 Variabel • Variabelmerupakan penyimpanan data • Pada pemrograman, variabel akan disimpan pada alamat memory pada lokasi yang sesuai dengan panjang datanya • Karena itu variabel pada pemrograman harus dideklarasikan terlebih dahulu untuk mengalokasikan alamat memory sebagai tempat penyimpanan data dari variable tersebut
  • 7.
    1.2. Ketentuan penamaanvariabel • Tidak boleh diawali dengan angka • Terdiri dari satu kata, tidak boleh dipisahkan dengan spasi • Tidak menggunakan karakter symbol kecuali underscore • Tidak Menggunakan keyword
  • 8.
    1.3. Alokasi Memori •Alokasi Memory memerlukan panjang Data dan bagaimana data tersebut diperlakukan, sehingga tidak terjadi kerancuan pada pemanggilan maupun penyimpanan • Panjang data dan perlakuan data tergantung pada jenis data • Karena itu variabel harus dideklarasikan sesuai dengan jenis datanya
  • 9.
    1.4. Tipe Data •Tipe data : – Nilai yang mungkin terisi ke variabel • Variabel agar dapat digunakan harus dideklarasikan sesuai dengan tipe data yang akan ditampungnya • Suatu variabel tidak dapat menampung data yang tidak sesuai dengan tipe data peruntukannya • Ada dua macam tipe data A. Tipe data sederhana/primitif B. Tipe data bentukan TMSM - Introduction to Data Structure 9
  • 10.
    1.4.1. Tipe DataSederhana Merupakan tipe data bawaan dari bahasa pemrograman. Beberapa tipe data primitif (ada yang menyebutnya tipe data sederhana) yang umum terdapat pada berbagai bahasa pemrograman • Boolean → Tipe data yang hanya memperbolehkan dua nilai 1/0 atau TRUE/FALSE saja • Character → menampung 8 bit data yang diterjemahkan menjadi karakter, Character termasuk tipe data integer • Integer → bilangan bulat, Terdapat beberapa jenis bilangan integer berdasarkan panjang bit nya: Byte, short integer, integer, long integer • Pecahan → bilangan pecahan, umumnya direpresentasikan dalam bentuk floating point, berdasarkan panjang dan ketelitiannya, floating point dapat dibagi menjadi single precision (32 bit) dan double precision (64 bit) TMSM - Introduction to Data Structure 10
  • 11.
    1.4.2. Tipe Data Bentukan •Tipe Data bentukan adalah tipe data yang dibentuk dari tipe data lainnya. • Tipe data ini dibentuk menjadi struktur • Dapat berisi satu atau lebih field dengan tipe data yang sama ataupun tipe data yang berbeda
  • 12.
    1.4.3 Tipe Data Pada4th generation Language • Pada 4th generation language seperti Phyton, deklarasi variable sudah tidak diperlukan lagi, setiap data ketika diinisialisasi akan langsung ditentukan tipe datanya oleh compiler • kemudahan lain dari 4th generation language adalah tipe data yang dapat berubah-ubah tanpa memberi perintah untuk melakukan casting data seperti pada 3th generation language • Sebagai Bahasa pemrograman genereasi 4, tipe data dari suatu variable pada phyton otomatis di deklarasaikan ketika menugaskan sebuah nilai pada suatu variable.
  • 13.
    1.4.4 Tipe Datapada Phyton • Text Type: str • Numeric Types: int, float, complex • Sequence Types: list, tuple, range • Mapping Type: dict • Set Types: set, frozenset • Boolean Type: bool • Binary Types: bytes, bytearray, memoryview • None Type: NoneType
  • 14.
    1.4.4. Tipe DataPhyton (lanjutan) Tipe Data Contoh Penjelasan Boolean True atau False Menyatakan benar True yang bernilai 1, atau salah False yang bernilai 0 String "Ayo belajar Python" Menyatakan karakter/kalimat bisa berupa huruf angka, dll (diapit tanda " atau ') Integer 25 atau 1209 Menyatakan bilangan bulat Float 3.14 atau 0.99 Menyatakan bilangan yang mempunyai koma Hexadecimal 9a atau 1d3 Menyatakan bilangan dalam format heksa (bilangan berbasis 16) Complex 1 + 5j Menyatakan pasangan angka real dan imajiner List ['xyz', 786, 2.23] Data untaian yang menyimpan berbagai tipe data dan isinya bisa diubah-ubah Tuple ('xyz', 768, 2.23) Data untaian yang menyimpan berbagai tipe data tapi isinya tidak bisa diubah Dictionary {'nama': 'adi','id':2} Data untaian yang menyimpan berbagai tipe data berupa pasangan penunjuk dan nilai
  • 15.
    1.4.5 Contoh PenugasanTipe data • x = "Hello World" #Contoh str • x = 20 #Contoh int • x = 20.5 #Contoh float • x = 1j #Contoh complex • x = ["apple", "banana", "cherry"] #Contoh list • x = ("apple", "banana", "cherry") #Contoh tuple • x = range(6) #Contoh range • x = {"name" : "John", "age" : 36} #Contoh dict
  • 16.
    1.4.5 Contoh PenugasanTipe data (lanjut) • x = {"apple", "banana", "cherry"} #Contoh set • x = frozenset({"apple", "banana", "cherry"}) #Contoh frozenset • x = True #Contoh bool • x = b"Hello" #Contoh bytes • x = bytearray(5) #Contoh bytearray • x = memoryview(bytes(5)) #Contoh memoryview • x = None #Contoh NoneType
  • 17.
    1.5. Contoh Variabel •Misalkan – X adalah variable – 25 adalah nilainya • Maka pernyataan X = 25 • Akan membuat variable x berisi nilai 25
  • 18.
    1.6 Memeriksa TipeData • Pada pemrograman seringkali kita sudah berada pada baris yang sangat jauh, sehingga untuk memeriksa tipe data yang sudah di deklarasikan akan menyulitkan, • Hal ini dapat diatasi dengan perintah type() • Contoh • x = 5 • print(type(x))
  • 19.
    1.7 Tipe DataBilangan Tipe data bilangan pada phyton hanya ada 3 • int • float • complex • Contoh x = 1 # int y = 2.8 # float z = 1j # complex
  • 20.
    1.8 Casting • Casting: mengubah tipe data suatu nilai menjadi suatu tipe data tertentu • Perintah casting pada phyton: – int() – float() – str() • Contoh casting ke integer x = int(1) # x will be 1 y = int(2.8) # y will be 2 z = int("3") # z will be 3 • Contoh Csting ke float x = float(1) # x will be 1.0 y = float(2.8) # y will be 2.8 z = float("3") # z will be 3.0 w = float("4.2") # w will be 4.2 • Casting ke String x = str("s1") # x will be 's1' y = str(2) # y will be '2' z = str(3.0) # z will be '3.0'
  • 21.
  • 22.
    2.1. Deklarasi • Padapemrograman, variabel akan disimpan pada alamat memory pada lokasi yang sesuai dengan panjang datanya • Karena itu variabel pada pemrograman harus dideklarasikan terlebih dahulu untuk mengalokasikan alamat memory sebagai tempat penyimpanan data dari variabel tersebut • Pada 4th generation language seperti Phyton, ketika dilakukan inisialisasi terhadap suatu variable, maka secara otomatis compiler akan langsung melakukan deklarasi sesuai dengan data yang ditugaskan pada variable tersebut, sehingga programmer tidak perlu melakukan deklarasi variabel
  • 23.
    2.2. Syntax Deklarasi •Pada Bahasa Pemrograman C, deklarasi variabel dilakukan dengan menuliskan perintah deklarasi sesuai dengan tipe datanya diikuti dengan nama variable • Contoh: • int a; //Deklarasi variabel a bertipe data integer • float b; //Deklarasi variabel b bertipe data floating point • char c; //Deklarasi variabel c bertipe data char
  • 24.
    2.3. Keyword Deklarasidalam C • char → Character • unsigned char → char tak bertanda • signed char → char bertanda • int → integer • unsigned int → integer tak bertanda • signed int → integer bertanda • float → Floating Point 32 bit • double → floating point 64 bit • bool → Boolean (0/1)
  • 25.
    2.4. Deklarasi Charpada C • Deklarasi char dapat berupa sebuah character tunggal, dapat juga berupa rangkaian character. • Deklarasi variable character tunggal dapat dilakukan langsung dengan perintah char char c; //deklarasi variable character tunggal • Deklarasi rangkaian character dapat kita lakukan dengan bantuan array char (array akan di bahas pada pembahasan Array) dengan susunan: char nama_variable[panjangrangkaian]; Contoh: char nama[20]; //deklarasi variable nama bertipe character sepanjang 20 char
  • 26.
    2.5. Pointer • Pointeradalah variabel yang berisi alamat dari suatu memory yang menyimpan data • Variabel pointer dimaksudkan menyimpan alamat awal dari suatu memory yang berisi sel-sel memory yang dialokasikan untuk menyimpan data sesuai dengan tipe data yang dialokasikan • Pada 4th generation language, tidak diperkenankan langsung mengakses alamat memory, karena itu untuk linked-list nanti akan disiasati dengan penggunaan tipe data list TMSM - Linked List 26
  • 27.
    2.6. Contoh Pointer •Variabel Pointer a menunjuk ke alamat variabel b. • variabel b menyimpan sebuah bilangan (17) • Variabel a dapat menyimpan alamat dari variabel b pada memory (1462) TMSM - Linked List 27 a: variabel pointer v: variabel biasa
  • 28.
    2.7. Deklarasi Variabelbertipe Pointer • Variabel Pointer dapat dideklarasikan dengan mencantumkan karakter * di depan variabel yang dideklarasikan • Contoh dalam C: int *a; • Deklarasi ini akan mendaftarkan variabel a untuk menyimpan data bertipe pointer yang ditujukan untuk menunjuk ke alamat yang berisi data int
  • 29.
  • 30.
    3.1. Inisialisasi • Inisialisasiadalah pengisian nilai awal variabel • Biasanya diisikan pada saat variabel dideklarasikan Contoh pada C++: int a = 100; //deklarasi variable a bertipe integer dan insialisasi dengan nilai 100 • Dapat juga melakukan inisialisasi melalui statement terhadap suatu variable Contoh pada C++: int a; a = 100;
  • 31.
    3.2. Aturan penulisaninisialisasi • Inisialisasi pada variable tunggal Nama_variable = nilai inisialisasi #contoh pada Phyton Tipe_data Nama_variable = nilai inisialisasi; //contoh pada C • Inisialisasi variable array dapat dilakukan dengan menggunakan kurung kurawal dengan data set di dalam kurung kurawal tersebut, tiap item data dipisahkan tanda koma nama_array[panjangArray] = {data_0, data_1, data_2, …data_n};
  • 32.
    3.3. Preparasi • Inisialisasidan enumerasi pada flowchart dapat diterapkan menggunakan notasi preparasi Contoh: int a=10; A = 10 Mulai
  • 33.
  • 34.
    4.1. Enumerasi • Enumerasiadalah sekumpulan konstanta bilangan bulat / integer yang masing-masing konstanta akan memiliki nama dan nilai yang berbeda. • Enumerasi lebih ditujukan untuk penanganan kesalahan proses input, output maupun proses pengolahan data dalam internal CPU. • Penggunaan konstanta yang didefinisikan atau pun enumerasi akan mempermudah penanganan kesalahan daripada saat hanya menggunakan angka.
  • 35.
    4.2. Aturan Penulisan •Enumerasi menggunakan keyword enum • Syntax enumerasi: enum nama_variable{enumerasi1, enumerasi2, enumerasi3, …enumerasi_n}; Enumerasi pertama akan bernilai 0, dan enumerasi berikutnya akan melanjutkan nilai setelah 0: 1, 2, 3, dst Contoh: enum bilangan{nol, satu, dua, tiga, empat, lima}
  • 36.
    4.2. Aturan Penulisan(lanj…) • Syntax enumerasi: enum nama_variable{enumerasi1=angkamulai, enumerasi2, enumerasi 3, …enumerasi n}; Enumerasi pertama akan bernilai 1, dan enumerasi berikutnya akan melanjutkan nilai setelah 1: 2, 3, dst Contoh: enum bilangan{satu=1, dua, tiga, empat, lima}
  • 37.
    4.3. Keluaran Enumerasi •Keluaran enumerasi berupa angka yang diwakilinya Contoh enum bilangan{satu=1, dua, tiga, empat, lima}; enum kelas{I=1, II, III, IV, V, VI}; cout<<tiga; //akan tercetak 3 di layar Cout<<IV; //akan tercetak 4 di layar
  • 38.
  • 39.
    5.1 Penugasan • Penugasan/ Statement merupakan pemberian nilai pada variabel • Penugasan dapat dilakukan langsung dengan nilai yang akan diberikan, dapat juga dengan menuliskan rumus ataupun fungsi mengikuti variable yang akan diisi
  • 40.
    5.1 Penugasan (lanj…) •Contoh Penugasan langsung: a = 10; Print(a) //akan tercetak 10 • Contoh penugasan dengan rumus a = 10; //penugasan langsung b = a + 5; //penugasan dengan rumus Print(b) //akan tercetak 15
  • 41.
    5.2. Notasi Penugasan •Pada flowchart dapat menggunakan bangun persegi panjang berisi rumus. • Contoh: • Pada pseudo-code dapat berupa rumus pada baris program • Contoh: a = 10; • Pada kalimat deskriptif dapat dituliskan dengan pembacaan rumusnya: • Contoh: [step 11] isi variable a dengan 10
  • 42.
  • 43.
    6.1 Record /Structure • Rekaman atau record atau structure adalah sekumpulan data yang disusun dari tipe data yang sama atau tipe data yang berbeda. • Sebuah record berisi beberapa variabel lain yang ‘dipaketkan’. Konsep struktur data seperti ini sedikit mirip dengan konsep class dan object dalam object oriented programming • Dalam Bahasa pemrograman Generasi 3, Record/Structure harus di definisikan terlebih dahulu, TMSM - Tipe Data Abstrak 43
  • 44.
    6.1 Record /Structure (lanj…) • Hasil definisi Record/Structure diperlakukan seperti tipe data, • Ketika akan digunakan, Record/Structure harus dideklarasikan dahulu pada sebuah variable • Struct / Record yang sudah didefinisikan dapat di deklarasikan menjadi sebuah variable tunggal ataupun sebagai Array sebagaimana layaknya tipe data lainnya • Tetapi dalam Bahasa pemrograman generasi 4 seperti Phyton, tidak diijinkan mendefinisikan Record/Struct, karenanya harus disiasati dengan menggunakan tipe data list dan dictionary TMSM - Tipe Data Abstrak 44
  • 45.
    6.2. Mengakses Record •Record diakses pada field-fieldnya • Record dapat diakses dengan menyebutkan terlebih dahulu nama variable diikuti nama field yang akan diakses setelah didahului tanda titik TMSM - Tipe Data Abstrak 45
  • 46.
    6.3. Record dalamC++ • Definisi struct RecordName { vartype FieldName1; vartype FieldName2; vartype FieldName3; ... vartype FieldNameN; }; • Deklarasi RecordName varRecord; • Penugasan varRecord.FieldNameN = data; • Mengakses Record VarData = varRecord.FieldNameN; TMSM - Tipe Data Abstrak 46
  • 47.
    • Definisi struct Bangun { intx1; int y1; int x2; int y2; int x3; int y3; }; • Deklarasi Bangun Segitiga; • Penugasan Segitiga.x1 = 10; Segitiga.y1 = 16; • Mengakses Record Temp = Segitiga.x1; TMSM - Tipe Data Abstrak 47 6.3. Record dalam C++ (Lanj.)
  • 48.
    6.4 Record padaPhyton • Sebagai Bahasa Pemrograman Generasi 4, banyak Batasan akses memory yang diberikan pada Phyton, sehingga tidak memiliki perintah untuk membuat structure record • Untuk mensiasati hal ini, maka kita beberapa opsi yang dapat digunakan: – Menggunakan Dictionary – Menggunakan Class (catatan: materi ini akan dibahas pada mata kuliah struktur data)
  • 49.
    6.5. Tipe DataDictionary (Phyton) • Bagi pemrograman struktur data, diperlukan record yang dapat diakses berdasarkan nama field. • Phyton tidak mengiijinkan membuat definisi struct secara langsung seperti pada Bahasa pemrograman generasi 3 • Tetapi Phyton masih menyediakan sebuah tipe data Dictionary yang dapat diakses berdasarkan nama fieldnya • Dictionary adalah kumpulan yang dipesan/didefinisikan, dapat diubah, dan tidak memungkinkan duplikat. • Digunakan untuk menyimpan nilai data dalam pasangan kunci:nilai.
  • 50.
    6.5.1. Syntax Dictionary •Dictionary ditulis diantara kurung kurawal, dan memiliki key-key dan nilainya. • Nama Kunci diapit tanda petik ganda, nilai menyesuaikan tipe datanya • Syntax namaDictionary = {“key1” : nilai1, “key2” : nilai2, “key3” : nilai3, dst} • Contoh: mahasiswa = { "nama" : "Emil", “tahun" : 2004}
  • 51.
    6.5.2. Perlakuan DictionarySebagai Struct/Record • Key dapat dianggap sebagai nama field • Syntax namaRecord = {“namaField1” : data, “namaField2” : data, “namaField3” : data, dst} • Contoh: mahasiswa = { "nama" : "Emil", “tahun" : 2004}
  • 52.
    6.5.3. Perintah-Perintah Dictionary •clear() : membersihkan semua elemen dari Dictionary • copy() : mengcopykan dictionary ke variable lain • fromkeys() : mengambil dictionary beserta nama-nama key dan nilainya • get() : mengambil nilai dari key tertentu • items() : mengambil daftar yang berisi tuple untuk setiap pasangan nilai kunci • keys() : mengambil daftar yang berisi key-key dari dictionary
  • 53.
    6.5.3. Perintah-Perintah Dictionary(lanjut) • pop() : menghapus element berdasarkan key yang spesifik • popitem() : Menghapus key terakhir berikut nilainya • setdefault() : Mengambil nilai secara spesifik dari suatu key yang dikehendaki pada parameter pertama. Jika key tidak ditemukan, maka key tersebut akan disisipkan dengan suatu nilai yang tercantum pada parameter kedua • update() : menambahkan key berikut valuenya • values() : Mengambil daftar value dari dictionary
  • 54.
    6.5.4. Mengakses ValueTiap Field • Mengakses Value dari Field-field Dictionary dapat dilakukan dengan method get, dapat juga dengan penyebutan langsung nama field/key nya • Contoh: car = { "brand": "Ford", "model": "Mustang", "year": 1964 } a = car.get(“model”) print(a) b = car[“year”] print(b)
  • 55.
    6.5.5. Contoh Mengakses keydan value Dictionary
  • 56.
    6.5.6. Memodifikasi Value darisuatu item Dictionary • Memodikasi nilai dari suatu item dapat dilakukan dengan menuliskan penugasan dari nama dictionary dengan nama field / item di dalam kurung siku nya • Contoh mengubah nilai field “color” dengan “white” car[“color”] = “white”
  • 57.
    6.5.7. Modifikasi StrukturRecord • Salah satu keistimewaan Penggunaan Dictionary Phyton sebagai Record/Struct dibandingkan Record Pada Pemrograman Generasi 3 adalah kemudahan menambah dan menghapus Field nya
  • 58.
    Ringkasan • Variabel merupakanpenyimpanan data • variabel harus dideklarasikan sesuai dengan jenis datanya • Inisialisasi adalah pengisian nilai awal variabel • Enumerasi adalah sekumpulan konstanta bilangan bulat / integer yang masing-masing konstanta akan memiliki nama dan nilai yang berbeda. • Penugasan / Statement merupakan pemberian nilai pada variabel TMSM - Introduction to Data Structure 58
  • 59.
    TUHAN Memberkati Anda TeadyMatius Surya Mulyana (tmulyana@bundamulia.ac.id) Terimakasih