Modul Belajar Bahasa Pemrograman Python Untuk Pemula

Assalamu‘alaikum wr. wb.

Hello guys, Kembali lagi bersama Teknoblog Inzaghi's Blog! Pastinya kalian yang ingin jago di bidang IT pastinya ingin mempelajari tentang Bahasa Pemrograman (Programing Languages)? Dan biasanya bagi kalian sebagai Pemula pastinya merasa kesulitan untuk mempelajari Koding (Coding)? Kali ini kita akan membahas tentang Bahasa Pemrograman Python.

Sumber Artikel Utama Duniailkom.com dan Javatpoint.com

Python merupakan bahasa pemrograman yang sering direkomendasikan untuk pemula, selain Pascal, C, dan C++. Kelebihan Python terletak pada kesederhanaan, kekompakan, dan kejelasan perintahnya.

Python juga merupakan bahasa pemrograman yang sangat kuat dan memiliki banyak penerapan di bidang ilmu data. Jika Anda tertarik dalam membuat aplikasi modern seperti Big Data, Data Mining, Deep Learning, Data Science, dan Machine Learning, Python dapat digunakan untuk tujuan tersebut.

Python juga mendukung paradigma pemrograman ganda. Anda dapat menulis kode program prosedural seperti dalam Pascal atau C, dan juga mendukung pemrograman berorientasi objek (OOP) seperti Java. Dengan kata lain, Python adalah bahasa yang lengkap untuk era modern.

Dibandingkan dengan bahasa pemrograman lainnya, perintah dalam Python cenderung mudah dipelajari, mudah dibaca, dan memiliki Sintaks yang lebih singkat. Python juga dapat digunakan pada berbagai sistem operasi seperti Windows, Linux, dan macOS.

Salah satu pertimbangan penting untuk mempelajari Python adalah dukungan library yang sangat luas, terutama dalam pembuatan kode program yang terkait dengan ilmu data.


PENGERTIAN BAHASA PEMROGRAMAN PYTHON

Sumber : Duniailkom.com (Pengertian Bahasa Pemrograman Python)Idmetafora.com, dan Baktikominfo.id

Python adalah bahasa pemrograman tingkat tinggi yang berjalan dengan sistem interpreted dan dapat digunakan untuk berbagai tujuan.

Istilah "bahasa pemrograman tingkat tinggi" merujuk pada sejauh mana sebuah bahasa pemrograman mendekati kode-kode listrik yang digunakan oleh komputer. Bahasa pemrograman diklasifikasikan sebagai bahasa pemrograman tingkat tinggi karena perintah atau kode program yang digunakan mirip dengan bahasa manusia, seperti bahasa Inggris.

Hampir semua bahasa pemrograman modern termasuk dalam kategori bahasa pemrograman tingkat tinggi, seperti Pascal, C++, Java, PHP, JavaScript, dan Python. Bahasa C masih dianggap sebagai bahasa pemrograman tingkat menengah karena beberapa perintahnya dapat langsung mengakses perangkat keras komputer, meskipun hal ini juga membuat bahasa C lebih rumit untuk dipelajari.

Python menggunakan metode Pemrosesan Interpreted, di mana kode program diproses baris per baris secara langsung dari kode program tanpa memerlukan proses kompilasi. Hal ini mirip dengan bahasa scripting seperti PHP dan JavaScript.

Sejarah Singkat Python

Bahasa pemrograman Python dirilis pertama kali oleh Guido van Rossum di tahun 1991, yang sudah dikembangkan sejak tahun 1989.

Awal pemilihan nama Python tidak secara langsung berasal dari nama ular piton, tapi sebuah acara humor di BBC pada era 1980an dengan judul “Monty Python’s Flying Circus“. Monty Python adalah kelompok lawak yang membawakan acara tersebut. Kebetulan Guido van Rossum adalah penggemar dari acara ini.

Pada tahun 1994, Python 1.0 dirilis, yang diikuti dengan Python 2.0 pada tahun 2000. Python 3.0 keluar pada tahun 2008.

Saat tutorial ini ditulis, versi terakhir Python adalah Python 3.7 yang baru saja di rilis Juni 2018. Web resmi python berada di www.python.org.

Kelebihan dan Kekurangan Python

Banyak orang tertarik menggunakan Python karena dianggap mudah dipelajari, bahkan oleh pemula. Kode dalam Python mudah dibaca dan dapat menjalankan fungsi kompleks dengan mudah berkat keberadaan standard library yang banyak. Pengembangan program dengan Python juga dapat dilakukan dengan cepat dan dengan penggunaan kode yang lebih sedikit. Python bahkan mampu mengatasi kompleksitas program yang tinggi menjadi lebih mudah. Python mendukung berbagai platform dan sistem, serta memiliki sistem pengelolaan memori otomatis seperti Java.

Namun, Python memiliki kelemahan dalam hal kecepatan eksekusi yang relatif lambat. Dalam pengembangan platform Android dan iOS, dukungannya juga terbatas. Python juga memiliki keterbatasan dalam akses basis data. Selain itu, Python kurang cocok untuk tugas-tugas yang membutuhkan penggunaan memori yang intensif dan pekerjaan dengan multi-core/multi-processor.

Meme Bahasa Pemrograman Python

Meme Bahasa Pemrograman Python

Dan sekali lagi, Python di sini bukan bermaksud dengan Ular Berbisa seperti Ular Sanca. Memang, Logo dari Bahasa Pemrograman Python itu menggunakan Ular Piton (Sanca).


CONTOH PENERAPAN PYTHON YANG SERING DIGUNAKAN

Sumber : Duniailkom.com (Pengertian Bahasa Pemrograman Python)Idmetafora.com, dan Baktikominfo.id

Keunggulan Python dan Ekosistem Library yang luas menjadikannya cocok untuk berbagai aplikasi.

Berikut adalah beberapa contoh penggunaan Python dalam berbagai bidang :

1. Web Development

Python digunakan dalam pengembangan web dengan menggunakan kerangka kerja seperti Django dan Flask. Kerangka kerja ini memungkinkan pembuatan situs web, mengelola routing, berinteraksi dengan database, dan lainnya.

2. Data Analysis dan Visualisasi

Python populer di bidang Data Science dan Analisis Data. Library seperti NumPy, pandas, dan Matplotlib memungkinkan manipulasi data, analisis, dan visualisasi data.

3. Machine Learning dan Artificial Intelligence

Python adalah salah satu bahasa pemrograman yang paling populer dalam Machine Learning dan Kecerdasan Buatan (AI). Library seperti Scikit-Learn, TensorFlow, dan PyTorch menyediakan alat untuk membangun dan melatih model Machine Learning.

4. Scripting

Python sering digunakan sebagai bahasa scripting untuk mengotomatisasi tugas-tugas yang repetitif, seperti operasi file, administrasi sistem, dan pemrosesan data.

5. Scientific Computing

Python digunakan dalam komputasi ilmiah berkat library seperti SciPy dan Biopython. Library ini menyediakan fungsi dan alat untuk perhitungan ilmiah, simulasi, dan pengolahan data ilmiah.

6. Game Development

Python dapat digunakan dalam pengembangan game menggunakan library seperti Pygame dan Pyglet. Library ini menyediakan fitur untuk membangun game 2D.

7. Desktop Application Development

Python dapat digunakan untuk membuat aplikasi desktop dengan antarmuka grafis (GUI) menggunakan kerangka kerja seperti PyQt, wxPython, dan Tkinter.

8. Internet of Things (IoT)

Python digunakan untuk pemrograman dan pengendalian perangkat Internet of Things (IoT). Library seperti Raspberry Pi GPIO memungkinkan Anda berinteraksi dengan perangkat keras menggunakan Python.

9. Scripting untuk Software Testing

Python sering digunakan untuk scripting dan otomatisasi dalam pengujian perangkat lunak. Framework seperti Selenium dan Pytest menyediakan alat untuk menguji aplikasi web dan menulis skrip pengujian otomatis.

10. Network Programming

Python dapat digunakan untuk pemrograman jaringan dan membangun aplikasi jaringan. Library seperti socket dan requests memungkinkan Anda untuk bekerja dengan protokol jaringan dan melakukan tugas terkait jaringan.


CARA MELAKUKAN INSTALASI PYTHON

Sumber : Petanikode.com

Sebelum melakukan Pemrograman Python, kita akan melakukan Instalasi terlebih dahulu.

Pertama-tama, pastikan Komputer/Laptop (PC) Anda telah terinstal Bahasa Pemrograman Python. Jika belum menginstal Python, silakan klik di sini (Website Resmi Python di Python.org).

Jika sudah, bukalah File Setup dari Python lalu klik "Install Now".

Tunggulah beberapa saat untuk proses Instalasi Python.

Jika sudah, maka klik "Close". Anda telah berhasil melakukan Download dan Install Python.

Untuk memeriksa Versi Python di Windows, bukalah Command Prompt (CMD), lalu ketiklah :

python --version

Selanjutnya, jika saat mengetik "python" muncul Microsoft Store, maka Download terlebih dahulu dengan mengeklik "Get".


KONSEP DASAR BAHASA PEMROGRAMAN PYTHON

Sumber Artikel Materi Duniailkom.com (Membuat Variabel) dan Duniailkom.com (Tipe Data dalam Python)

A. Variabel dan Tipe Data

Variabel adalah "penanda" yang digunakan dalam pemrograman untuk menampung nilai. Nilai tersebut dapat diubah sepanjang kode program. Variabel dapat diibaratkan sebagai lemari penyimpanan yang dapat diisi dengan berbagai data, dan isi lemari tersebut dapat ditukar jika diperlukan.

Kesederhanaan kembali terlihat di dalam bahasa Python, dimana kita tidak perlu mendeklarasikan variabel untuk bisa menggunakannya.

Dalam bahasa Python, variabel bisa langsung ditulis pada saat akan digunakan. Untuk memberi nilai ke dalam sebuah variabel, gunakan tanda sama dengan ( = ), seperti contoh berikut :

website = "Inzaghis Blog"
harga = 20000
sukses = True

Pada baris pertama, dilakukan pembuatan variabel dengan nama website dan diberikan nilai "Inzaghis Blog". Pada baris kedua, dibuat variabel "nilai" dengan nilai 20000. Pada baris ketiga, variabel "sukses" dibuat dan diberikan nilai True.

Proses pemberian nilai ke dalam variabel ini disebut operasi assignment, dan dilakukan dari kanan ke kiri. Artinya, kode "website = "Inzaghis Blog"" adalah proses memberikan nilai "Inzaghis Blog" ke dalam variabel "website".

Untuk menampilkan variabel dalam bahasa Python, kita bisa menggunakan perintah print, lalu menulis nama variabel di dalam tanda kurung seperti contoh berikut :

website = "Inzaghis Blog"
print(website)
harga = 50000
print(harga)
sukses = True
print(sukses)

Output :

Inzaghis Blog
50000
True

