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 = 50000print(harga)sukses = Trueprint(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 Stringfoo = "Belajar Python bersama Inzaghis Blog"print(foo)#Tipe Data Integerfoo = 1500print(foo)#Tipe Data Floatfoo = 99.123print(foo)#Tipe Data Complex Numberfoo = 4jprint(foo)#Tipe Data Booleanfoo = Trueprint(foo)#Tipe Data Listfoo = ["satu","dua","tiga","satu"]print(foo)#Tipe Data Tuplefoo = ("satu","dua","tiga","satu")print(foo)#Tipe Data Setfoo = {"satu","dua","tiga","empat"}print(foo)#Tipe Data Dictionaryfoo = {"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 :
# Penjumlahanangka1 = 10angka2 = 3hasil_penjumlahan = angka1 + angka2print("Penjumlahan :", hasil_penjumlahan)# Penguranganhasil_pengurangan = angka1 - angka2print("Pengurangan :", hasil_pengurangan)# Perkalianhasil_perkalian = angka1 * angka2print("Perkalian :", hasil_perkalian)# Pembagian (real/pecahan)hasil_pembagian = angka1 / angka2print("Pembagian :", hasil_pembagian)# Sisa hasil bagi (modulus)hasil_modulus = angka1 % angka2print("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 variabelnilai1 = 10nilai2 = 5nilai3 = 7# Operator logika ANDif nilai1 > nilai2 and nilai1 > nilai3:print("Nilai1 lebih besar dari nilai2 dan nilai3")# Operator logika ORif nilai1 > nilai2 or nilai1 > nilai3:print("Nilai1 lebih besar dari nilai2 atau nilai3")# Operator logika NOThasil = not nilai1 > nilai2print("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 if, else, 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 TRUEnilai = 9# jika kondisi benar/TRUE maka program akan mengeksekusi perintah dibawahnyaif(nilai > 7):print("Sembilan Lebih Besar Dari Angka Tujuh") # Kondisi Benar, Dieksekusi# jika kondisi salah/FALSE maka program tidak akan mengeksekusi perintah dibawahnyaif(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 if, else, 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 = 50print('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 elsenilai = 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.com, Freecodecamp.org (Do-While), Jagongoding.com (For, While, Nested Loop), dan Duniailkom.com (While, For, Break, Continue)
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 = 1while 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 indexi = 0while 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 popwhile 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 = 0while 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 = 50while 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 = 7max_kolom = 7baris = 0while baris < max_baris:kolom = 0while kolom < max_kolom:print('o' if kolom <= baris else '+', end = ' ')kolom += 1else: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.com, Pemburukode.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
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]]#displayprint(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 columnsarray=[[23,45,43,23,45],[45,67,54,32,45],[89,90,87,65,44],[23,45,67,32,10]]#displayprint(array)#get the first rowprint(array[0])#get the third rowprint(array[2])#get the first row third elementprint(array[0][2])#get the third row forth elementprint(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 arrayfor 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 columnsarray=[[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 positionarray.insert(2, [1,2,3,4,5])#insert the row at 6 th positionarray.insert(2, [1,2,3,4,5])#insert the row at 7 th positionarray.insert(2, [1,2,3,4,5])#displayprint(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 columnsarray=[[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 rowarray[2]=[0,3,5,6,7]#update row values in the 5th rowarray[2]=[0,3,5,6,7]#update the first row , third columnarray[0][2]=100#update the second row , third columnarray[1][2]=400#displayprint(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 columnsarray=[[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 rowdel array[2]#delete row values in the 2nd rowdel array[1]#displayprint(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 columnsarray=[[23,45,43,23,45],[45,67,54,32,45],[89,90,87,65,44],[23,45,67,32,10]]#displayprint(len(array))
Output :
4
FUNGSI DALAM PYTHON
Sumber : Jagongoding.com, Geeksforgeeks.org, Tutorialspoint.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 + num2return num3# Driver codenum1, num2 = 5, 15ans = 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 punluas_persegi(10)# menghasilkan outputprint('Luas persegi dengan sisi 4 adalah:', luas_persegi(4))# kita juga bisa simpan di dalam variabelpersegi_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*tprint("\nLuas Segitiga = %0.2f" % luas)
Luas dan Keliling Persegi
print("PROGRAM MENGHITUNG LUAS & KELILING PERSEGI ")print("---------------------------------------------")sisi = float(input("Masukan Sisi : "))keliling = 4*sisiluas = sisi*sisiprint("\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*lebarkeliling = 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.1416keliling = 2 * pi * rluas = pi * r * rprint("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*sisivolume = sisi*sisi*sisiprint("\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*tinggiprint("\Luas Permukaan Balok : ",luas_permukaan)print("Volume Balok \t : ",volume)
Volume dan Luas Permukaan Tabung
import mathprint("PROGRAM MENGHITUNG LUAS & VOLUME TABUNG")r = float(input("Masukan Jari-jari Lingkaran : "))t = float(input("Masukan Tinggi Tabung : "))pi = 3.1416luas_permukaan = 2*(pi*r*r) + (2*pi*r*t)volume = (pi*r*r)*tprint("Luas Tabung : ", luas_permukaan)print("Volume Tabung : ", volume)
Volume dan Luas Permukaan Kerucut
import mathprint("\tPROGRAM MENGHITUNG LUAS & VOLUME KERUCUT")r = float(input("Masukkan Jari-jari : "))tinggi = float(input("Masukkan Tinggi : "))s = float(input("Masukkan Garis Pelukis : "))pi = 3.1416luas_permukaan = pi * r * (r + s)volume = 1/3 * pi * r * r * tinggiprint("\nVolume Kerucut : ", volume)print("Luas Permukaan Kerucut : ", luas_permukaan)
Volume dan Luas Permukaan Bola
import mathprint("PROGRAM MENGHITUNG LUAS & VOLUME BOLA")rusuk = float(input("\nMasukkan Rusuk : "))pi = 3.1416luas_permukaan = 4*pi * rusuk*rusukvolume = 4/3 * pi * rusuk*rusuk*rusukprint("\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 + angka2print("Penjumlahan = ", hasil)hasil = angka1 - angka2print("Pengurangan = ", hasil)hasil = angka1 * angka2print("Perkalian = ", hasil)hasil = angka1 / angka2print("Pembagian = ", hasil)
Operasi Hitung Perbandingan
angka1 = float(input("Masukan Angka Pertama : "))angka2 = float(input("Masukan Angka Kedua : "))hasil = angka1 == angka2print("a = b : ", hasil)hasil = angka1 != angka2print("a != b : ", hasil)hasil = angka1 > angka2print("a > b : ", hasil)hasil = angka1 < angka2print("a < b : ", hasil)hasil = angka1 >= angka2print("a >= b : ", hasil)hasil = angka1 <= angka2print("a <= b : ", hasil)
Operator Logika
angka1 = int(input("Masukan Angka Pertama : "))angka2 = int(input("Masukan Angka Kedua : "))hasil = angka1 & angka2print("a & b : ", hasil)hasil = angka1 and angka2print("a and b : ", hasil)hasil = angka1 | angka2print("a | b : ", hasil)hasil = angka1 or angka2print("a or b : ", hasil)hasil = angka1 ^ angka2print("a ^ b : ", hasil)
Akar Persamaan Kuadrat
import matha = 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 = x1print("X1 =", x1)print("X2 =", x2)else:print("\nAkar Imajiner")
Program Besaran Vektor dalam Fisika
import matha = 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 / timeprint("v =", velocity, "m/s")def calculate_time():distance = float(input("Masukkan Jarak (m) : "))velocity = float(input("Masukkan Kecepatan (m/s) : "))time = distance / velocityprint("t =", time, "s")def calculate_distance():velocity = float(input("Masukkan Kecepatan (m/s) : "))time = float(input("Masukkan Waktu (s) : "))distance = velocity * timeprint("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 = 366print(year, "adalah Tahun Kabisat")print("Jumlah Hari :", day)elif year % 100 == 0:day = 365print(year, "bukan Tahun Kabisat")print("Jumlah Hari :", day)elif year % 4 == 0:day = 366print(year, "adalah Tahun Kabisat")print("Jumlah Hari :", day)else:day = 365print(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 = 1if n > 0:for i in range(1, n + 1):fak *= ireturn fakangka = 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 = 1for i in range(1, pangkat + 1):hasil *= angkareturn hasilprint("--------------------------------")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 1else:return angka * pangkatRekursif(angka,pangkat-1)angka = int(input("Angka : "))pangkat = int(input("Pangkat : "))print('Hasil : ', pangkatRekursif(angka,pangkat))
def tetrasi(angka,tetra):if tetra == 0:return 1else: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 + 1elif 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))
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 = 1for j in range(2, i):if i%j==0:bil=bil+1if bil==1:print(i, end=" ")
Menentukan Deret Bilangan Prima
def is_prime_number(bil):if bil < 2:return Falsefor i in range(2, int(bil ** 0.5) + 1):if bil % i == 0:return Falsereturn Trueprint("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 = 0f2 = 1next = 0for i in range(1, n+1):if i == 1:print(f1, end=" ")continueif i == 2:print(f2, end=" ")continuenext = f1 + f2f1 = f2f2 = nextprint(next, end=" ")
Deret Lucas
def lucas_series(n):l1, l2 = 1, 3lucas_list = [l1, l2]for i in range(2, n):next_lucas = l1 + l2lucas_list.append(next_lucas)l1, l2 = l2, next_lucasreturn lucas_listprint("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 // 2print("\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 / nprint()print("Nilai Total : ", jum)print("Nilai Rata-rata : ", rata)
print("Program Konversi Suhu Celsius")print("=============================")cels = float(input("Input Suhu Celsius : "))fahr = (9/5 * cels) + 32ream = cels * (4/5)rnke = (cels + 273.15) * 9/5kelv = cels + 273.15print(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/9ream = 4/9 * (fahr - 32)rnke = fahr + 459.67kelv = (fahr + 459.67) * 5/9print(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.8fahr = (ream * 2.25) + 32rnke = (ream * 2.25) + 491.67kelv = (ream / 0.8) + 273.15print(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/9fahr = rnke - 459.67ream = (rnke / 1.8 + 273.15) * 0.8kelv = rnke * 5/9print(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.15fahr = (kelv * 9/5) - 459.67ream = 4/5 * (kelv - 273)rnke = kelv * 9/5print(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+recovact=ptv-outprint('==== 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) + quartaryn = n // 4print("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 % 16if temp < 10:hexaDeciNum = str(temp) + hexaDeciNumelse:hexaDeciNum = chr(temp + 55) + hexaDeciNumn = n // 16return hexaDeciNumprint("## 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 = ifor j in range(i + 1, N):if Nilai[j] < Nilai[posisi]:posisi = jif 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 - 1while j >= 0 and Nilai[j] > tampung:Nilai[j + 1] = Nilai[j]j -= 1Nilai[j + 1] = tampungprint(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 = Falsei = 0while not ketemu and i < N:if Nilai[i] == Bilangan:ketemu = Truei += 1if 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 = 0akhir = len(arr) - 1while awal <= akhir:tengah = (awal + akhir) // 2if arr[tengah] == Bilangan:return tengahelif arr[tengah] < Bilangan:awal = tengah + 1else:akhir = tengah - 1return -1def 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 = 0for 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 * hrgsub_tot.append(sub_total)tot += sub_totalprint()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 belanjaif tot >= 100000:diskon = 0.06 * totelif tot >= 50000:diskon = 0.04 * totelif tot >= 25000:diskon = 0.02 * totelse:diskon = 0# Menampilkan Keteranganprint("Jumlah Bayar : Rp.", tot) # Menampilkan jumlah bayar (belum termasuk diskon)print("Diskon : Rp.", diskon) # Menampilkan diskonprint("Total Bayar : Rp.", tot - diskon) # Menampilkan total harga yang harus dibayarbayar = int(input("Bayar : Rp. ")) # Input dari user untuk jumlah yang dibayarprint("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.