Anda di halaman 1dari 32

Dasar Pemrograman

Variabel dan Program Sederhana


2

Variabel
• Penampung nilai dalam
program.
• Analogi :
• Memori ingatan dengan
berbagai karakteristik dan
kapasitas.
• Karakteristik dan kapasitas
ditentukan dari tipe data.

OSCAR KARNALIM, S.T., M.T.


3

Deklarasi Variabel
• Pembentukan variabel
• Analogi : Membentuk sebuah ember
• Tuliskan pada kamus data :
• # namaVariabel : kegunaan variabel (tipe data)
• Contoh :
• # LuasLingk : var. luas lingkaran (float)

OSCAR KARNALIM, S.T., M.T.


4

Assignment
• Proses penyimpanan nilai pada suatu nama informasi / variabel.
• Analogi : Mengisi ingatan
• Sintaks :
• <namaVariabel> = <nilai>
• Contoh :
• a = 10
• x = “oscar “

OSCAR KARNALIM, S.T., M.T.


5

Nama / Identifier
• Nama : sesuatu yang dipakai sebagai identifikasi
• Program, tipe, fungsi
• Tempat penyimpanan nilai (variabel)
• Aturan penentuan nama :
• Dimulai dengan huruf
• Tidak mengandung spasi dan atau operator
• Bukan nama instruksi

OSCAR KARNALIM, S.T., M.T.


6

Nama (Cont)
• Contoh nama yang benar
• DataKe1
• Data_1
• Contoh nama yang salah :
• $Data (tidak dimulai dgn huruf)
• Data 1 (mengandung spasi)
• Data-1 (mengandung operator - )
• input (nama instruksi)

OSCAR KARNALIM, S.T., M.T.


7

Nilai
• Suatu besaran dengan tipe yang sudah dikenali
• Nilai diperoleh dari :
• isi variabel
• hasil perhitungan suatu ekspresi
• hasil yang dikembalikan oleh suatu fungsi
• konstanta
• Pengisian Nilai :
• Assignment
• Masukan

OSCAR KARNALIM, S.T., M.T.


8

Komentar
• Berisi informasi kode sumber dalam bahasa manusia.
• Mempermudah pengembangan kode dikemudian hari.
• Komentar tidak akan ditampilkan dan tidak disertakan pada
program.
• Komentar dapat dituliskan dimana saja pada kode sumber.
• Komentar satu baris :
# ini sebuah komentar

OSCAR KARNALIM, S.T., M.T.


9

Ekspresi
• Rumus perhitungan yang terdiri dari operand dan operator.
• Operand
• konstanta, nama, hasil fungsi / ekspresi.
• Contoh ekspresi boolean :
True and False hasilnya False
True or False hasilnya True
not True hasilnya False

OSCAR KARNALIM, S.T., M.T.


10

Ekspresi (Cont)
• Contoh ekspresi numerik untuk i=7 dan x=5 :
1+3*5 hasilnya 1
(1+7) // 3 hasilnya 2
10/4 - 2 hasilnya 0.5
i + x hasilnya 12
i <= 10 hasilnya True
(x < 5) and (x > 0) hasilnya False

OSCAR KARNALIM, S.T., M.T.


11

Ekspresi (Cont)
• Contoh ekspresi string untuk i=7 dan x=5 :
“ini ” + ”aku” hasilnya “ini aku”
‘a’ == ‘x’ hasilnya False
“ini” != “aku” hasilnya True
“ma” < ”ta” hasilnya True
‘a’ in “mata” hasilnya True

OSCAR KARNALIM, S.T., M.T.


12