Dalam bahasa pemrograman, terdapat beberapa aturan pembuatan nama variabel, dan ini juga berlaku di dalam bahasa pemrograman Python :

  • Variabel bisa terdiri dari huruf, angka dan karakter Underscore / Garis Bawah ( _ ).
  •  Karakter pertama dari variabel hanya boleh berupa huruf dan underscore ( _ ), tidak bisa berupa angka. Namun variabel yang diawali dengan karakter underscore bisa bermakna khusus di dalam Python.
  • Variabel harus selain dari keyword. Sebagai contoh, kita tidak bisa memakai kata continue sebagai nama variabel, karena continue merupakan keyword atau perintah khusus dalam bahasa Python.

Secara teknis, aturan penamaan variabel mengacu pada aturan penamaan Tag. Identifier adalah sebutan untuk “nama sesuatu” yang ditulis oleh programmer. Dan aturan di atas berlaku tidak hanya untuk nama variabel, tetapi juga untuk nama fungsi, nama kelas, dan nama objek, yang semuanya berisi Pengenal/Identifier.

Dalam bahasa pemrograman Python, terdapat 9 tipe data dasar :

  • String
  • Integer
  • Float
  • Complex Number
  • Boolean
  • List
  • Tuple
  • Set
  • Dictionary

Pembagian 9 Tipe Data diatas tidak mutlak, karena banyak referensi yang menggabungkan tipe data Integer, Float, dan Bilangan Kompleks dalam satu tipe data yaitu tipe data Number. Saat kita melakukan ini, tipe data Python menjadi 7 tipe data.

Penjelasan lebih lanjut tentang masing-masing tipe data ini akan kita bahas satu per satu mulai tutorial berikutnya. Namun, saya akan menunjukkan kode program singkat untuk menggunakan 9 tipe data ini :

#Tipe Data String
foo = "Belajar Python bersama Inzaghis Blog"
print(foo)
 
#Tipe Data Integer
foo = 1500
print(foo)
 
#Tipe Data Float
foo = 99.123
print(foo)
 
#Tipe Data Complex Number
foo = 4j
print(foo)
 
#Tipe Data Boolean
foo = True
print(foo)
 
#Tipe Data List
foo = ["satu","dua","tiga","satu"]
print(foo)
 
#Tipe Data Tuple
foo = ("satu","dua","tiga","satu")
print(foo)
 
#Tipe Data Set
foo = {"satu","dua","tiga","empat"}
print(foo)
 
#Tipe Data Dictionary
foo = {"satu":1, "dua":2.13, "tiga":"a", "empat": True}
print(foo)

Output :

Belajar Python bersama Inzaghis Blog
1500
99.123
4j
True
['satu', 'dua', 'tiga', 'satu']
('satu', 'dua', 'tiga', 'satu')
{'dua', 'satu', 'tiga', 'empat'}
{'satu': 1, 'dua': 2.13, 'tiga': 'a', 'empat': True}


B. Operator

Sumber : Duniailkom.com

Sebelum menjelaskan jenis-jenis operator dalam bahasa Python, penting untuk memahami istilah operand dan operator. Operand merujuk pada nilai-nilai yang terlibat dalam suatu operasi. Sedangkan operator adalah instruksi yang digunakan untuk memanipulasi operand dan menghasilkan hasil dari operasi tersebut.

Operator umumnya berupa karakter matematika atau perintah sederhana. Sebagai contoh, dalam operasi 10 + 2, angka 10 dan 2 adalah operand, sedangkan tanda tambah (+) merupakan operator.

Berikut jenis-jenis operator dalam bahasa pemrograman Python :

  • Operator Aritmatika
  • Operator Perbandingan / Relasional
  • Operator Logika / Boolean
  • Operator Bitwise
  • Operator Assignment (Penugasan)
  • Operator Identitas (Identity)
  • Operator Keanggotaan (Membership)

1. Operator Aritmatika

Operator Aritmatika adalah operator yang biasa kita temukan untuk operasi matematika. Aritmatika sendiri merupakan cabang ilmu matematika yang membahas perhitungan sederhana, seperti Kali, Bagi, Tambah dan Kurang (Kabataku).

Selain keempat operasi tersebut, bahasa Python juga memiliki operasi modulo division dengan operator % yang dipakai untuk mencari sisa hasil bagi serta operasi pemangkatan dengan operator ‘**’.

Tabel berikut merangkum 7 Operator Aritmatika dalam bahasa pemrograman Python :

Operator
Penjelasan
Contoh
+
Penambahan
20 + 6, hasil: 26
Pengurangan
20 – 6, hasil: 14
*
Perkalian
20 * 6, hasil: 120
/
Pembagian (Real/Pecahan)
20 / 6, hasil: 3.3333
//
Pembagian (Dibulatkan ke bawah)
20 // 6, hasil: 3
%
Modulus (Sisa hasil bagi)
20 % 6, hasil: 2
**
Perpangkatan
20 ** 6, hasil: 64000000

Contoh :

# Penjumlahan
angka1 = 10
angka2 = 3

hasil_penjumlahan = angka1 + angka2
print("Penjumlahan :", hasil_penjumlahan)

# Pengurangan
hasil_pengurangan = angka1 - angka2
print("Pengurangan :", hasil_pengurangan)

# Perkalian
hasil_perkalian = angka1 * angka2
print("Perkalian :", hasil_perkalian)

# Pembagian (real/pecahan)
hasil_pembagian = angka1 / angka2
print("Pembagian :", hasil_pembagian)

# Sisa hasil bagi (modulus)
hasil_modulus = angka1 % angka2
print("Sisa hasil bagi (modulus) :", hasil_modulus)

2. Operator Perbandingan / Relasional

Operator perbandingan digunakan untuk membandingkan dua nilai jika sama, kurang dari, lebih besar dari dll. Hasil dari operator perbandingan ini adalah tipe data boolean True atau False.

Operator
Penjelasan
Contoh
Hasil
==
Sama dengan
5 == 5
True
!=
Tidak sama dengan
5 != 5
False
> 
Lebih besar
5 > 6
False
< 
Lebih kecil
5 < 6
True
>=
Lebih besar atau sama dengan
5 >= 3
True
<=
Lebih kecil atau sama dengan
5 <= 5
True

3. Operator Logika

Operator logika adalah operator yang dipakai untuk membuat kesimpulan logis dari 2 kondisi Boolean, yaitu true atau false. Dalam bahasa Python terdapat 3 operator logika :

Operator
Penjelasan
Contoh
Hasil
and
True jika kedua operand bernilai True
True and True
True
or
True jika salah satu operand bernilai True
True or False
True
not
True jika operand bernilai False
not False
True

Contoh :

# Contoh variabel
nilai1 = 10
nilai2 = 5
nilai3 = 7

# Operator logika AND
if nilai1 > nilai2 and nilai1 > nilai3:
    print("Nilai1 lebih besar dari nilai2 dan nilai3")

# Operator logika OR
if nilai1 > nilai2 or nilai1 > nilai3:
    print("Nilai1 lebih besar dari nilai2 atau nilai3")

# Operator logika NOT
hasil = not nilai1 > nilai2
print("Bukan nilai1 lebih besar dari nilai2:", hasil)

4. Operator Bitwise

Bitwise adalah operator khusus untuk menangani operasi logika bilangan biner dalam bentuk bit.

Bilangan biner sendiri merupakan jenis bilangan yang hanya terdiri dari 2 jenis angka, yakni 0 dan 1. Jika nilai asal yang dipakai bukan bilangan biner, akan dikonversi secara otomatis oleh bahasa Python menjadi bilangan biner. Misalnya 7 desimal = 0111 dalam bilangan biner.

Dalam penerapannya, operator bitwise tidak terlalu sering dipakai, kecuali Anda sedang membuat program yang harus memproses bit-bit komputer. Selain itu operator ini cukup rumit dan harus memiliki pemahaman tentang sistem bilangan biner.

Bahasa Python mendukung 6 jenis operator bitwise. Daftar lengkapnya dapat dilihat pada tabel berikut :

Operator
Nama
Contoh
Biner
Hasil (Biner)
Hasil (Decimal)
&
And
10 & 12
1010 & 1100
1000
8
|
Or
10 | 12
1010 | 1100
1110
14
^
Xor
10 ^ 12
1010 ^ 1100
0110
6
~
Not
~ 10
~1010
0101
-11 (two complement)
<< 
Left shift
10 << 1
1010 << 1
10100
20
>> 
Right shift
10 >> 1
1010 >> 1
101
5

5. Operator Assignment

Operator assignment digunakan untuk meng-assign atau memasukkan nilai ke dalam sebuah variabel. Dalam bahasa Python, operator assignment menggunakan tanda sama dengan ( = ).

Selain operator assignment standar, terdapat juga variasi penulisan yang disebut operator assignment gabungan (compound assignment). Operator assignment gabungan merupakan cara singkat untuk menggabungkan operator assignment dengan operator lain, seperti operator aritmatika dan bitwise.

Sebagai contoh, operasi a = a + 1 dapat disingkat dan digabung menjadi a += 1. Contoh lainnya adalah operasi b >>= 1 yang merupakan penulisan singkat dari b = b >> 1. Dengan menggunakan operator assignment gabungan, kita dapat mengekspresikan operasi tersebut dengan lebih ringkas dan efisien.

Tabel berikut merangkum semua operator assignment dalam Bahasa Python :

Operator
Contoh
Penjelasan
+=
a += b
a = a + b
-=
a -= b
a = a – b
*=
a *= b
a = a * b
/=
a /= b
a = a / b
%=
a %= b
a = a % b
&=
a &= b
a = a & b
|=
a |= b
a = a | b
^=
a ^= b
a = a ^ b
<<=
a <<= b
a = a << b
>>=
a >>= b
a = a >> b

C. Struktur If Else

Sumber : Belajarpython.com dan Jagongoding.com

Percabangan –dalam dunia pemrograman– adalah proses penentuan keputusan atau dalam bahasa inggris ini biasa disebut sebagai conditional statement.

Konsepnya sederhana: kita menginstruksikan komputer untuk melakukan suatu aksi tertentu (X), hanya jika suatu kondisi Y terpenuhi. Atau, kita memerintahkan komputer untuk melakukan aksi tertentu (A) jika suatu kondisi tidak terpenuhi.

1. Kondisi If

Pengambilan keputusan (if condition) digunakan dalam Python untuk mengantisipasi kondisi yang mungkin terjadi selama program berjalan, dan untuk menentukan tindakan yang harus diambil sesuai dengan kondisi tersebut.

Dalam Python, terdapat beberapa pernyataan/kondisi yang dapat digunakan, antara lain ifelse, dan elif. Kondisi if digunakan untuk menjalankan kode jika kondisi yang diberikan bernilai True (benar).

Jika kondisi tersebut bernilai False (salah), maka pernyataan/kondisi if tidak akan dieksekusi.

Blok kode if pada python, strukturnya seperti ini :

if kondisi:
  statements()

Bagian kondisi adalah sebuah variabel / atau nilai yang bertipe data boolean. Baik berupa nilai True/False secara langsung, atau pun sebuah ekspresi logika. Jika kondisi bernilai True, maka statements() akan dieksekusi oleh sistem.

Tulis dan perhatikan kode program berikut :

if True:
  print('Kode program ini akan dieksekusi')

if False:
  print('Kode program ini tidak akan dieksekusi')

