Penggunaan Pengulangan for dan while di Python - Open Source Lab -->

Penggunaan Pengulangan for dan while di Python

Looping in Python - Melanjutkan dari artikel sebelumnya, kali ini saya akan membahas mengenai penggunaan pengulanan for dan while pada bahasa pemrograman Python. Seperti pada bahasa pemrograman lainnya, Python memiliki mekanisme pengulangan untuk menjalankan suatu pekerjaan secara berulang-ulang. Pada umumnya pengulangan terdiri dua jenis. Ada pengulangan yang terbatas dan tidak terbatas. Pengulangan terbatas biasanya dilakukan pengulangan dari 1 hingga kesekian kali (n kali). Perulangan terbatas menggunakan for. Sedangkan pengulangan tidak terbatas menggunakan while. Dalam pengulangan menggunakan while pengulangan akan terus dilakukan selama kondisional dalam perulangan while tetap dalam keadaan true jika dalam keadaan false maka pengulangan while akan berhenti.

Cara Penggunaan Pengulangan for dan while di Python

Penggunaan Pengulangan "for"

Pertama-tama kita akan menggunakan pengulangan for. Dalam pengulangan for, tidak seperti di bahasa pemorgraman C atau Java yang menggunakan nilai incremental untuk melakukan pengulangan. Di Python, for melakukan pengulangan dengan meng-iterasi elemen dari sebuah list. List ini dapat berisi kumpulan karakter, kumpulan string, kumpulan angka, atau kumpulan data jenis lainnya yang disediakan Python.

Misalkan terdapat sebuah list yang berisi [1,2,3,4,5]. Banyaknya elemen pada list tersebut menentukan banyaknya pengulangan yang akan dilakukan saat melakukan pengulangan. Untuk umplementasinya coba jalankan code berikut:

Name : program_for1.py

#! /usr/bin/env python3

##  Program ini dijalankan menggunakan Python3 di Linux
##  Because we Love Open Source :)
print("Contoh program looping for: ")
for i in [1,2,3,4,5]:
    print("Ini pengulangan ke - %d" %(i))

Pada contoh diatas, akan dicetak teks “ini pengulangan ke - “ sebanyak 5 kali. Nilai 'i' pada pengulangan tersebut akan selalu berganti nilainya setiap tahap pengulangan dilakukan. Misal ketika pengulangan pertama, nilai 'i' akan berisi 1, ketika pengulangan kedua, nilai 'i' akan berisi 2, begitu seterusnya sampai elemen terakhir. Jika program tersebut dieksekusi maka hasilnya:

Contoh program menggunakan for

Selain menggunakan list yang berisi angka, List yang berisi string dapat digunakan juga untuk melakukan pengulangan for di Python. Misal terdapat list yang berisi seperti berikut [“Dadar Telur”, “Nasi Goreng”, “Sate Rebus”, “Kupat Tahu”, “Kerak Telor”, “Es Goreng”, “Pempek Selam”, “Ayam Renang”], dalam list tersebut terdapat elemen sebanyak delapan jenis masakan
nusantara dan masakan khayalan masa depan dengan doi ckckck. Dengan demikian ketika pengulangan for menggunakan list masakan tadi, pengulangan akan dijalankan sebanyak delapan kali. Mari kita coba implementasikan pada kode dibawah ini:

Name : program_for2.py

#! /usr/bin/env python3

##  Program ini dijalankan menggunakan Python3 di Linux
##  Because we Love Open Source :)
print("Contoh program looping for: ")
for i in ['Dadar Telur', 'Nasi Goreng', 'Sate Rebus', 'Kupat Tahu', 'Kerak Telor', 'Air Goreng', 'Pempek Selam', 'Ayam Renang']:
    print("Masakan bersama doi, %s" %(i))

Hasil ketika program dieksekusi:

Contoh program menggunakan for

Pada contoh program berikut, cobalah menggunakan looping dengan string. String pada dasarya merupakan list karakter. Misal terdapat string seperti berikut "abcde". Jika string tersebut digunakan pada pengulangan for, maka akan terjadi pengulangan sebanyak lima kali. Coba lihat kode dibawah ini :