Masukan
• Pembacaan nilai dari piranti masukan
• Sintaks instruksi masukan :
<namaVar> =input(“String Pesan”)
<namaVar> =type(input(“String Pesan”))
• Contoh :
nilaiC = int(input(“Input nilai C:”) # tipe integer
nilaiX = float(input(“Input nilai X:”)) # tipe float
nama = input(“Input nama:”) # tipe string / char
nilaiY = bool(input(“Input nilai Y:”)) # tipe boolean

OSCAR KARNALIM, S.T., M.T.


13

Keluaran
• Penulisan nilai ke piranti keluaran
• Sintaks instruksi keluaran :
print(<x>*)
dimana x adalah “String pesan” atau <nama-var>
• Contoh :
# nilaiX bertipe float, nilaiC bertipe integer dan
# nama bertipe string
print(“Nilai A :”,nilaiA,“Nilai X :”,nilaiX)
print(“Nama :”,nama)

OSCAR KARNALIM, S.T., M.T.


14

Keluaran (Cont)
• Setiap instruksi keluaran selalu akan menampilkan nilai dengan
diakhiri oleh baris baru.
• Modifikasi instruksi agar tidak menyertakan baris baru :
print(<x>*, end=““)
dimana x adalah “String pesan” atau <nama-
var

OSCAR KARNALIM, S.T., M.T.


15

Keluaran (Cont)
Contoh Kode Program : Tampilan :
# Contoh program pemakaian end 5
x = 5 0.0025
y = 0.0025
5 0.0025
# x dan y dicetak dalam baris terpisah
print (x)
print (y)
print () # print baris kosong (newline)
# end untuk akhiri baris dgn space, bukan newline
# y dicetak dlm baris yg sama dengan x
print (x,end=" ")
print (y)

OSCAR KARNALIM, S.T., M.T.


16

Keluaran (Cont)
• Setiap instruksi keluaran yang menampilkan beberapa nilai
akan otomatis memisahkan tiap nilai dengan spasi.
• Modifikasi instruksi agar tidak menyertakan spasi :
print(<x>*, sep=““)
dimana x adalah “String pesan” atau nama
variabel

OSCAR KARNALIM, S.T., M.T.


17

Keluaran (Cont)
Contoh Kode Program :
# Contoh program pemakaian sep
Kota = “Bandung”

print ("Hello from ",Kota,"!") #tanpa separator


print ("Hello from ",Kota,"!",sep="") #dengan separator
print ("Hello from ",Kota,"!",sep=" ")
print ("Hello from ",Kota,"!",sep=" “)

Tampilan :
Hello from Bandung !
Hello from Bandung!
Hello from Bandung !
Hello from Bandung !

OSCAR KARNALIM, S.T., M.T.


18

Escape Sequences
• Kumpulan representasi karakter yang tidak dapat
dituliskan langsung pada kode sumber
• \\ backslash ( \ )
• \‘ single-quote ( ' )
• \“ double-quote ( " )
• \n ASCII LineFeed (LF)
• \t ASCII Horizontal Tab (TAB)

OSCAR KARNALIM, S.T., M.T.


19

Contoh Program 1
# File : Hello1.py
# Nama program : Program Hello versi 1
# Kamus Data

print ("Hello World")

OSCAR KARNALIM, S.T., M.T.


20

Contoh Program 2
# File : Hello2.py
# Nama program : Program Hello versi 2
# Kamus Data
# pesan : variabel (string)

pesan = " Hello World "


print (pesan)

OSCAR KARNALIM, S.T., M.T.


21

Contoh Program 3
# File : Hello3.py
# Nama program : Program Hello versi 3
# Kamus Data
# nama : var.input (string)

nama = (input("Input s1(string) :"))


print ("Hello ", nama)

OSCAR KARNALIM, S.T., M.T.


22

Aksi Sekuensial
• Struktur kendali program yang paling sederhana
• Sederetan instruksi yang dilaksanakan berdasarkan urutan
penulisannya
• Contoh :
instruksi-1
instruksi-2
...
instruksi-N

OSCAR KARNALIM, S.T., M.T.


23

Contoh Program dengan Aksi Sekuensial


1
# File : AksiSeq1.py
# Nama program : Program Aksi Sekuensial 1
# Kamus Data
# x : variabel input (integer)
# y : variabel input (integer)

x = int(input(" Input x :"))


y = int(input(" Input y :"))
y = x + y
print (“Nilai x : “,x)
print (“Nilai y : “,y)

OSCAR KARNALIM, S.T., M.T.


24

Contoh Program dengan Aksi Sekuensial


2
# File : AksiSeq2.py
# Nama program : Program Aksi Sekuensial 2
# Kamus Data
# x : variabel input (integer)
# y : variabel input (integer)
# z : variabel input (integer)

x = int(input(" Input x :"))


y = int(input(" Input y :"))
z = int(input(" Input z :"))
y = y – x
z = z + y
print (“Nilai x : “,x)
print (“Nilai y : “,y)
print (“Nilai z : “,z)

OSCAR KARNALIM, S.T., M.T.


25

Contoh Program dengan Aksi Sekuensial


3
# File : Tukar.py
# Nama program : Program Aksi Tukar Variabel
# Kamus Data
# x : var. input utk nilai x(integer)
# y : var. input utk nilai y (integer)
# t : var. utk proses tukar isi variabel (integer)

x = int(input("Nilai x :"))
y = int(input("Nilai y :"))
print ('Sebelum Tukar')
print ('Nilai x : ',x)
print ('Nilai y : ',y)
t = x
x = y
y = t
print (“Setelah tukar”)
print (“Nilai x : “,x)
print (“Nilai y : “,y)

OSCAR KARNALIM, S.T., M.T.


26

Contoh Persoalan 1
Contoh-1 : HitungMenitDetik
Persoalan :
• Dibaca sebuah nilai J integer dalam satuan jam.
• Harus dituliskan ekivalensi nilai tsb dalam satuan menit dan detik
Spesifikasi :
Input : J integer
Proses : M = J * 60 {M dalam satuan menit }
D = J * 3600 {D dalam satuan detik }
Output : M, D

OSCAR KARNALIM, S.T., M.T.


27

Solusi Persoalan 1 Versi 1


# File : HitungMD1.py
# Nama program : Program Hitung Menit dan Detik
# Kamus Data
# Jam : variabel input utk nilai Jam(integer)
# Menit : var. utk nilai Menit (integer)
# Detik : var. utk nilai Detik (integer)
Jam = int(input(" Input Jam :"))
Menit = Jam * 60
Detik = Jam * 3600
print (“Hasil konversi”)
print (“Nilai Menit : “,Menit)
print (“Nilai Detik : “,Detik)

OSCAR KARNALIM, S.T., M.T.


28

Solusi Persoalan 1 Versi 2


# File : HitungMD2.py
# Nama program : Program Hitung Menit dan Detik
# Kamus Data
# Jam : variabel input utk nilai Jam(integer)

Jam = int(input(" Input Jam :"))


print (“Hasil konversi”)
print (“Nilai Menit : “,Jam * 60)
print (“Nilai Detik : “,Jam * 3600)

OSCAR KARNALIM, S.T., M.T.


29

Contoh Persoalan 2
Contoh-2 : Konversi Detik
Persoalan :
• Dibaca suatu nilai integer (besaran detik)

• Harus dihitung jam, menit dan detik sisanya, dan dituliskan hasilnya

• Contoh : N = 5000 detik


• Jam = 5000 // 3600 = 1 ; Sisa detik = 5000 % 3600 = 1400
• Menit = 1400 // 60 = 23 ; Detik = 1400 % 60 = 20

Spesifikasi :
Input : N
Proses : J = N div 3600 ; Sisa = N mod 3600
M = Sisa div 60; D = Sisa mod 60
Output : J, M, D

OSCAR KARNALIM, S.T., M.T.


30

Solusi Persoalan 2
# File : KonversiDetik.py
# Nama program : Program Konversi Detik
# Kamus Data
# Detik : variabel input (integer)
# J : var. utk nilai Jam (integer)
# Sisa : var. utk nilai Sisa (integer)
# M : var. utk nilai Menit (integer)
# D : var. utk nilai Detik (integer)

Detik = int(input(" Input Detik :"))


J = Detik // 3600
Sisa = Detik % 3600
M = Sisa // 60
D = Sisa % 60
print (“Hasil konversi”,Detik,”detik”)
print (“Nilai Jam : “,J)
print (“Nilai Menit : “,M)
print (“Nilai Detik : “,D)

OSCAR KARNALIM, S.T., M.T.


31

Referensi
• Liem, Inggriani. Diktat Kuliah Dasar Pemrograman (Paradigma Prosedural), KK Rekayasa
Perangkat Lunak dan Data, Sekolah Tinggi Elektro dan Informatika ITB, 2008.
• Wirth, Niklaus. Algorithms + Data Structures = Programs, Prentice Hall, 1986.
• Knuth, DE. The Art of Computer Programming: Fundamental Algorithms, Addison-Wesley, 1997.
• Python Programming Language, http://www.python.org
• Norton, P., Samuel, A., Aitel, D., Foster-Johnson, E., Richardson, L., Diamond, J., et al. (2005).
Beginning Python. Canada: Wiley Publishing, Inc.
• Zelle, J. M. (2002). Python Programming : An Introduction to Computer Science. Wartburg
College.
• Summerfield, M.(2010). Programming in Python 3. Addison Wesley.
• Referensi lain

OSCAR KARNALIM, S.T., M.T.

Anda mungkin juga menyukai