print('Kode program ini akan selalu dieksekusi karena tidak termasuk pada percabangan')

Jika kita jalankan, kode program di atas hanya akan memunculkan Output :

Kode program ini akan dieksekusi
Kode program ini akan selalu dieksekusi

Mengapa?

Karena kondisi if yang kedua tidak bernilai True, sehingga statemen yang ada di dalamnya pun tidak akan pernah dieksekusi oleh sistem.

Dan print() yang ke-3 akan selalu dieksekusi karena ia berada di luar blok kode if.

Ingat bahwa blok kode di dalam python ditentukan oleh indentasi seperti yang telah kita bahas pada Aturan Penulisan Sintaks Python.

Dibawah ini adalah contoh penggunaan kondisi if pada Python :

# Kondisi if adalah kondisi yang akan dieksekusi oleh program jika bernilai benar atau TRUE

nilai = 9

# jika kondisi benar/TRUE maka program akan mengeksekusi perintah dibawahnya
if(nilai > 7):
    print("Sembilan Lebih Besar Dari Angka Tujuh") # Kondisi Benar, Dieksekusi

# jika kondisi salah/FALSE maka program tidak akan mengeksekusi perintah dibawahnya
if(nilai > 10):
    print("Sembilan Lebih Besar Dari Angka Sepuluh") # Kondisi Salah, Maka tidak tereksekusi

Dari contoh diatas, jika program dijalankan maka akan mencetak string "Sembilan Lebih Besar Dari Angka Tujuh" sebanyak 1 kali yaitu pada if pertama. Di if kedua statement bernilai salah, jadi perintah print("Sembilan Lebih Besar Dari Angka Sepuluh") tidak akan dieksekusi.

2. Kondisi If Else

Pengambilan keputusan (if-else condition) tidak hanya digunakan untuk menentukan tindakan yang harus diambil sesuai dengan kondisi, tetapi juga untuk menentukan tindakan yang harus diambil jika kondisi tidak memenuhi syarat.

Dalam Python, terdapat beberapa pernyataan/kondisi yang dapat digunakan, seperti ifelse, dan elif. Kondisi if digunakan untuk menjalankan kode jika kondisi yang diberikan bernilai True (benar).

Kondisi if-else adalah kondisi di mana jika pernyataan tersebut benar (True), maka kode dalam blok if akan dieksekusi, tetapi jika pernyataan tersebut salah (False), maka kode dalam blok else akan dieksekusi.

Perhatikan contoh berikut :

nilai = 50

print('Nilai anda adalah:', nilai, '\n')

if nilai >= 70:
  print('Selamat, anda lulus!')
else:
  print('Maaf, anda tidak lulus.')

Jika dijalankan, program di atas akan menghasilkan output :

Nilai anda adalah: 50 
Maaf, anda tidak lulus.

Anda bisa mengganti nilai = 50 menjadi inputan user seperti ini.

nilai = int(input('Masukkan nilai anda: '))

...

Lalu jalankan kembali program di atas. Dibawah ini adalah contoh penggunaan kondisi if else pada Python :

# Kondisi if else adalah jika kondisi bernilai TRUE maka akan dieksekusi pada if, tetapi jika bernilai FALSE maka akan dieksekusi kode pada else

nilai = 3
# Jika pernyataan pada if bernilai TRUE maka if akan dieksekusi, tetapi jika FALSE kode pada else yang akan dieksekusi.
if(nilai > 7):
    print("Selamat Anda Lulus")
else:
    print("Maaf Anda Tidak Lulus")

Pada contoh diatas, jika program dijalankan maka akan mencetak string "Maaf Anda Tidak Lulus" karena pernyataan pada if bernilai False.

3. Kondisi Elif

Pengambilan keputusan (elif condition) merupakan kelanjutan atau percabangan logika dari kondisi "if". Dengan menggunakan elif, kita dapat membuat kode program yang dapat memeriksa beberapa kemungkinan yang mungkin terjadi. Mirip dengan kondisi "else", perbedaannya adalah bahwa kondisi "elif" dapat memiliki beberapa blok, bukan hanya satu.

Dan inilah Contoh dari Kondisi Elif dalam Python.

1. Nama-nama Hari dalam Seminggu

hari = int(input('Masukkan nilai: '))

if(hari == 1):
    print("Senin")
elif(hari == 2):
    print("Selasa")
elif(hari == 3):
    print("Rabu")
elif(hari == 4):
    print("Kamis")
elif(hari == 5):
    print("Jumat")
elif(hari == 6):
    print("Sabtu")
elif(hari == 7):
    print("Minggu")
else:
    print("Invalid")

2. Nama-nama Bulan dalam Setahun (Masehi/Gregorian)

bulanMasehi = int(input('Masukkan nilai: '))

if(bulanMasehi == 1):
    print("Januari")
elif(bulanMasehi == 2):
    print("Februari")
elif(bulanMasehi == 3):
    print("Maret")
elif(bulanMasehi == 4):
    print("April")
elif(bulanMasehi == 5):
    print("Mei")
elif(bulanMasehi == 6):
    print("Juni")
elif(bulanMasehi == 7):
    print("Juli")
elif(bulanMasehi == 8):
    print("Agustus")
elif(bulanMasehi == 9):
    print("September")
elif(bulanMasehi == 10):
    print("Oktober")
elif(bulanMasehi == 11):
    print("Novemer")
elif(bulanMasehi == 12):
    print("Desember")
else:
    print("Invalid")

3. Nama-nama Bulan dalam Setahun (Hijriah)

bulanHijriah = int(input('Masukkan nilai: '))

if(bulanHijriah == 1):
    print("Muharram")
elif(bulanHijriah == 2):
    print("Shafar")
elif(bulanHijriah == 3):
    print("Rabiul Awal")
elif(bulanHijriah == 4):
    print("Rabiul Akhir")
elif(bulanHijriah == 5):
    print("Jumadil Awal")
elif(bulanHijriah == 6):
    print("Jumadil Akhir")
elif(bulanHijriah == 7):
    print("Rajab")
elif(bulanHijriah == 8):
    print("Syaban")
elif(bulanHijriah == 9):
    print("Ramadhan")
elif(bulanHijriah == 10):
    print("Syawal")
elif(bulanHijriah == 11):
    print("Dzulqaidah")
elif(bulanHijriah == 12):
    print("Dzulhijjah")
else:
    print("Invalid")

D. Struktur Perulangan

Sumber : Petanikode.comFreecodecamp.org (Do-While)Jagongoding.com (ForWhileNested Loop), dan Duniailkom.com (WhileForBreakContinue)

Perulangan dalam bahasa pemrograman berfungsi menyuruh komputer melakukan sesuatu secara berulang-ulang. Terdapat dua jenis perulangan dalam bahasa pemrograman python, yaitu perulangan dengan for dan while.

Perulangan for disebut counted loop (perulangan yang terhitung), sementara perulangan while disebut uncounted loop (perulangan yang tak terhitung). Perbedaannya adalah perulangan for biasanya digunakan untuk mengulangi kode yang sudah diketahui banyak perulangannya. Sementara while untuk perulangan yang memiliki syarat dan tidak tentu berapa banyak perulangannya.

1. Perulangan For

Berbeda dengan mayoritas bahasa pemrograman lain, di dalam Python perulangan for lebih ke perulangan untuk memproses array / himpunan. Ini mirip seperti perulangan foreach di bahasa PHP.

Berikut format dasar struktur perulangan for dalam bahasa Python :

foo = [a, b, ...] 
for i in foo:
  # kode program yang akan diulang
  # kode program yang akan diulang

Sebagai Praktik pertama, berikut kode program perulangan for untuk menampilkan nama-nama warna :

warna = ['Merah','Biru','Kuning','Biru']
for i in warna:
  print(i)

Hasil Output :

Merah
Biru
Kuning
Biru

Perulangan for juga bisa dipakai untuk tipe data lain, misalnya tipe data set :

warna = {'Merah','Biru','Kuning','Biru'}
for i in warna:
  print(i)

Hasil Output :

Merah
Biru
Kuning

Perhatikan perubahan tanda kurung di baris 1. Sekarang saya menggunakan kurung kurawal yang merupakan cara pembuatan tipe data set di dalam Python.

Hasilnya, nama warna hanya tampil 3 buah. Loh, kenapa bukan 4? ini karena perilaku dari tipe data set Python, dimana jika terdapat data yang berulang, data tersebut tidak akan disimpan.

Bagaimana dengan tipe data string? Juga bisa lho! Inilah Contohnya :

web = 'Inzaghi'
for huruf in web:
  print(huruf)

Hasil Output :

I
n
z
a
g
h
i

Ini karena di dalam bahasa Python, tipe data string merupakan sebuah array.

Selanjutnya, kita juga bisa menggunakan Fungsi range(). Bahasan tentang function memang belum kita pelajari, tapi penggunaannya cukup mudah. Fungsi range() bisa dipakai untuk membuat deret angka, yang kemudian menjadi inputan ke dalam perulangan for. Berikut contoh penggunaannya :

for i in range(6):
  print(i)

Hasil Output :

0
1
2
3
4
5

Di sini perintah range(6) akan membuat 6 buah deret yang dimulai dari angka 0, 1, 2, 3, 4 dan 5. Yang harus diperhatikan, nilai maksimal dari range(6) adalah 5, karena angka dimulai dari 0, bukan 1.

Namun kita bisa mengatur jangkauan yang diinginkan. Caranya, tambah angka kedua ke dalam function range() :

for i in range(5, 10):
  print(i)

Hasil Output :

5
6
7
8
9

Tidak hanya itu, kita juga bisa mengatur tingkat “kenaikan” atau increment dari range dengan cara menambah 1 lagi angka pada saat pemanggilan function range() :

for i in range(3,100,3):
  print(i)

Hasil Output :

3
6
9
12
...
...
96
99

Perintah range(3,100,3) akan membuat deret angka dari 3 sampai 100 dimana setiap angka akan naik sebanyak 3 angka. Hasilnya, angka deret akan lompat setiap kelipatan tiga, mulai dari 3, 6, 9, dan seterusnya hingga 99.

2. Perulangan While

Perulangan while pada python adalah proses pengulangan suatu blok kode program selama sebuah kondisi terpenuhi.

Singkatnya, perulangan while adalah perulangan yang bersifat indefinite alias tidak pasti, atau bahkan tidak terbatas.

Sebuah blok kode akan dilakukan terus-menerus selama suatu kondisi terpenuhi. Jika suatu kondisi ternyata tidak terpenuhi pada iterasi ke 10, maka perulangan akan berhenti. Jika kondisi yang sama pada saat yang berbeda ternyata berhenti pada iterasi ke 100, maka perulangan akan berhenti pada jumlah tersebut.

while <kondisi>:
  # blok kode yang akan diulang-ulang

Terdapat 3 komponen utama :

  • Yang pertama adalah keyword while, ini harus kita isi.
  • Yang kedua adalah <kondisi> : ini bisa berupa variabel boolean atau ekspresi logika.
  • Dan yang terakhir adalah blok (atau kumpulan baris) kode yang akan diulang-ulang kondisi terpenuhi.

a. Contoh Perulangan while seperti for + range

