Pernyataan bersyarat IF
Jika memenuhi kondisi yang diinginkan, maka akan dijalankan perintah selanjutnya. Jika tidak program lanjut dengan menghiraukan
kondisi if
In [3]:
if n > 0:
print(" n bilangan positif")
Dengan menambahkan else if (elif), maka program akan menambahkan kondisi kedua yang akan menjakalnkan suatu perintah
tertentu manakala memenuhi kondisi dari else if (elif)
In [7]:
if n > 0:
print("n bilangan positif")
elif n < 0:
print(" n bilangan negatif")
n bilangan negatif
Karena bilangan real hanya memenuhi 3 kondisi (lebih besar dari nol, lebih kecil, dan sama dengan nol) maka jika tidak memenuhi
dua kondisi sebelumnya bisa memakai else.
Else adalah conditional statement yang akan dijalankan manakala conditional statement if dan elif sebelumnya tidak dapat dipenuhi
In [9]:
n = 0
if n > 0:
print("n bilangan positif")
elif n < 0:
print(" n bilangan negatif")
else :
print("n adalah nol")
n adalah nol
In [11]:
n = 4
if n > 0:
print("n bilangan positif")
elif n < 0:
print(" n bilangan negatif")
elif n==0 :
print("n adalah nol")
print("n adalah nol")
n bilangan positif
In [12]:
if n > 0:
print("n bilangan positif")
elif n < 0:
print(" n bilangan negatif")
else :
print("n adalah nol")
Kondisi dari conditional statement bisa berupa perbandingan >=, <= , > ,< , == ,!= jika melibatkan integer atau float dan bisa berupa
perbandingan ==, !=, dan in jika melibatkan suatu string
In [15]:
if n%2 == 0:
print("n bilangan genap")
In [17]:
nama = input("Masukan nama panjang anda :")
nama_panggil = input("Masukan nama panggil anda :")
if nama_panggil in nama:
print("Wah namamu bagus sekali ")
else:
print("Mengapa nama panggil mu tidak berkaitan dengan namamu ?")
In [27]:
#Mencari tahu suatu bilangan bulat positif,negatif,atau nol dan apakah bilangan itu ganjil atau ge
nap
nap
n = int(input("Masukan bilangan bulat : "))
if n>0:
if n%2==0:
print("n bilangan positif genap")
else:
print("n bilangan positif ganjil")
elif n <0:
if n%2==0:
print("n bilangan negatif genap")
else:
print("n bilangan negatif ganjil")
else:
print("n adalah nol")
In [74]:
#Mencari tahu suatu bilangan bulat positif,negatif,atau nol dan apakah bilangan itu ganjil atau ge
nap
n = int(input("Masukan bilangan bulat : "))
else:
print("n adalah nol")
for loop dapat mengiterasi suatu barisan tertentu dengan menggunakan fungsi range pada python
In [35]:
for x in range(4):
print(x)
0
1
2
3
In [34]:
for x in range(3,10):
print(x)
3
4
5
6
7
8
9
In [33]:
for x in range(0, 8, 2):
print(x)
0
2
4
6
In [67]:
for x in range(10,0,-1):
print(x)
10
9
8
7
6
5
4
3
2
1
In [ ]:
for i in "saya makan":
print(i)
In [36]:
n = int(input("Masukan bilangan bulat positif : "))
for x in range(n):
print(x)
In [58]:
for i in range(3):
for j in range(5):
print(i,j)
0 0
0 1
0 2
0 3
0 4
1 0
1 1
1 2
1 3
1 4
2 0
2 1
2 2
2 3
2 4
In [56]:
s
a
y
a
m
a
Dapat dilihat bahwa program tidak mencetak string "k" karena program berhenti pada saat program mengiterasi huruf "k"
Break hanya keluar dari satu for loop yang sedang dijalankan (tidak keluar dari semua loop pada nested loop)
In [64]:
for i in range(3):
for j in "saya makan":
if j =="k":
break
print(i,j)
0 s
0 a
0 y
0 a
0
0 m
0 a
1 s
1 a
1 y
1 a
1
1 m
1 a
2 s
2 a
2 y
2 a
2
2
2 m
2 a
pernyataan continue digunakan untuk menskip sisa dari program didalam loop untuk interasi tertentu saja. Loop tidak berhenti tapi
lanjut ke iterasi selanjutnya
In [62]:
#contoh program yang menghiraukan bilangan genap
n = int(input("Masukan bilangan bulat positif : "))
for i in range(1,n+1):
if i%2 == 0:
continue
print(i)
Continue hanya menskip satu iterasi dari for loop yang sedang dijalankan (tidak menskip semua loop pada nested loop)
In [66]:
for i in range(4):
for j in "saya makan":
if j == "a":
continue
print(i,j)
0 s
0 y
0
0 m
0 k
0 n
1 s
1 y
1
1 m
1 k
1 n
2 s
2 y
2
2 m
2 k
2 n
3 s
3 y
3
3 m
3 k
3 n
While loop
while loop dapat menjalankan suatu perintah berulang kali selama kondisinya benar
Hati-hati, loop bisa berjalan terus menerus tanpa berhenti. Jika hal itu terjadi restart kernel
In [1]:
i = 1
while i < 6:
print(i)
i = i+1
1
2
3
4
5
While loop beriterasi bisa dengan kondisi yang lebih fleksibel dibanding for loop
In [4]:
#iterasi dengan membagi bilangan dengan angka dua sampai |n| < 1
i = 200
while abs(i)>1:
print(i)
i=i/2
200
100.0
50.0
25.0
12.5
6.25
3.125
1.5625
dan loop bisa berhentikan dengan beberapa kondisi jika menggunakan boolean operator
In [2]:
#input dua bilangan bulat i,j
#i akan dijumlahkan dengan 1 dan j akan dikurangi dengan 1 sampai i positif dan j negatif
In [4]:
n = int(input("Masukan bilangan bulat : "))
while n > 1:
n = n/2
if n == 2:
break
print(n)
In [8]:
i = 0
while i< n:
i = i+1
if i%2 == 0:
continue
print(i)
In [ ]: