Konversi suhu adalah salah satu tugas pemrograman dasar yang sering digunakan, baik untuk keperluan ilmu pengetahuan, meteorologi, maupun aplikasi sehari-hari. Bahasa pemrograman Python sangat ideal untuk tugas ini karena sintaksnya yang bersih dan mudah dibaca. Artikel ini akan memandu Anda membuat program konversi suhu Python yang fungsional dan mudah dikembangkan.
Python unggul dalam komputasi numerik. Dengan operator matematika dasar yang intuitif, kita bisa menerapkan rumus konversi fisika—seperti dari Celsius ke Fahrenheit, atau ke Kelvin—hanya dalam beberapa baris kode. Tidak diperlukan pustaka eksternal yang rumit untuk perhitungan sederhana ini, menjadikannya solusi yang cepat dan efisien.
Sebelum masuk ke kode, penting untuk mengingat rumus standar yang akan kita gunakan:
Program yang baik harus mampu menerima input dari pengguna, menentukan jenis konversi yang diminta, melakukan perhitungan, dan menampilkan hasilnya dengan jelas. Berikut adalah contoh kode Python lengkap yang mengintegrasikan fungsi-fungsi tersebut.
Kode Python: konversi_suhu.py
def celsius_to_fahrenheit(celsius):
"""Mengkonversi suhu dari Celsius ke Fahrenheit."""
return (celsius * 9/5) + 32
def fahrenheit_to_celsius(fahrenheit):
"""Mengkonversi suhu dari Fahrenheit ke Celsius."""
return (fahrenheit - 32) * 5/9
def celsius_to_kelvin(celsius):
"""Mengkonversi suhu dari Celsius ke Kelvin."""
return celsius + 273.15
def main():
print("--- Program Konversi Suhu Sederhana ---")
try:
# 1. Input Nilai
nilai = float(input("Masukkan nilai suhu: "))
# 2. Input Pilihan Konversi
print("\nPilih satuan asal:")
print("1. Celsius (C)")
print("2. Fahrenheit (F)")
print("3. Kelvin (K)")
pilihan = input("Masukkan pilihan (1/2/3): ")
hasil = None
satuan_asal = ""
satuan_tujuan = ""
if pilihan == '1':
satuan_asal = "Celsius"
print("\nKonversi dari Celsius:")
print(f" -> Fahrenheit: {celsius_to_fahrenheit(nilai):.2f} °F")
print(f" -> Kelvin: {celsius_to_kelvin(nilai):.2f} K")
elif pilihan == '2':
satuan_asal = "Fahrenheit"
print("\nKonversi dari Fahrenheit:")
print(f" -> Celsius: {fahrenheit_to_celsius(nilai):.2f} °C")
# Konversi F ke K memerlukan langkah perantara C
konversi_ke_c = fahrenheit_to_celsius(nilai)
print(f" -> Kelvin: {celsius_to_kelvin(konversi_ke_c):.2f} K")
elif pilihan == '3':
satuan_asal = "Kelvin"
# Konversi K ke C
konversi_ke_c = nilai - 273.15
print("\nKonversi dari Kelvin:")
print(f" -> Celsius: {konversi_ke_c:.2f} °C")
print(f" -> Fahrenheit: {celsius_to_fahrenheit(konversi_ke_c):.2f} °F")
else:
print("Pilihan tidak valid. Harap masukkan 1, 2, atau 3.")
except ValueError:
print("Input tidak valid. Pastikan Anda memasukkan angka.")
if __name__ == "__main__":
main()
Program di atas dibangun dengan prinsip modularitas:
input() digunakan untuk berinteraksi dengan pengguna, dan float() memastikan input diubah menjadi angka desimal yang dapat dihitung.try...except: Ini krusial. Jika pengguna memasukkan teks alih-alih angka, program tidak akan crash (tertutup paksa), melainkan akan menampilkan pesan kesalahan yang informatif.:.2f memastikan hasil suhu ditampilkan rapi hanya dengan dua angka di belakang koma.Program di atas secara otomatis memberikan hasil konversi ke dua satuan lain jika satu satuan dipilih sebagai input. Sebagai contoh, jika pengguna memilih Celsius, program langsung menghitung hasilnya ke Fahrenheit dan Kelvin. Ini meningkatkan kegunaan program konversi suhu Python Anda tanpa perlu meminta input tambahan yang berulang.
Untuk membuat program ini lebih ramah pengguna untuk aplikasi web (misalnya, menggunakan Flask atau Django), Anda dapat mengganti fungsi input() dengan parameter URL atau formulir HTML, namun logika inti perhitungan yang telah kita definisikan dalam fungsi Python akan tetap sama.
Menguasai dasar-dasar seperti konversi suhu adalah langkah awal yang solid dalam perjalanan Anda menjadi programmer Python yang mahir.