Di dalam contoh berikut, kita akan menampilkan angka 1 sampai dengan angka 5 menggunakan perulangan while.

i = 1

while i <= 5:
  print(i)
  i += 1

Hasil Output :

1
2
3
4
5

Penjelasan

Pada kode program di atas, kita menginstruksikan sistem untuk :

  • Melakukan perulangan selama variabel i kurang dari atau sama dengan 5.
  • Setiap kali iterasi, sistem akan menampilkan nilai dari i.
  • Dan yang terakhir, pada setiap iterasi, sistem akan menambahkan nilai i dengan angka 1.

Kalian bisa memodifikasi kode program di atas misalkan untuk :

  • menampilkan Bilangan Prima dari 1 sampai 100.
  • menampilkan Angka Kelipatan 4 dari 1 sampai 100.
  • menampilkan Angka Ganjil dari 1 sampai 27.
  • dan sebagainya

b. Contoh Perulangan while untuk list

Untuk menampilkan semua item pada list, cara yang paling clean adalah dengan menggunakan metode for seperti yang telah kita bahas sebelumnya.

Meskipun begitu, kita tetap bisa menggunakan perulangan while untuk bermain-main dengan list.

Perhatikan Contoh berikut :

listKota = [
  'Jakarta', 'Surabaya', 'Depok', 'Bekasi', 'Solo',
  'Jogjakarta', 'Semarang', 'Makassar'
]

# bermain index
i = 0
while i < len(listKota):
  print(listKota[i])
  i += 1

Hasil Output :

Jakarta
Surabaya
Depok
Bekasi
Solo
Jogjakarta
Semarang
Makassar

Kita juga bisa menggunakan fungsi list.pop(). Perhatikan kode program berikut :

# bermain pop
while listKota:
  print(listKota.pop(0))

Kode program di atas juga akan menghasilkan output yang sama seperti yang kita lakukan dengan pendekatan indeks.

3. Perulangan Do-While

Dama seperti while, hanya saja posisinya yang terbalik untuk do while.

Misalnya, loop ini berjalan selama angka kurang dari 10 :

number = 0
while number < 10:
    print(f"Angka ini adalah {number}!")
    number = number + 1

Hasil Output :

Angka ini adalah 0!
Angka ini adalah 1!
Angka ini adalah 2!
Angka ini adalah 3!
Angka ini adalah 4!
Angka ini adalah 5!
Angka ini adalah 6!
Angka ini adalah 7!
Angka ini adalah 8!
Angka ini adalah 9!

Ada kemungkinan bahwa perulangan while tidak akan berjalan jika tidak memenuhi syarat, seperti pada contoh berikut :

number = 50
while number < 10 :
    print(f"Angka ini adalah {number}!")

Karena kondisinya selalu Salah, instruksi di tubuh perulangan (loop body) tidak dijalankan.

4. Perulangan Bersarang (Nested Loop)

Perulangan bersarang atau perulangan bertingkat adalah sebuah perulangan yang berada atau terletak di dalam perulangan yang lain.

a. Menggunakan For

Langkah selanjutnya silakan buat file python baru, kemudian tulis dan perhatikan kode program berikut :

for i in range(3):
  print('Perulangan luar [i] = ', i)

  for j in range(5):
    print('   Perulangan dalam [i, j] = ', str(i) + ', ' + str(j))

Jika dijalankan, kita akan mendapatkan Output :

Perulangan luar [i] =  0
   Perulangan dalam [i, j] =  0, 0
   Perulangan dalam [i, j] =  0, 1
   Perulangan dalam [i, j] =  0, 2
   Perulangan dalam [i, j] =  0, 3
   Perulangan dalam [i, j] =  0, 4
Perulangan luar [i] =  1
   Perulangan dalam [i, j] =  1, 0
   Perulangan dalam [i, j] =  1, 1
   Perulangan dalam [i, j] =  1, 2
   Perulangan dalam [i, j] =  1, 3
   Perulangan dalam [i, j] =  1, 4
Perulangan luar [i] =  2
   Perulangan dalam [i, j] =  2, 0
   Perulangan dalam [i, j] =  2, 1
   Perulangan dalam [i, j] =  2, 2
   Perulangan dalam [i, j] =  2, 3
   Perulangan dalam [i, j] =  2, 4

Di dalam kode program kita di atas, kita telah membuat 2 buah perulangan :

  • Perulangan pertama sebanyak 3 kali.
  • Dan perulangan kedua sebanyak 5 kali setiap satu kali perulangan pertama.

Sehingga, total iterasi seluruhnya adalah 3x5 yaitu 15.

Contoh lainnya :

for baris in range(5):
  for kolom in range(7):
    print('o', end = ' ')
  else:
    print('')

Jika dijalankan, kita akan mendapatkan Output :

o o o o o o o 
o o o o o o o 
o o o o o o o 
o o o o o o o 
o o o o o o o

b. Menggunakan While

Kita juga bisa menggunakan while untuk membangun sebuah perulangan bersarang, perhatikan contoh berikut :

listKota = [
  'Jakarta', 'Surabaya', 'Makassar'
]

for kota in listKota:
  print(kota)
 
  listTempat = [
    'Taman', 'Lapangan', 'Mall'
  ]

  while listTempat:
    print('-->', listTempat.pop(0))

Hasil Output :

Jakarta
--> Taman
--> Lapangan
--> Mall
Surabaya
--> Taman
--> Lapangan
--> Mall
Makassar
--> Taman
--> Lapangan
--> Mall

Kita juga bisa menambahkan perulangan lebih dari 2 tingkat, 3 tingkat, atau lebih sesuai kebutuhan.

Contoh tambahan perulangan bersarang menggunakan while :

max_baris = 7
max_kolom = 7

baris = 0
while baris < max_baris:
  kolom = 0
  while kolom < max_kolom:
    print('o' if kolom <= baris else '+', end = ' ')
    kolom += 1
  else:
    print('')
  baris += 1

Hasil Output :

o + + + + + + 
o o + + + + + 
o o o + + + + 
o o o o + + + 
o o o o o + + 
o o o o o o + 
o o o o o o o

5. Perulangan Tak Hingga (Infinite Loop)

Perulangan while sangat berkaitan dengan variabel boolean, atau logical statement. Karena penentuan kapan suatu blok kode akan diulang-ulang ditinjau dari True or False dari suatu pernyataan logika.

Sehingga jika suatu kondisi itu selalu benar, maka perulangannya pun akan selalu di eksekusi.

Perhatikan contoh berikut :

while (1 + 2 == 3):
  print('Hello World!')

Jika dieksekusi, sistem akan mencetak tulisan “Hello World!” berkali-kali tanpa henti.

...
Hello World!
Hello World!
Hello World!
Hello World!
Hello World!
Hello World!
Hello World!
Hello World!
...

Kita bisa memaksanya berhenti dengan menekan tombol Ctrl + C jika menggunakan CLI, atau dengan cara menekan tombol stop jika menggunakan IDE atau sejenisnya.

Kenapa perulangan di atas dieksekusi terus menerus?

Karena kita memerintahkan komputer untuk menulis “Hello World” selama satu ditambah dua sama dengan tiga.

Pertanyaannya : apakah satu ditambah dua sama dengan tiga terus-menerus atau tidak?

Jawabannya iya! Oleh karena itu sistem melakukan iterasi tak terbatas.


ARRAY DALAM BAHASA PEMROGRAMAN PYTHON

Sumber Artikel Materi Dosenit.comPemburukode.com

Array adalah struktur data yang dapat menyimpan kumpulan nilai dari tipe data yang sama. Dalam Python, array diwakili oleh modul array. Fungsi larik Python memudahkan untuk membuat, mengakses, memodifikasi, dan menggabungkan Array.

A. Array 1 Dimensi

Array digunakan untuk menyimpan banyak nilai dalam satu variabel tunggal.

Contoh :

Buat array yang berisi nama mobil

mobil = ["Ford", "Volvo", "BMW"]

print(mobil)

Apa itu Array?

Array adalah variabel khusus, yang dapat menampung lebih dari satu nilai dalam satu waktu.

Jika kita memiliki daftar item (daftar nama mobil, misalnya), penyimpanan mobil dalam variabel tunggal akan terlihat seperti ini :

mobil1= “Ford”
mobil2 = “Volvo”
mobil3 = “BMW”

Namun, bagaimana jika kita ingin mencari nama mobil yang spesifik? Dan bagaimana jika jumlah mobil bukan 3, tetapi ada 300?

Solusinya adalah array!

Sebuah array dapat menampung banyak nilai di bawah satu nama, dan Anda dapat mengakses nilai-nilai tersebut dengan merujuk ke nomor indeks.

1. Akses Elemen Array

Cara merujuk ke elemen array adalah dengan mengacu pada nomor indeks.

Contoh :

Dapatkan nilai item array pertama!

mobil = ["Ford", "Volvo", "BMW"]

x = mobil[0]

print(x)

Ubah nilai item array pertama!

mobil = ["Ford", "Volvo", "BMW"]

mobil[0] = "Toyota"

print(mobil)

2. Panjang Array

Gunakan metode len() untuk mengembalikan panjang array (jumlah elemen dalam array).

Contoh :

Kembalikan jumlah elemen dalam array mobil!

mobil = ["Ford", "Volvo", "BMW"]

x = len(mobil)

print(x)

Catatan : Panjang sebuah array selalu lebih dari satu indeks array tertinggi.

3. Looping Elemen Array

Kita dapat menggunakan for in loop untuk melakukan loop melalui semua elemen array.

Contoh :

Cetak setiap item di array mobil!

mobil = ["Ford", "Volvo", "BMW"]

for x in cars:
  print(x)

4. Menambahkan Elemen Array

Kita bisa menggunakan metode append() untuk menambahkan elemen ke array.

Contoh :

Tambahkan satu elemen lagi ke array mobil!

mobil = ["Ford", "Volvo", "BMW"]

mobil.append("Honda")

print(mobil)

5. Menghapus Elemen Array

Anda bisa menggunakan metode pop() untuk menghapus elemen dari array.

Contoh :

Hapus elemen kedua dari array mobil!

mobil = ["Ford", "Volvo", "BMW"]

mobil.pop("1")

print(mobil)

Anda juga bisa menggunakan metode remove() untuk menghapus elemen dari array.

Misalnya :

Hapus elemen yang memiliki nilai “Volvo”!

mobil = ["Ford", "Volvo", "BMW"]

mobil.remove("Volvo")

print(mobil)

Catatan : Metode remove() dari array hanya menghapus kemunculan pertama dari nilai yang ditentukan.

6. Contoh Program Array 1 Dimensi dalam Python

Input : 

print("Array Mahasiswa")
n = int(input("Jumlah Mahasiswa : "))

mahasiswa = []

for i in range(n):
    print("\n\nData Mahasiswa ke", i+1)
    data = []
   
    for j in range(3):
        if j == 0:
            data.append(input("NIM     : "))
        elif j == 1:
            data.append(input("Nama    : "))
        else:
            data.append(input("Jurusan : "))
   
    ipk = float(input("IPK     : "))
    data.append(str(ipk))

    mahasiswa.append(data)