Name : program_for3.py

#! /usr/bin/env python3

##  Program ini dijalankan menggunakan Python3 di Linux
##  Because we Love Open Source :)
print("Contoh program looping for: ")
for i in 'abcde':
    print("alfabet %s" %(i))

Hasil ketika program dieksekusi:

Contoh program menggunakan for


Memahami Fungsi "range"


Kalau teman – teman memperhatikan list yang dipakai pada program_for1.py, pengulangan tersebut menggunakan list angka yang sudah jadi atau di-hardcode. Nah bagaimana nih kalau ingin membentuk suatu pola atau ingin membuat list incremental agar pengulangan for di Python ini mirip di Java atau C. Di Python terdapat fungsi yang bernama range(). Range ini menghasilkan deret angka dengan parameter (start, stop, step). Start adalah batasawal dari list, stop adalah batas akhir dari list, step adalah jarak antar angka yang dihasilkan oleh range. Ada beberapa kasus penting yang perlu diperhatikan saat menggunakan range. Perhatikan kode dibawah ini :


Name : range_func.py

#! /usr/bin/env python3

##  Program ini dijalankan menggunakan Python3 di Linux
##  Because we Love Open Source :)

# Case 1 : Jika step tidak disertakan maka step akan diisi 1 secara default
print (range(1,20))

# Case 2 : Jika step disertakan maka step akan sesuai dengan angka yang diisikan
print (range(1,20,2))
print (range(1,20,3))
print (range(1,20,4))
print (range(1,20,5))

# Case 3 : Jika step melebihi stop maka list hanya akan berisi start
print (range(1,20,21))

# Case 4 : Jika start melebihi besar nilainya daripada stop maka list akan kosong
print (range(20,1))

# Case 5 : Jika start lebih besar nilainya daripada stop dan jika
# Step melebihi stop maka list akan kosong
print (range(20,1,2))
print (range(20,1,22))

# Case 6 : Jika start lebih besar daripada stop dan step bernilai minus dan jika
# Start dikurangi step menghasilkan angka positif
# maka list akan berisi deret angka menurun
print (range(20,1,-1))

# Case 7 : Jika start lebih besar daripada stop dan step bernilai minus dan jika
# Start dikurangi step bernilai minus maka list hanya akan berisi start
print (range(20,1,-21))

# Case 8 : Jika step bernilai 0 maka akan terjadi error
# ERROR
print (range(1, 20, 0))

# Case 9 : Jika start lebih besar daripada stop dan step bernilai 0 maka akan terjadi error
# ERROR
print (range(1, 20, 0))

Hasil ketika program dieksekusi:

Contoh program menggunakan range()

Jika Anda ingin tahu tipe data apa yang digunakan pada fungsi range(), coba ketikan perintah:

print (type(range(1,5)))


Menggunakan Fungsi "range" Pada Pengulangan "for"


Sampai disini kita sudah mengetahui bagaimana cara kerja pengulangan / looping for dan cara menggunakan fungsi range. Selanjutnya bagaimana jika fungsi range di pakai pada looping for ? Coba Anda perhatikan contoh program berikut:

Name : range_for.py

#! /usr/bin/env python3

##  Program ini dijalankan menggunakan Python3 di Linux
##  Because we Love Open Source :)

# Fungsi range() pada looping for
for i in range(1,10):
    print ("Ini looping ke - %s" %(i))


Pada contoh program diatas akan terjadi pengulangan sebanyak 10 kali terhadap statement dibawah for. Dengan menggunakan range, Anda tidak perlu repot untuk membuat list terlebih dahulu untuk menentukan banyaknya pengulangan yang akan Anda lakukan terhadap statement. Jika program diatas dieksekusi maka hasilnya:

Contoh program menggunakan for

Agar lebih memahami lagi pengulangan for, cobalah 2 contoh program berikut. Terdapat sebuah program membuat segitiga yang dibuat dari kumpulan bintang dan sebuah program bilangan prima. Untuk lebih jelasnya, coba perhatikan kode berikut:

Name : program_segitiga.py

#! /usr/bin/env python3

##  Program ini dijalankan menggunakan Python3 di Linux
##  Because we Love Open Source :)

# Program membuat segitiga
for i in range(0,10):
    for j in range(0,i+1):
        if j == i:
            print ("+")
        else:
            print ("*"),

print("")

for a in range(10,0,-1):
    for b in range(1,a+1):
        if b == a:
            print("+")
        else:
            print("*"),

# Soal pemrograman, buatlah program untuk membuat segitia seperti berikut:
                  +
                + *
              + * *
            + * * * 
          + * * * *
        + * * * * * 
      + * * * * * *
    + * * * * * * * 
  + * * * * * * * *
+ * * * * * * * * * 

Hasil program ketika dieksekusi:

Contoh program menggunakan for

Kemudian dibawah ini adalah kode program untuk mencari bilangan prima. Bilangan prima adalah bilangan yang hanya bisa dibagi 1 dan bilangan itu sendiri. Perhatikan kode program berikut:

Name : bil_prima.py

#! /usr/bin/env python3

##  Program ini dijalankan menggunakan Python3 di Linux
##  Because we Love Open Source :)

# Program bilangan prima
for x in range(1,20):
    count_zero_remainder = 0
    for a in range(1, x+1):
        
        num_remainder = x%a
        if num_remainder == 0:
            count_zero_remainder = count_zero_remainder + 1

    if count_zero_remainder == 2:
        print (x, "adalah bilangan prima (+)")
    else:
        print (x, "bukan bilangan prima")

Hasil program jika dieksekusi:

Contoh program menggunakan for

Menggunakan Pengulangan "while"

Sekarang kita akan bahas pengulangan yang menggunakan while. Pengulangan while memiliki cara kerja selama kondisi tertentu bernilai true maka pengulangan akan diteruskan sampai kondisi bernilai false. Tentunya dalam kondisi yang dipakai untuk eksekusi while memerlukan operator logika dan perbandingan. Untuk contoh programnya, langsung saja lihat kode program berikut:

Name : while_1.py

#! /usr/bin/env python3

##  Program ini dijalankan menggunakan Python3 di Linux
##  Because we Love Open Source :)

# Penggunaan looping while
angka = 1
while (angka <10):
    print("Semangat kakak ke -",angka)
    angka+=1

Hasil programnya seperti ini:

Semangat kakak ke - 1
Semangat kakak ke - 2
Semangat kakak ke - 3
Semangat kakak ke - 4
Semangat kakak ke - 5
Semangat kakak ke - 6
Semangat kakak ke - 7
Semangat kakak ke - 8
Semangat kakak ke - 9

Pada contoh diatas kondisi untuk melakukan pengulangan ditaruh di while. Sekarang Anda coba taruh kondisi pengulangan di dalam pengulangannya. Coba lihat contoh berikut :

Name : while_2.py

#! /usr/bin/env python3

##  Program ini dijalankan menggunakan Python3 di Linux
##  Because we Love Open Source :)

# Penggunaan looping while
logika = True
while logika:
    temp = int(input("Masukan angka < 10 :"))
    if temp < 10:
        logika = True
    else:
        logika = False

Satu lagi contoh program dengan menggunakan looping while:

Name : while_3.py

#! /usr/bin/env python3

##  Program ini dijalankan menggunakan Python3 di Linux
##  Because we Love Open Source :)

# Penggunaan looping while
a = 1
value = 0

while a <= 10:
    print("Loop - %d. %d + %d"%(a, value, a))
    value = value + a
    a += 1

print ("tottal angka yang dijumlahkan :",value)

Penggunaan looping ini akan dipakai terus menerus untuk keperluaan programming. Semoga artikel ini bisa bermanfaat buat teman-teman. Jika ada yang ingin ditanyakan silahkan bertanya pada komentar di bawah dan jika artikel ini bermanfaat, silahkan share ke sosmed. Terima kasih.

Follow Fanspage kami >> OpenSourceLab

 

0 Response to "Penggunaan Pengulangan for dan while di Python"

Post a Comment