Anda di halaman 1dari 34

IN010

Dasar Pemrograman
02- Program Sederhana
Program Sederhana
• Variabel
• Instruksi
• Assignment
• Input
• Print

• Struktur Program
• Aksi Sekuensial

IN010/DP/MA/WFS/OK/2014
• Nama : sesuatu yang dipakai sebagai identifikasi
• Program, type, fungsi
• tempat penyimpanan nilai (variabel)
• Format nama :
• Dimulai dengan huruf
• Tidak mengandung spasi dan atau operator
• Bukan nama instruksi

IN010/DP/MA/WFS/OK/2014
• 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)

IN010/DP/MA/WFS/OK/2014
• Nilai :
• suatu besaran bertype yang telah dikenal
• Nilai diperoleh dari
• isi suatu nama (informasi/konstanta)
• hasil perhitungan suatu ekspresi
• hasil yang dikirim suatu fungsi
• konstanta bernama atau tidak bernama
• Pengisian Nilai :
• assignment
• pembacaan data input

IN010/DP/MA/WFS/OK/2014
• Assignment : menyimpan nilai pada suatu nama informasi/variabel
• Tipe data nama = tipe data nilai
• Notasi assignment :
<nama1> = <nama2>
<nama1> = <konstanta>
<nama1> = <ekspresi>

• Contoh :
#nilaiA, nilaiB, nilaiC : integer
#nilaiX, nilaiY : float
nilaiA = 250
nilaiY = 20.5
nilaiB = nilaiA
nilaiC = nilaiA + nilaiB
nilaiX = nilaiY + nilaiB

IN010/DP/MA/WFS/OK/2014
• Input : pembacaan nilai dari piranti masukan
• Perintah input :
<namaVar> =input(“String Pesan”)
<namaVar> =type(input(“String Pesan”))
• Contoh :
# nilaiC : integer
# nama : string
# nilaiX : float
nilaiC = int(input(“Masukkan nilai C:”))
nilaiX = float(input(“Masukkan nilai X:”))
nama = input(“Ketikkan nama:”)

IN010/DP/MA/WFS/OK/2014
• Output : penulisan nilai ke piranti keluaran
• Notasi output :
print(“String pesan”,<daftar-nama-var>)
• Contoh :
#nilaiX : float
#nilaiC : integer
#nama : string
print(“Nilai C :”,nilaiC,“Nilai X :”,nilaiX)
print(“Nama :”,nama)
8

IN010/DP/MA/WFS/OK/2014
• Formatting : pengaturan tampilan data ke layar
• Parameter untuk print :
• end : parameter untuk akhir baris
• sep : parameter untuk separator antar output string
# Contoh program pemakaian end Tampilan Layar
x = 5
y = 0.0025
5
# x dan y dicetak dalam baris terpisah 0.0025
print (x)
print (y) 5 0.0025
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)

IN010/DP/MA/WFS/OK/2014
# 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 Layar

Hello from Bandung !


Hello from Bandung!
Hello from Bandung !
Hello from Bandung !

10