print("\n\nData Mahasiswa yang dimasukkan")
print("--------------------------------")
print("NIM \t\t\t  NAMA \t\t  JURUSAN \t  IPK")

for data in mahasiswa:
    print("\t\t\t  ".join(data))

Output :

Array Mahasiswa
Jumlah Mahasiswa : 3

Data Mahasiswa ke 1
NIM     : 2120394024
Nama    : Andi
Jurusan : Informatika
IPK     : 3.54
Data Mahasiswa ke 2
NIM     : 2120395343
Nama    : Kiki
Jurusan : DKV
IPK     : 3.46
Data Mahasiswa ke 3
NIM     : 2120382036
Nama    : Putri
Jurusan : Arsitektur
IPK     : 3.39

Data Mahasiswa yang dimasukkan
--------------------------------
NIM 			  NAMA 		  JURUSAN 	  IPK
2120394024			  Andi			  Informatika			  3.54
2120395343			  Kiki			  DKV			  3.46
2120382036			  Putri			  Arsitektur			  3.39

B. Array 2 Dimensi

Sumber : Guru99.com

Sama seperti di atas, Array 2 Dimensi merupakan array yang memiliki 2 komponen. Kita dapat membuat array (daftar) dua dimensi dengan baris dan kolom seperti ini :

[[r1,r2,r3,..,rn],[c1,c2,c3,.......,cn]]

Di mana :

  • r singkatan baris dan c singkatan kolom.


Contoh : Berikut adalah contoh untuk membuat Array 2D dengan 4 baris dan 5 kolom!

array = [[23,45,43,23,45],[45,67,54,32,45],[89,90,87,65,44],[23,45,67,32,10]]

#display
print(array)

Output :

[[23, 45, 43, 23, 45], [45, 67, 54, 32, 45], [89, 90, 87, 65, 44], [23, 45, 67, 32, 10]]

1. Mengakses nilai-nilai pada Array Dua Dimensi

Kita dapat mengakses nilai menggunakan posisi indeks.

Sintaksis :

Kita bisa mendapatkan nilai baris menggunakan operator [].

array[row index]

Kita bisa mendapatkan nilai kolom menggunakan [][]

Array[row index][column index]

Di mana :

  • array adalah array masukan
  • row index adalah posisi indeks baris dimulai dari 0
  • column index adalah posisi indeks kolom dimulai dari 0 berturut-turut.

Contoh :

Dalam contoh ini kita akan mengakses nilai menggunakan posisi indeks!

#creare 2D array with 4 rows and 5 columns
array=[[23,45,43,23,45],[45,67,54,32,45],[89,90,87,65,44],[23,45,67,32,10]]

#display
print(array)

#get the first row
print(array[0])

#get the third row
print(array[2])

#get the first row third element
print(array[0][2])

#get the third row forth element
print(array[2][3])

Output :

[[23, 45, 43, 23, 45], [45, 67, 54, 32, 45], [89, 90, 87, 65, 44], [23, 45, 67, 32, 10]]
[23, 45, 43, 23, 45]
[89, 90, 87, 65, 44]
43
65

Kita juga dapat mengakses elemen menggunakan for loop

Sintaksis :

for rows in the array:
  for columns in rows:
    print(columns)

Di mana :

  • rows digunakan untuk mengulangi baris demi baris
  • columns digunakan untuk mengulangi nilai yang ada di setiap baris.

Contoh :

Buat array 2D dengan 4 baris dan 5 kolom!

array = [[23,45,43,23,45],[45,67,54,32,45],[89,90,87,65,44],[23,45,67,32,10]]

#use for loop to iterate the array
for rows in array:
    for columns in rows:
        print(columns,end=" ")
        print()

Output :

23 45 43 23 45
45 67 54 32 45
89 90 87 65 44
23 45 67 32 10

2. Memasukkan nilai ke dalam Array Dua Dimensi

Di sini kita akan memasukkan nilai ke dalam array dua dimensi menggunakan fungsi insert().

Sintaksis :

array.insert(index,[values])

Di mana :

  • array adalah array input
  • index adalah posisi baris untuk menyisipkan baris tertentu
  • value adalah nilai yang akan dimasukkan ke dalam array

Contoh :

Masukkan ke nilai dalam array!

#Create 2D array with 4 rows and 5 columns
array=[[23,45,43,23,45],[45,67,54,32,45],[89,90,87,65,44],[23,45,67,32,10]]

#insert the row at 5 th position
array.insert(2, [1,2,3,4,5])

#insert the row at 6 th position
array.insert(2, [1,2,3,4,5])

#insert the row at 7 th position
array.insert(2, [1,2,3,4,5])

#display
print(array)

Output :

[[23, 45, 43, 23, 45], [45, 67, 54, 32, 45], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], [89, 90, 87, 65, 44], [23, 45, 67, 32, 10]]

3. Memperbarui nilai ke dalam Array Dua Dimensi

Berikut adalah dua metode untuk memperbarui nilai dalam larik 2-D (daftar).

Anda dapat memperbarui baris dengan menggunakan sintaks berikut.

Sintaksis :

array[row_index] = [values]

Anda dapat memperbarui nilai kolom di dalam baris dengan menggunakan sintaks berikut.

array[row_index][column_index] = [values]

Contoh :

#creare 2D array with 4 rows and 5 columns
array=[[23,45,43,23,45],[45,67,54,32,45],[89,90,87,65,44],[23,45,67,32,10]]

#update row values in the 3rd row
array[2]=[0,3,5,6,7]

#update row values in the 5th row
array[2]=[0,3,5,6,7]

#update the first row , third column
array[0][2]=100

#update the second row , third column
array[1][2]=400

#display
print(array)

Output :

[[23, 45, 100, 23, 45], [45, 67, 400, 32, 45], [0, 3, 5, 6, 7], [23, 45, 67, 32, 10]]

4. Menghapus nilai dari Array Dua Dimensi

Anda dapat menghapus baris menggunakan fungsi del.

Sintaksis :

del array[index]

Di mana :

  • array adalah array input
  • index mengacu pada indeks baris

Contoh :

#creare 2D array with 4 rows and 5 columns
array=[[23,45,43,23,45],[45,67,54,32,45],[89,90,87,65,44],[23,45,67,32,10]]

#delete row values in the 3rd row
del array[2]

#delete row values in the 2nd row
del array[1]

#display
print(array)

Output :

[[23, 45, 43, 23, 45], [23, 45, 67, 32, 10]]

5. Dapatkan ukuran Array Dua Dimensi

Anda bisa mendapatkan ukuran array dua dimensi menggunakan fungsi line(). Ini akan mengembalikan jumlah baris dalam array.

Sintaksis :

len(array)

Contoh :

Dapatkan panjang Array Dua Dimensi :

#creare 2D array with 4 rows and 5 columns
array=[[23,45,43,23,45],[45,67,54,32,45],[89,90,87,65,44],[23,45,67,32,10]]

#display
print(len(array))

Output :

4


FUNGSI DALAM PYTHON

Sumber : Jagongoding.comGeeksforgeeks.orgTutorialspoint.com, dan W3schools.com

Fungsi Python adalah blok pernyataan yang mengembalikan tugas tertentu. Idenya adalah untuk menyatukan beberapa tugas yang umum atau berulang kali dilakukan dan membuat sebuah fungsi sehingga alih-alih menulis kode yang sama berulang kali untuk masukan yang berbeda, kita dapat melakukan pemanggilan fungsi untuk menggunakan kembali kode yang ada di dalamnya berulang kali.

A. Deklarasi Sintaksis

Sumber : Geeksforgeeks.org

Di dalam python, Sintaks pembuatan fungsi terlihat seperti berikut :

def <nama_fungsi>(parameters):
  statements

Sintaks di atas secara umum terbagi menjadi 4 bagian :

  • Kata kunci def yang menjadi pertanda bahwa blok kode program adalah sebuah fungsi
  • Nama fungsi yang kita buat
  • Parameters yang akan diterima oleh fungsi yang kita buat (tidak wajib)
  • Dan blok kode fungsi yang di sana akan kita tulis perintah-perintah yang harus dilakukan oleh sebuah fungsi
  • Oiya: jangan lupa bahwa blok kode program di dalam python didefinisikan dengan indentasi. Silakan baca aturan sintaks python untuk lebih lengkapnya.

Contoh sebuah fungsi sederhana dengan nama hello_world() :

def hello_world():
  print('Hello Python! Hello World!')

Fungsi di atas, jika dipanggil, akan mengeksekusi perintah print() yang ada di dalamnya.

B. Memanggil Fungsi

Setelah membuat suatu fungsi dengan Python kita dapat memanggilnya dengan menggunakan nama fungsi diikuti dengan tanda kurung yang berisi parameter dari fungsi tersebut.

Bagaimana cara memanggil fungsi yang telah kita definisikan? Cukup ketik nama fungsinya, ditambah dengan tanda kurung () seperti berikut :

hello_world()

Sehingga, menjadi :

def hello_world():
  print('Hello Python! Hello World!')

hello_world()

Output :

Hello Python! Hello World!

Bahkan kita bisa memanggil fungsi hello_world() berkali-kali :

def hello_world():
  print('Hello Python! Hello World!')

hello_world()
hello_world()
hello_world()
hello_world()

Output :

Hello Python! Hello World!
Hello Python! Hello World!
Hello Python! Hello World!
Hello Python! Hello World!

C. Fungsi dengan Argumen atau Parameter

Sebuah fungsi juga bisa menerima parameter atau pun argumen. Ia merupakan suatu nilai/variabel yang dilemparkan ke dalam fungsi untuk diproses lebih lanjut.

Sebagai contoh, perhatikan output berikut :

Halo Adi, Selamat Datang!
Halo Budi, Selamat Datang!
Halo Reza, Selamat Datang!
Halo Tomi, Selamat Datang!

Ada banyak cara untuk menggunakan Argumen dan Parameter. Bisa dengan list, perulangan, dan lain sebagainya.

Akan tetapi, mungkin yang langsung terbesit dalam benak kita adalah dengan melakukan 4x print() seperti ini : 

print('Halo Adi, Selamat Datang!')
print('Halo Budi, Selamat Datang!')
print('Halo Reza, Selamat Datang!')
print('Halo Tomi, Selamat Datang!')

Itu adalah cara yang sangat simpel, dan juga tidak salah. Akan tetapi, dari pada kita melakukan 4x print seperti di atas, kita bisa memanfaatkan fungsi dan parameter pada python. Sehingga kode programnya akan terlihat seperti ini :

def selamat_datang (nama):
  print(f'Halo {nama}, Selamat Datang!')

selamat_datang('Adi')
selamat_datang('Budi')
selamat_datang('Reza')
selamat_datang('Tomi')

Dan kita tetap akan mendapatkan output yang sama. Dan inilah Contoh lainnya yang serupa :

def add(num1: int, num2: int) -> int:
    """Menambahkan dua angka"""
    num3 = num1 + num2
 
    return num3
 
# Driver code
num1, num2 = 5, 15
ans = add(num1, num2)
print(f"Penjumlahan daru {num1} dan {num2} adalah {ans}.")

Output :

Penjumlahan daru 5 dan 15 adalah 20.

D. Parameter Wajib

Parameter di dalam python bisa lebih dari satu, bisa wajib semua (harus diisi), dan bisa juga bersifat opsional. Perhatikan contoh fungsi berikut :

def perkenalan (nama, asal):
  print(f"Perkenalkan saya {nama} dari {asal}")

Jika dipanggil :

perkenalan("Inzaghi Posuma", "Banten")

Sehingga menjadi :

def perkenalan (nama, asal):
  print(f"Perkenalkan saya {nama} dari {asal}")

perkenalan("Inzaghi Posuma", "Banten")

Kita akan mendapatkan output :

Perkenalkan saya Inzaghi Posuma dari Banten

Tapi jika kita memanggilnya dengan parameter tidak lengkap, justru kita akan mendapatkan Error :

perkenalan("Inzaghi Posuma")

Terjadilah Error :

ERROR!
Traceback (most recent call last):
  File "<string>", line 4, in <module>
TypeError: perkenalan() missing 1 required positional argument: 'asal'

E. Parameter Opsional

Tidak semua parameter fungsi pada python itu bersifat wajib. Ada yang opsional. Parameter opsional adalah parameter yang seandainya tidak diisi, dia sudah memiliki nilai default. Perhatikan contoh berikut :

def suhu_udara (daerah, derajat, satuan = 'celcius'):
  print(f"Suhu di {daerah} adalah {derajat} {satuan}")

Pada fungsi suhu_udara() di atas, kita mendefinisikan 3 buah parameter:

  • daerah
  • derajat
  • suhu = 'celcius'

Dua parameter pertama adalah bersifat wajib dan harus diisi, sedangkan parameter ketiga tidak wajib. Jika tidak kita isi, maka nilai default-nya adalah “celcius”. Sekarang, kita coba panggil fungsi tersebut dengan 2 cara :

suhu_udara("Surabaya", 30)
suhu_udara("Surabaya", 86, 'Fahrenheit')

Sehingga menjadi :

def suhu_udara (daerah, derajat, satuan = 'celcius'):
  print(f"Suhu di {daerah} adalah {derajat} {satuan}")

suhu_udara("Surabaya", 30)
suhu_udara("Surabaya", 86, 'Fahrenheit')

Jika dijalankan, outputnya akan terlihat seperti ini :

Suhu di Surabaya adalah 30 celcius
Suhu di Surabaya adalah 86 Fahrenheit

F. Fungsi yang Mengembalikan Nilai

Jenis fungsi yang berikutnya adalah berkaitan dengan nilai kembalian.

Ditinjau dari segi pengembalian nilai, fungsi terbagi menjadi 2 :

  • Fungsi yang tidak mengembalikan nilai
  • Fungsi yang mengembalikan nilai
  • Pada contoh-contoh di atas, kita telah membuat dan memanggil fungsi-fungsi yang tidak memiliki nilai.

Sekarang, kita akan coba membuat fungsi yang mempunyai atau mengembalikan sebuah nilai.

def luas_persegi (sisi):
  return sisi * sisi

Penjelasan :

  • Kata kunci return berfungsi untuk mengembalikan nilai.
  • Nilai yang dikembalikan suatu fungsi, bisa kita olah kembali untuk berbagai kebutuhan.

Contoh :

def luas_persegi (sisi):
  return sisi * sisi

# tidak menghasilkan output apa pun
luas_persegi(10)

# menghasilkan output
print('Luas persegi dengan sisi 4 adalah:', luas_persegi(4))

# kita juga bisa simpan di dalam variabel
persegi_besar = luas_persegi(100)
persegi_kecil = luas_persegi(50)

print('Total luas persegi besar dan kecil adalah:', persegi_besar + persegi_kecil)

Output :

Luas persegi dengan sisi 4 adalah: 16
Total luas persegi besar dan kecil adalah: 12500


CONTOH PROGRAM DENGAN BAHASA PYTHON

Sumber lainnya : W3resource.com

Dan berikut, inilah Contoh Program Sederhana hingga Kompleks dengan Bahasa Python :

Luas Segitiga

a = float(input("\nMasukan Alas : "))
t = float(input("Masukan Tinggi : "))

luas = 0.5*a*t

print("\nLuas Segitiga = %0.2f" % luas)

Luas dan Keliling Persegi

print("PROGRAM MENGHITUNG LUAS & KELILING PERSEGI   ")
print("---------------------------------------------")

sisi = float(input("Masukan Sisi      : "))

keliling = 4*sisi
luas = sisi*sisi

print("\nKeliling Persegi : ",keliling)
print("Luas Persegi \t : ",luas)

Luas dan Keliling Persegi Panjang

print("PROGRAM MENGHITUNG LUAS & KELILING PERSEGI PANJANG")
print("--------------------------------------------------")

panjang = float(input("\nMasukan Panjang : "))
lebar = float(input("Masukan Lebar : "))

luas = panjang*lebar
keliling = 2*(panjang+lebar)

print("\nKeliling Persegi Panjang : ",keliling)
print("Luas Persegi Panjang \t : ",luas)

Luas dan Keliling Lingkaran

print("============================================")
print("Program Menghitung Keliling & Luas Lingkaran")
print("============================================")
r = float(input("Masukkan Jari-jari : "))
pi = 3.1416
keliling = 2 * pi * r
luas = pi * r * r
print("Keliling Lingkaran adalah : ", keliling)
print("Luas Lingkaran adalah  : ", luas)

Volume dan Luas Permukaan Kubus

print("PROGRAM MENGHITUNG VOLUME & LUAS PERMUKAAN KUBUS ")
print("---------------------------------------------------")

sisi = float(input("Masukan Sisi : "))

luas_permukaan = 6*sisi*sisi
volume = sisi*sisi*sisi

print("\Luas Permukaan Kubus : ",luas_permukaan)
print("Volume Kubus          : ",volume)

Volume dan Luas Permukaan Balok

print("PROGRAM MENGHITUNG VOLUME & LUAS PERMUKAAN BALOK")
print("------------------------------------------------")

panjang = float(input("Masukan Panjang\t\t: "))

lebar = float(input("Masukan Lebar\t\t: "))

tinggi = float(input("Masukan Tinggi\t\t: "))

luas_permukaan = 2*(panjang*lebar + panjang*tinggi + lebar*tinggi)
volume = panjang*lebar*tinggi

print("\Luas Permukaan Balok : ",luas_permukaan)
print("Volume Balok \t : ",volume)

Volume dan Luas Permukaan Tabung

import math

print("PROGRAM MENGHITUNG LUAS & VOLUME TABUNG")
r = float(input("Masukan Jari-jari Lingkaran : "))
t = float(input("Masukan Tinggi Tabung : "))

pi = 3.1416
luas_permukaan = 2*(pi*r*r) + (2*pi*r*t)
volume = (pi*r*r)*t

print("Luas Tabung : ", luas_permukaan)
print("Volume Tabung : ", volume)

Volume dan Luas Permukaan Kerucut

import math

print("\tPROGRAM MENGHITUNG LUAS & VOLUME KERUCUT")
r = float(input("Masukkan Jari-jari     : "))
tinggi = float(input("Masukkan Tinggi        : "))
s = float(input("Masukkan Garis Pelukis : "))

pi = 3.1416
luas_permukaan = pi * r * (r + s)
volume = 1/3 * pi * r * r * tinggi

print("\nVolume Kerucut         : ", volume)
print("Luas Permukaan Kerucut : ", luas_permukaan)

Volume dan Luas Permukaan Bola

import math

print("PROGRAM MENGHITUNG LUAS & VOLUME BOLA")
rusuk = float(input("\nMasukkan Rusuk : "))

pi = 3.1416
luas_permukaan = 4*pi * rusuk*rusuk
volume = 4/3 * pi * rusuk*rusuk*rusuk

print("\nLuas Bola   : ", luas_permukaan)
print("Volume Bola : ", volume)

Operasi Hitung Aritmatika

angka1 = float(input("Masukan Angka Pertama : "))
angka2 = float(input("Masukan Angka Kedua : "))

hasil = angka1 + angka2
print("Penjumlahan = ", hasil)
hasil = angka1 - angka2
print("Pengurangan = ", hasil)
hasil = angka1 * angka2
print("Perkalian = ", hasil)
hasil = angka1 / angka2
print("Pembagian = ", hasil)

Operasi Hitung Perbandingan

angka1 = float(input("Masukan Angka Pertama : "))
angka2 = float(input("Masukan Angka Kedua : "))

hasil = angka1 == angka2
print("a = b : ", hasil)
hasil = angka1 != angka2
print("a != b : ", hasil)
hasil = angka1 > angka2
print("a > b : ", hasil)
hasil = angka1 < angka2
print("a < b : ", hasil)
hasil = angka1 >= angka2
print("a >= b : ", hasil)
hasil = angka1 <= angka2
print("a <= b : ", hasil)

Operator Logika

angka1 = int(input("Masukan Angka Pertama : "))
angka2 = int(input("Masukan Angka Kedua : "))

hasil = angka1 & angka2
print("a & b : ", hasil)
hasil = angka1 and angka2
print("a and b : ", hasil)
hasil = angka1 | angka2
print("a | b : ", hasil)
hasil = angka1 or angka2
print("a or b : ", hasil)
hasil = angka1 ^ angka2
print("a ^ b : ", hasil)

Akar Persamaan Kuadrat

import math

a = int(input("Masukan nilai a : "))
b = int(input("Masukan nilai b : "))
c = int(input("Masukan nilai c : "))

print("\nBentuk Persamaan :")
print(f"{a}x^2 + {b}x + {c} = 0")

print("\nAkar-Akar Persamaan Kuadratnya adalah :")
D = (b * b) - (4 * a * c)

if D > 0:
    x1 = (-b + math.sqrt(D)) / (2 * a)
    x2 = (-b - math.sqrt(D)) / (2 * a)
    print("X1 =", x1)
    print("X2 =", x2)
elif D == 0:
    x1 = (-b + math.sqrt(D)) / (2 * a)
    x2 = x1
    print("X1 =", x1)
    print("X2 =", x2)
else:
    print("\nAkar Imajiner")

Program Besaran Vektor dalam Fisika

import math

a = int(input("Masukkan nilai A : "))
b = int(input("Masukkan nilai B : "))

print("\nResultan Dua Vektor Sejajar")
R = abs(a + b)
print(f"R = |{a} + {b}| = {R}")

print("\nResultan Dua Vektor yang Saling Tegak Lurus")
R = math.sqrt(a**2 + b**2)
theta = math.degrees(math.atan(b / a))
print(f"R = sqrt({a}^2 + {b}^2) = {R}")
print(f"tan(θ) = {b}/{a}, θ = tan^-1({b}/{a}) = {theta}°")

Program Rumus Kecepatan (Fisika)

def calculate_velocity():
    distance = float(input("Masukkan Jarak (m) : "))
    time = float(input("Masukkan Waktu (s) : "))
    velocity = distance / time
    print("v =", velocity, "m/s")

def calculate_time():
    distance = float(input("Masukkan Jarak (m)       : "))
    velocity = float(input("Masukkan Kecepatan (m/s) : "))
    time = distance / velocity
    print("t =", time, "s")