IN010/DP/MA/WFS/OK/2014
Formatting numerik : pengaturan tampilan angka ke layar
Sintaks Umum (integer):
print(“{<pos-1>:<d-1>d}... {<pos-n:<d-n>d}”
.format(<var-1>,<var-2>, ... <var-n>)
pos-i : posisi var. ke-i dalam output, i bernilai 0,1,...,n
d-i : panjang digit utk var. ke-I
var-i : variabel/ekspresi ke-i

# Contoh program dgn format integer


x = 5
print (x, x*x, x*x*x)
print("{0:2d} {1:3d} {2:4d}".format(x, x*x, x*x*x))

Tampilan Layar

5 25 125
5 25 125

11

IN010/DP/MA/WFS/OK/2014
Formatting numerik : pengaturan tampilan angka ke layar
Sintaks Umum (float):
print(“{<pos-1>:<p-1>.<f-1>f}... {<pos-n:<p-n>.<f-n>f}”
.format(<var1>,<var2>, ... <varn>)
pos-i : posisi var. ke-i dalam output, i bernilai 0,1,...,n
p-i : panjang digit utk var ke-i
f-i : panjang digit di belakang titik desimal
var-i : variabel ke-i

# Contoh program dgn format float


y = 0.25678
print (y)
print("{0:4.2f}".format(y))

Tampilan Layar

0.25678
0.26

12

IN010/DP/MA/WFS/OK/2014
• Ekspresi : rumus perhitungan yang terdiri dari operan
dan operator
• Operan : konstanta, nama, hasil fungsi, ekspresi
• Contoh ekspresi boolean :
True and False hasilnya False
True or False hasilnya True
not True hasilnya False

13

IN010/DP/MA/WFS/OK/2014
• Diketahui i=7 ; x=5
• Contoh ekspresi numerik :
1+3*5 hasilnya 16
(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

14

IN010/DP/MA/WFS/OK/2014
• Contoh ekspresi string :
• “ini ” + ”aku” hasilnya “ini aku”
• ‘a’ == ‘x’ hasilnya False
• “ini” != “aku” hasilnya True
• “ma” < ”ta” hasilnya True
• ‘a’ in “mata” hasilnya True

15

IN010/DP/MA/WFS/OK/2014
Latihan Penulisan Ekspresi

• Tuliskan rumus berikut ini sebagai ekspresi

a (b  c )( d 2  b )
ab 
b  d (c  a )

x( y  z )  ( x  y ) 2
( xy  yz )( y  z )

16

IN010/DP/MA/WFS/OK/2014
# File : <namafile.py>
# Nama Program
# ---- Kamus Data ----
# Penjelasan setiap variabel dan data yang dipakai
# dalam program
# nama_variabel : kegunaannya (tipe)

# ---- Bagian Instruksi (Algoritma) ----

Perintah untuk Input Data

Perintah untuk Proses Data

Perintah untuk Output Data

17

IN010/DP/MA/WFS/OK/2014
#File : Hello1.py #File : Hello2.py
#Program Hello versi 1 #Program Hello versi 2
# Kamus Data # Kamus Data
# pesan : variabel (string)
print ("Hello World")
pesan = " Hello World “
print (pesan)

Apakah output yang dihasilkan Hello1.py sama dgn Hello2.py ?

18

IN010/DP/MA/WFS/OK/2014
#File : Hello3.py
#Program Hello versi 3
# Kamus Data
# nama : var.input (string)

nama = (input(" Input Nama :"))


print ("Hello ", nama)

Tampilan yang dihasilkan Hello3.py bergantung pada data


yang diberikan sebagai input

19

IN010/DP/MA/WFS/OK/2014
• Struktur kendali program yang paling sederhana
• sederetan instruksi yang dilaksanakan berdasarkan
urutan penulisannya
• Contoh :

instruksi-1
instruksi-2
...
instruksi-N

20

IN010/DP/MA/WFS/OK/2014
#File : AksiSeq1.py
#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)

21

IN010/DP/MA/WFS/OK/2014
#File : AksiSeq2.py
#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)
22

IN010/DP/MA/WFS/OK/2014
# File : Tukar.py
# Program Tukar Isi 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)

23

IN010/DP/MA/WFS/OK/2014
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
24

IN010/DP/MA/WFS/OK/2014
Program
HitungMenitDetik (v.1)
#File : HitungMD1.py
#Program Hitung MenitdanDetik versi 1
# 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)

25

IN010/DP/MA/WFS/OK/2014
Program HitungMenitDetik
(v.2)
#File : HitungMD2.py
#Program Hitung MenitdanDetik versi 2
# 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)

26

IN010/DP/MA/WFS/OK/2014
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 // 3600 ; Sisa = N % 3600
M = Sisa // 60; D = Sisa % 60
Output : J, M, D
27

IN010/DP/MA/WFS/OK/2014
Program Konversi Detik
#File : KonversiDetik.py
#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)

28

IN010/DP/MA/WFS/OK/2014
Program Konversi Detik

TAMPILAN DI LAYAR :
Input N (detik) : 5000
Output :
Jam = 1
Menit = 23
Detik = 20

29

IN010/DP/MA/WFS/OK/2014
• Dibaca sebuah bilangan bulat positif (rupiah), harus
dihitung berapa ekivalensinya dalam dollar ($). Buatlah
program dengan :
• Kurs yang tetap, mis. 1$ = 9500
• Kurs yang selalu berubah
• Contoh : (1$ = 9500)
Input : 95000
Output : $10

30

IN010/DP/MA/WFS/OK/2014
• Dibaca 5 buah bilangan A1,A2,A3,A4,A5, harus dihitung
jumlah kelima bilangan itu dan nilai rata-ratanya.
• Contoh :
Input : 50 Output :
60 Jumlah : 350
80 Nilai rata-rata : 70.0
70
90
31

IN010/DP/MA/WFS/OK/2014
• Dibaca suatu bilangan yang menyatakan suhu dalam
derajat Celcius, harus dihitung suhu yang sama dalam
derajat Fahrenheit dan Reaumur.
• Contoh :
Input : Celcius : 50
Output : Fahrenheit : 122.0
Reaumur : 40.0

32

IN010/DP/MA/WFS/OK/2014
• Dibaca suatu bilangan yang berat dalam gram, harus dihitung
ekivalensi berat tersebut dalam satuan kg dan pon.
• 1 kg = 1000 gram, 1gram = 0.00220 pon
• Contoh :
Input : Berat (gr) : 5000

Output : Berat(Kg) :5
Berat(pon) : 11

33

IN010/DP/MA/WFS/OK/2014
• Dibaca sebuah bilangan bulat positif (rupiah) 4 digit,
harus dihitung berapa lembar uang seribu, lima ratus,
seratus, dan lima puluh rupiah yang harus disediakan.
• Contoh :
Input : 9650
Output : Seribu =9
Lima ratus =1
Seratus =1
Lima puluh =1
34

IN010/DP/MA/WFS/OK/2014

Anda mungkin juga menyukai