def calculate_distance():
    velocity = float(input("Masukkan Kecepatan (m/s) : "))
    time = float(input("Masukkan Waktu (s)       : "))
    distance = velocity * time
    print("s =", distance, "m")

print("     PROGRAM RUMUS KECEPATAN DALAM FISIKA      ")
print("===============================================")
print("                  Keterangan                   ")
print("1. v = Kecepatan (m/s)")
print("2. t = Waktu (s)")
print("3. s = Jarak (m)")
print("===============================================")

pilih = int(input("Masukan Pilihan : "))

if pilih == 1:
    print("Anda ingin mencari Kecepatan")
    print("Rumus : v = s/t")
    print("============================================")
    calculate_velocity()

elif pilih == 2:
    print("Anda ingin mencari Waktu")
    print("Rumus : t = s/v")
    print("============================================")
    calculate_time()

elif pilih == 3:
    print("Anda ingin mencari Jarak")
    print("Rumus : s = v*t")
    print("============================================")
    calculate_distance()

else:
    print("Invalid")

Memeriksa Tahun Kabisat

print("Program Cek Tahun Kabisat (Masehi/Gregorian)")
print("============================================")
print()

year = int(input("Input Tahun : "))

if year % 400 == 0:
    day = 366
    print(year, "adalah Tahun Kabisat")
    print("Jumlah Hari :", day)
elif year % 100 == 0:
    day = 365
    print(year, "bukan Tahun Kabisat")
    print("Jumlah Hari :", day)
elif year % 4 == 0:
    day = 366
    print(year, "adalah Tahun Kabisat")
    print("Jumlah Hari :", day)
else:
    day = 365
    print(year, "bukan Tahun Kabisat")
    print("Jumlah Hari :", day)

Program Mencetak Tanda Bintang

print("    Program Mencetak Tanda Bintang   ")
print("=====================================")
print("              Opsi Menu              ")
print("1. Persegi Bintang                   ")
print("2. Persegi Panjang Bintang           ")
print("3. Segitiga Bintang                  ")
print("4. Segitiga Bintang Terbalik         ")
print("5. Piramida Bintang                  ")
print("6. Piramida Bintang Terbalik         ")
print("=====================================")

opsi = int(input("Pilih Opsi : "))

if opsi == 1:
    print("\n1. Persegi Bintang")
    n = int(input("Masukkan Jumlah Persegi : "))
    print()
   
    for i in range(n):
        for j in range(n):
            print("*", end=" ")
        print()

elif opsi == 2:
    print("\n2. Persegi Panjang Bintang")
    n = int(input("Input Tinggi Persegi : "))
    m = int(input("Input Lebar Persegi : "))
    print()
   
    for i in range(n):
        for j in range(m):
            print("*", end=" ")
        print()

elif opsi == 3:
    print("\n3. Segitiga Bintang")
    n = int(input("Masukkan Tinggi Segitiga : "))
    print()
   
    for i in range(1, n+1):
        for j in range(i):
            print("*", end=" ")
        print()

elif opsi == 4:
    print("\n4. Segitiga Bintang Terbalik")
    n = int(input("Masukkan Tinggi Segitiga : "))
    print()
   
    for i in range(n, 0, -1):
        for j in range(i):
            print("*", end=" ")
        print()

elif opsi == 5:
    print("\n5. Piramida Bintang")
    n = int(input("Masukkan Tinggi Piramida : "))
    print()
   
    for i in range(1, n+1):
        for j in range(n-i):
            print(" ", end=" ")
        for k in range(i):
            print("*", end=" ")
        print()

elif opsi == 6:
    print("\n6. Piramida Bintang Terbalik")
    n = int(input("Masukkan Tinggi Piramida : "))
    print()
   
    for i in range(n, 0, -1):
        for j in range(n-i):
            print(" ", end=" ")
        for k in range(i):
            print("*", end=" ")
        print()

else:
    print("Invalid")

Faktorial Iteratif

def faktorial(n):
    fak = 1
    if n > 0:
        for i in range(1, n + 1):
            fak *= i
    return fak

angka = int(input("Masukkan Angka : "))
hasil = faktorial(angka)
print(f"{angka}! = {hasil}")

Faktorial Rekursif

print('Program menghitung Faktorial Rekursif')

def faktorial(a):
   if a == 0:
      return (1)
   else:
      return (a*faktorial(a-1))

bil = int(input("Masukan Bilangan : "))

print("%d! = %d" % (bil, faktorial(bil)))

Perpangkatan Iteratif (Iterative Exponentiation)

def pangkat_iteratif(angka, pangkat):
    hasil = 1
    for i in range(1, pangkat + 1):
        hasil *= angka
    return hasil

print("--------------------------------")
print("Program Pangkat Bilangan")
print("--------------------------------")

angka = int(input("Angka : "))
pangkat = int(input("Pangkat : "))

hasil = pangkat_iteratif(angka, pangkat)
print("Hasil : ", hasil)

Perpangkatan Rekursif (Recursive Exponentiation)

def pangkatRekursif(angka,pangkat):
   if pangkat == 0:
      return 1
   else:
      return angka * pangkatRekursif(angka,pangkat-1)

angka = int(input("Angka : "))
pangkat = int(input("Pangkat : "))

print('Hasil : ', pangkatRekursif(angka,pangkat))

Tetrasi (Tetration)

def tetrasi(angka,tetra):
   if tetra == 0:
      return 1
   else:
      return angka ** tetrasi(angka,tetra-1)

print("--------------------------------")
print("Program Tetrasi Bilangan")
print("--------------------------------")

angka = int(input("Angka : "))
tetra = int(input("Tetrasi : "))

print('Hasil : ', tetrasi(angka,tetra))

Fungsi Ackermann (Ackermann Function)

def ack(m, n):
    if m == 0:
        return n + 1
    elif m > 0 and n == 0:
        return ack(m - 1, 1)
    elif m > 0 and n > 0:
        return ack(m - 1, ack(m, n - 1))
    else:
        return ack(m, n)
 
print("Ackermann Function A(x, y)")
x = int(input("Insert value of x : "))
y = int(input("Insert value of y : "))

A = ack(x, y)

print("A("+str(x)+", "+str(y)+") = "+str(A))

Deret Bilangan Ganjil

def deret_bilangan_ganjil(batas):
    for i in range(1, batas + 1):
        if i % 2 != 0:
            print(i, end=" ")

print("-----------------------------------")
print("Program Deret Bilangan Ganjil")
print("-----------------------------------")
batas = int(input("Masukan Batas : "))
print()
deret_bilangan_ganjil(batas)

Deret Bilangan Genap

def deret_bilangan_genap(batas):
    for i in range(1, batas + 1):
        if i % 2 == 0:
            print(i, end=" ")

print("-----------------------------------")
print("Program Deret Bilangan Genap")
print("-----------------------------------")
batas = int(input("Masukan Batas : "))
print()
deret_bilangan_genap(batas)

Deret Bilangan Ganjil-Genap

print("-----------------------------------")
print("Program Deret Bilangan Ganjil Genap")
print("-----------------------------------")
print("1. Ganjil             ")
print("2. Genap             ")
print("-----------------------------------")

pil = int(input("Masukan Pilihan : "))
batas = int(input("Masukan Batas : "))

if pil == 1:
  for x in range (1,batas):
    if x % 2 == 1:
      print(x, end=" ")
elif pil == 2:
  for x in range (1,batas):
    if x % 2 == 0:
      print(x, end=" ")
else:
 print("Invalid")

Deret Bilangan Prima

print("Program Deret Bilangan Prima")
awal = int(input("Mulai dari : "))
akhir = int(input("Sampai : "))
print("-----------------------------")

for i in range(awal, akhir):
  bil = 1
  for j in range(2, i):
    if i%j==0:
      bil=bil+1
  if bil==1:
    print(i, end=" ")

Menentukan Deret Bilangan Prima

def is_prime_number(bil):
    if bil < 2:
        return False

    for i in range(2, int(bil ** 0.5) + 1):
        if bil % i == 0:
            return False

    return True

print("PROGRAM MENENTUKAN BILANGAN PRIMA ATAU BUKAN")
bil = int(input("Masukan Angka : "))

if is_prime_number(bil):
    print("Bilangan Prima")
else:
    print("Bukan Bilangan Prima")

Deret Fibonacci

print("PROGRAM DERET BILANGAN FIBONACCI")
n = int(input("Masukan Batas Deret Bilangan Fibonacci : "))
print("Deret Fibonacci : ", end=" ")

f1 = 0
f2 = 1
next = 0

for i in range(1, n+1):
    if i == 1:
        print(f1, end=" ")
        continue
    if i == 2:
        print(f2, end=" ")
        continue
   
    next = f1 + f2
    f1 = f2
    f2 = next
    print(next, end=" ")

Deret Lucas

def lucas_series(n):
    l1, l2 = 1, 3
    lucas_list = [l1, l2]

    for i in range(2, n):
        next_lucas = l1 + l2
        lucas_list.append(next_lucas)
        l1, l2 = l2, next_lucas

    return lucas_list

print("PROGRAM DERET BILANGAN LUCAS")
n = int(input("Masukkan Batas Deret Bilangan Lucas : "))

lucas_list = lucas_series(n)
print("Deret Lucas:", ' '.join(str(num) for num in lucas_list))

Barisan dan Deret Bilangan Aritmatika

print("Program Barisan Deret Aritmatika")
print("================================")
print()

a = int(input("Masukkan Suku Awal : "))
n = int(input("Masukkan Banyak Suku : "))
b = int(input("Masukkan Beda : "))
print()

print("Barisan Aritmatika:")
for i in range(n):
    print(a + (i * b), end=" ")

deret_aritmatika = (2 * a + (n - 1) * b) * n // 2
print("\nDeret Aritmatika:", deret_aritmatika)

Menghitung Nilai Rata-rata dengan Array

print("Program Menghitung Nilai Rata-rata dengan Array")
print("==============================================")
print()

n = int(input("Banyaknya Data : "))
data = []

for i in range(n):
    data.append(float(input("Data ke-" + str(i + 1) + " : ")))

jum = sum(data)
rata = jum / n

print()
print("Nilai Total     : ", jum)
print("Nilai Rata-rata : ", rata)

Konversi Suhu (Dari Celsius)

print("Program Konversi Suhu Celsius")
print("=============================")

cels = float(input("Input Suhu Celsius : "))

fahr = (9/5 * cels) + 32
ream = cels * (4/5)
rnke = (cels + 273.15) * 9/5
kelv = cels + 273.15

print(cels, "Derajat Celsius =", fahr, "Derajat Fahrenheit")
print(cels, "Derajat Celsius =", ream, "Derajat Reamur")
print(cels, "Derajat Celsius =", rnke, "Derajat Rankine")
print(cels, "Derajat Celsius =", kelv, "Kelvin")

Konversi Suhu (Dari Fahrenheit)

print("Program Konversi Suhu Fahrenheit")
print("================================")

fahr = float(input("Input Suhu Fahrenheit : "))

cels = (fahr - 32) * 5/9
ream = 4/9 * (fahr - 32)
rnke = fahr + 459.67
kelv = (fahr + 459.67) * 5/9

print(fahr, "Derajat Fahrenheit =", cels, "Derajat Celsius")
print(fahr, "Derajat Fahrenheit =", ream, "Derajat Reamur")
print(fahr, "Derajat Fahrenheit =", rnke, "Derajat Rankine")
print(fahr, "Derajat Fahrenheit =", kelv, "Kelvin")

Konversi Suhu (Dari Reamur)

print("Program Konversi Suhu Reamur")
print("============================")

ream = float(input("Input Suhu Reamur : "))

cels = ream / 0.8
fahr = (ream * 2.25) + 32
rnke = (ream * 2.25) + 491.67
kelv = (ream / 0.8) + 273.15

print(ream, "Derajat Reamur =", cels, "Derajat Celsius")
print(ream, "Derajat Reamur =", fahr, "Derajat Fahrenheit")
print(ream, "Derajat Reamur =", rnke, "Derajat Rankine")
print(ream, "Derajat Reamur =", kelv, "Kelvin")

Konversi Suhu (Dari Rankine)

print("Program Konversi Suhu Rankine")
print("=============================")

rnke = float(input("Input Suhu Rankine : "))

cels = (rnke - 491.67) * 5/9
fahr = rnke - 459.67
ream = (rnke / 1.8 + 273.15) * 0.8
kelv = rnke * 5/9

print(rnke, "Derajat Rankine =", cels, "Derajat Celsius")
print(rnke, "Derajat Rankine =", fahr, "Derajat Fahrenheit")
print(rnke, "Derajat Rankine =", ream, "Derajat Reamur")
print(rnke, "Derajat Rankine =", kelv, "Kelvin")

Konversi Suhu (Dari Kelvin)

print("Program Konversi Suhu Kelvin")
print("============================")

kelv = float(input("Input Suhu Kelvin : "))

cels = kelv - 273.15
fahr = (kelv * 9/5) - 459.67
ream = 4/5 * (kelv - 273)
rnke = kelv * 9/5

print(kelv, "Kelvin =", cels, "Derajat Celsius")
print(kelv, "Kelvin =", fahr, "Derajat Fahrenheit")
print(kelv, "Kelvin =", ream, "Derajat Reamur")
print(kelv, "Kelvin =", rnke, "Derajat Rankine")

Menghitung Data Kasus COVID-19

print('Program menghitung Data Kasus COVID-19')

ptv = int(input('Kasus Terkonfirmasi Positif : '))
death = int(input('Kasus Kematian : '))
recov = int(input('Kasus Kesembuhan : '))

out=death+recov
act=ptv-out

print('==== Data Kasus COVID-19 ====')
print('Kasus Positif    : '+ str(ptv))
print('Kasus Kematian    : '+ str(death))
print('Kasus Pulih    : '+ str(recov))
print('Kasus Aktif    : '+ str(act))
print('Kasus Pasif    : '+ str(out))
print('=============================')

Konversi Bilangan Desimal ke Biner

print("##    Program Konversi Desimal ke Biner    ##")
print("=============================================")

n = int(input("Input Bilangan Desimal : "))
binary = bin(n)[2:]

print("Bilangan Biner adalah :", binary)

Konversi Bilangan Desimal ke Kuartener

print("##   Program Konversi Desimal ke Kuartener   ##")
print("==============================================" )

n = int(input("Input Bilangan Desimal : "))
quartary = ""

while n > 0:
    quartary = str(n % 4) + quartary
    n = n // 4

print("Bilangan Kuartener adalah :", quartary)

Konversi Bilangan Desimal ke Oktal

print("##    Program Konversi Desimal ke Oktal    ##")
print("=============================================")

n = int(input("Input Bilangan Desimal : "))
octal = oct(n)[2:]

print("Bilangan Oktal adalah :", octal)

Konversi Bilangan Desimal ke Heksadesimal

def decToHex(n):
    hexaDeciNum = ""
    while n != 0:
        temp = n % 16
        if temp < 10:
            hexaDeciNum = str(temp) + hexaDeciNum
        else:
            hexaDeciNum = chr(temp + 55) + hexaDeciNum
        n = n // 16
    return hexaDeciNum

print("##    Program Konversi Desimal ke Heksadesimal    ##")
print("====================================================")

n = int(input("Masukkan Angka Decimal : "))
hexadecimal = decToHex(n)

print("Dalam Bilangan Heksadesimal :", hexadecimal)

Bubble Sort

def prosesPerpindahan(data):
    for x in data:
        print(x, end=" ")
    print()

def prosesSorting(data):
    for proses in range(1, len(data)):
        for x in range(len(data) - proses):
            if data[x] > data[x + 1]:
                data[x], data[x + 1] = data[x + 1], data[x]
        print(f"Tahap Ke-{proses} :", end=" ")
        prosesPerpindahan(data)

def main():
    Nilai = []
    N = int(input("Masukkan Banyak Bilangan : "))
    for i in range(N):
        nilai = int(input(f"Elemen ke-{i + 1} : "))
        Nilai.append(nilai)

    print("\nProses Sorting dengan metode Bubble Sort : ")
    prosesSorting(Nilai)

    print("\nSetelah Di Urutkan dengan Bubble Sort : ")
    prosesPerpindahan(Nilai)

if __name__ == "__main__":
    main()

Selection Sort

def main():
    Nilai = []
    N = int(input("Masukkan Banyak Bilangan : "))
    for i in range(N):
        nilai = int(input(f"Elemen ke-{i} : "))
        Nilai.append(nilai)

    print("Sebelum Di Urutkan :", end=" ")
    for x in Nilai:
        print(x, end=" ")

    print("\n")

    for i in range(N - 1):
        posisi = i
        for j in range(i + 1, N):
            if Nilai[j] < Nilai[posisi]:
                posisi = j

        if posisi != i:
            Nilai[i], Nilai[posisi] = Nilai[posisi], Nilai[i]

        print(f"Tahap Ke-{i + 1} :", end=" ")
        for x in Nilai:
            print(x, end=" ")
        print()

    print("\nSetelah Di Urutkan Menggunakan Metode Selection Sort :", end=" ")
    for x in Nilai:
        print(x, end=" ")

if __name__ == "__main__":
    main()

Insertion Sort

def main():
    Nilai = []
    N = int(input("Masukkan Banyak Bilangan : "))
    for i in range(N):
        nilai = int(input(f"Elemen ke-{i + 1} : "))
        Nilai.append(nilai)

    print("\nData Sebelum Di Urutkan :", end=" ")
    print("Tahap Ke-1 :", end=" ")
    for i in range(N):
        print(Nilai[i], end=" ")
    print()

    for i in range(1, N):
        tampung = Nilai[i]
        j = i - 1
        while j >= 0 and Nilai[j] > tampung:
            Nilai[j + 1] = Nilai[j]
            j -= 1
        Nilai[j + 1] = tampung

        print(f"Tahap Ke-{i + 1} :", end=" ")
        for k in range(N):
            print(Nilai[k], end=" ")
        print()

    print("\nSetelah Di Urutkan dengan Insertion Sort :", end=" ")
    for i in range(N):
        print(Nilai[i], end=" ")
    print()

if __name__ == "__main__":
    main()

Sequential Search

def main():
    Nilai = []
    N = int(input("Masukkan Banyaknya Bilangan : "))
    for i in range(N):
        nilai = int(input(f"Masukkan Elemen ke-{i} : "))
        Nilai.append(nilai)

    print("Deretan Bilangan :", end=" ")
    for x in Nilai:
        print(x, end=" ")
    print()

    Bilangan = int(input("Masukkan Bilangan yang akan Dicari : "))

    ketemu = False
    i = 0
    while not ketemu and i < N:
        if Nilai[i] == Bilangan:
            ketemu = True
        i += 1

    if ketemu:
        print(f"Bilangan {Bilangan} ditemukan")
    else:
        print(f"Bilangan {Bilangan} tidak ditemukan")

if __name__ == "__main__":
    main()

Binary Search

def binary_search(arr, Bilangan):
    awal = 0
    akhir = len(arr) - 1

    while awal <= akhir:
        tengah = (awal + akhir) // 2
        if arr[tengah] == Bilangan:
            return tengah
        elif arr[tengah] < Bilangan:
            awal = tengah + 1
        else:
            akhir = tengah - 1

    return -1

def main():
    Nilai = []
    N = int(input("Banyak Bilangan : "))
    for i in range(N):
        nilai = int(input(f"Elemen ke-{i} : "))
        Nilai.append(nilai)

    Nilai.sort()

    print("Elemen Setelah diurut :", end=" ")
    for x in Nilai:
        print(x, end=" ")
    print()

    Bilangan = int(input("Masukkan data yang akan anda cari : "))
    posisi = binary_search(Nilai, Bilangan)

    if posisi != -1:
        print(f"Data {Bilangan} ada dalam array pada posisi {posisi}")
    else:
        print(f"Data {Bilangan} tidak ada dalam array")

if __name__ == "__main__":
    main()

Program Kasir Sederhana

print("PROGRAM KASIR SEDERHANA")
print("---------------------------")
print()

jum_beli = int(input("Masukkan Jumlah Beli : "))

nama_barang = []
jumlah = []
harga = []
sub_tot = []
tot = 0

for i in range(jum_beli):
    print()
    print("Masukkan Barang Ke-", i+1)
    print()
   
    nama = input("Nama Barang : ")
    nama_barang.append(nama)
   
    jml = int(input("Jumlah      : "))
    jumlah.append(jml)
   
    hrg = int(input("Harga       : "))
    harga.append(hrg)
   
    sub_total = jml * hrg
    sub_tot.append(sub_total)
    tot += sub_total

print()
print("STRUK BELANJA MINI MARKET INZAGHI")
print("---------------------------------------------------------")
print("No   Barang    Jumlah     Harga     Sub Total")
for i in range(jum_beli):
    print(i+1, nama_barang[i], jumlah[i], harga[i], sub_tot[i], sep="\t")
print("---------------------------------------------------------")

# Kondisi untuk menentukan diskon yang didapatkan berdasarkan total belanja
if tot >= 100000:
    diskon = 0.06 * tot
elif tot >= 50000:
    diskon = 0.04 * tot
elif tot >= 25000:
    diskon = 0.02 * tot
else:
    diskon = 0

# Menampilkan Keterangan
print("Jumlah Bayar : Rp.", tot)  # Menampilkan jumlah bayar (belum termasuk diskon)
print("Diskon       : Rp.", diskon)  # Menampilkan diskon
print("Total Bayar  : Rp.", tot - diskon)  # Menampilkan total harga yang harus dibayar
bayar = int(input("Bayar        : Rp. "))  # Input dari user untuk jumlah yang dibayar
print("Kembali      : Rp.", bayar - (tot - diskon))  # Menampilkan uang kembali

Dan masih banyak lagi Program lainnya dalam Bahasa Python.


Semoga saja Artikel ini sangat bermanfaat bagi para IT Pemula dan juga mohon maaf apabila ada kesalahan dalam penulisan Kode. Terima Kasih 😄😘👌👍 :)

Wassalamu‘alaikum wr. wb.

Post a Comment

Previous Post Next Post