Advertisement
afrizalwahyuadi66

UProblem.py

Apr 20th, 2024
442
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 12.31 KB | None | 0 0
  1. import math
  2. import datetime
  3. import sys
  4. import os
  5. import UMenu
  6.  
  7. # Menjalankan Program=============================================================
  8. def run_program(choice):
  9.     if choice == 1:
  10.         program_1()
  11.     elif choice == 2:
  12.         program_2()
  13.     elif choice == 3:
  14.         program_3()
  15.     elif choice == 4:
  16.         program_4()
  17.     elif choice == 5:
  18.         program_5()
  19.     elif choice == 6:
  20.         program_6()
  21.     elif choice == 7:
  22.         program_7()
  23.     elif choice == 8:
  24.         program_8()
  25.     elif choice == 9:
  26.         program_9()
  27.     elif choice == 10:
  28.         program_10()
  29.     elif choice == 11:
  30.         program_11()
  31.     elif choice == 12:
  32.         program_12()
  33. #=================================================================================
  34.  
  35.  
  36.  
  37.  
  38. #Program 1========================================================================
  39. def program_1():
  40.  
  41.     os.system('cls' if os.name == 'nt' else 'clear')
  42.    
  43.     print("===========Program 1===========")
  44.        
  45.     # Menerima input dari pengguna
  46.     bilangan1 = float(input("Masukkan bilangan pertama: "))
  47.     bilangan2 = float(input("Masukkan bilangan kedua: "))
  48.     bilangan3 = float(input("Masukkan bilangan ketiga: "))
  49.  
  50.     # Melakukan perhitungan
  51.     hasil_penjumlahan = bilangan1 + bilangan2 + bilangan3
  52.     hasil_perkalian = bilangan1 * bilangan2 * bilangan3
  53.  
  54.     # Menampilkan hasil perhitungan
  55.     print(f"Hasil Penjumlahan: {hasil_penjumlahan}")
  56.     print(f"Hasil Perkalian  : {hasil_perkalian}\n")
  57.    
  58.     print(f"Tekan Enter Untuk Kembali :")
  59.     input()
  60. #=================================================================================
  61.  
  62.  
  63.  
  64. #Program 2========================================================================
  65. def program_2():
  66.  
  67.     os.system('cls' if os.name == 'nt' else 'clear')
  68.    
  69.     print("===========Program 2===========")
  70.        
  71.     # Menerima input panjang sisi dari pengguna
  72.     panjang_sisi = float(input("Masukkan panjang sisi segitiga sama sisi (S): "))
  73.  
  74.     # Menghitung luas segitiga (LS)
  75.     luas_segitiga = (panjang_sisi**2 * (3**0.5)) / 4
  76.  
  77.     # Menghitung keliling segitiga (KS)
  78.     keliling_segitiga = 3 * panjang_sisi
  79.  
  80.     # Menampilkan hasil perhitungan
  81.     print(f"Luas Segitiga    : {luas_segitiga}")
  82.     print(f"Keliling Segitiga: {keliling_segitiga}\n")
  83.    
  84.     print(f"Tekan Enter Untuk Kembali :")
  85.     input()
  86. #=================================================================================
  87.  
  88.  
  89.  
  90. #Program 3========================================================================
  91. def program_3():
  92.    
  93.     os.system('cls' if os.name == 'nt' else 'clear')
  94.    
  95.     print("===========Program 3===========")
  96.    
  97.     # Menerima input panjang sisi siku-siku X dan Y dari pengguna
  98.     panjang_sisi_x = float(input("Masukkan panjang sisi siku-siku X: "))
  99.     panjang_sisi_y = float(input("Masukkan panjang sisi siku-siku Y: "))
  100.  
  101.     # Menghitung luas segitiga siku-siku (LSS)
  102.     luas_segitiga_siku = 0.5 * panjang_sisi_x * panjang_sisi_y
  103.  
  104.     # Menghitung panjang sisi miring (hypotenuse)
  105.     panjang_miring = (panjang_sisi_x**2 + panjang_sisi_y**2)**0.5
  106.  
  107.     # Menghitung keliling segitiga siku-siku (KSS)
  108.     keliling_segitiga_siku = panjang_sisi_x + panjang_sisi_y + panjang_miring
  109.  
  110.     # Menampilkan hasil perhitungan
  111.     print(f"Luas Segitiga Siku-Siku    : {luas_segitiga_siku}")
  112.     print(f"Keliling Segitiga Siku-Siku: {keliling_segitiga_siku}\n")
  113.    
  114.     print(f"Tekan Enter Untuk Kembali :")
  115.     input()
  116. #=================================================================================
  117.  
  118.  
  119.  
  120. #Program 4========================================================================
  121. def program_4():
  122.  
  123.     os.system('cls' if os.name == 'nt' else 'clear')
  124.    
  125.     print("===========Program 4===========")
  126.    
  127.     # Menerima input diameter dari pengguna
  128.     diameter = float(input("Masukkan diameter lingkaran (D): "))
  129.  
  130.     # Menghitung jari-jari lingkaran
  131.     jari_jari = diameter / 2
  132.  
  133.     # Menghitung luas lingkaran (LL)
  134.     luas_lingkaran = math.pi * jari_jari**2
  135.  
  136.     # Menghitung keliling lingkaran (KL)
  137.     keliling_lingkaran = 2 * math.pi * jari_jari
  138.  
  139.     # Menampilkan hasil perhitungan
  140.     print(f"Luas Lingkaran    : {luas_lingkaran}")
  141.     print(f"Keliling Lingkaran: {keliling_lingkaran}\n")
  142.    
  143.     print(f"Tekan Enter Untuk Kembali :")
  144.     input()
  145. #=================================================================================
  146.  
  147.  
  148.  
  149. #Program 5========================================================================
  150. def program_5():
  151.  
  152.     os.system('cls' if os.name == 'nt' else 'clear')
  153.    
  154.     print("===========Program 5===========")
  155.    
  156.     # Menerima input kecepatan (V1, V2, V3) dari pengguna
  157.     kecepatan1 = float(input("Masukkan kecepatan pertama (V1): "))
  158.     kecepatan2 = float(input("Masukkan kecepatan kedua (V2): "))
  159.     kecepatan3 = float(input("Masukkan kecepatan ketiga (V3): "))
  160.  
  161.     # Menerima input waktu tempuh (T1, T2, T3) dari pengguna
  162.     waktu_tempuh1 = float(input("Masukkan waktu tempuh pertama (T1): "))
  163.     waktu_tempuh2 = float(input("Masukkan waktu tempuh kedua (T2): "))
  164.     waktu_tempuh3 = float(input("Masukkan waktu tempuh ketiga (T3): "))
  165.  
  166.     # Menghitung jarak tempuh (S1, S2, S3)
  167.     jarak_tempuh1 = kecepatan1 * waktu_tempuh1
  168.     jarak_tempuh2 = kecepatan2 * waktu_tempuh2
  169.     jarak_tempuh3 = kecepatan3 * waktu_tempuh3
  170.  
  171.     # Menghitung rata-rata jarak tempuh (Rata_jarak)
  172.     rata_jarak = (jarak_tempuh1 + jarak_tempuh2 + jarak_tempuh3) / 3
  173.  
  174.     # Menampilkan hasil perhitungan
  175.     print(f"")
  176.     print(f"==================[Hasil Jarak Tempuh]==================")
  177.     print(f"Jarak Tempuh 1: {jarak_tempuh1}")
  178.     print(f"Jarak Tempuh 2: {jarak_tempuh2}")
  179.     print(f"Jarak Tempuh 3: {jarak_tempuh3}")
  180.     print(f"Rata-rata Jarak Tempuh: {rata_jarak}\n")
  181.    
  182.     print(f"Tekan Enter Untuk Kembali :")
  183.     input()
  184. #=================================================================================
  185.  
  186.  
  187.  
  188. #Program 6========================================================================
  189. def program_6():
  190.     os.system('cls' if os.name == 'nt' else 'clear')
  191.    
  192.     print("===========Program 6===========")
  193.        
  194.     # Menerima input bilangan integer dari pengguna
  195.     X = int(input("Masukkan sebuah bilangan integer (X): "))
  196.  
  197.     # Analisis kategori bilangan
  198.     if X > 0 and X % 2 == 0:
  199.         kategori = "Bilangan Genap Positif"
  200.     elif X < 0 and X % 2 == 0:
  201.         kategori = "Bilangan Genap Negatif"
  202.     elif X > 0 and X % 2 != 0:
  203.         kategori = "Bilangan Ganjil Positif"
  204.     elif X < 0 and X % 2 != 0:
  205.         kategori = "Bilangan Ganjil Negatif"
  206.     else:
  207.         kategori = "Nol"
  208.  
  209.     # Menampilkan hasil analisis
  210.     print(f"")
  211.     print(f"==================Hasil==================")
  212.     print(f"Analisis Bilangan: {kategori}\n")
  213.    
  214.     print(f"Tekan Enter Untuk Kembali :")
  215.     input()
  216. #=================================================================================
  217.  
  218.  
  219.  
  220. #Program 7========================================================================
  221. def program_7():
  222.    
  223.     os.system('cls' if os.name == 'nt' else 'clear')
  224.    
  225.     print("===========Program 7===========")
  226.    
  227.     # Mendapatkan tanggal dan waktu saat ini
  228.     tanggal_waktu_sekarang = datetime.datetime.now()
  229.     hari = tanggal_waktu_sekarang.strftime("%A")
  230.     tanggal = tanggal_waktu_sekarang.strftime("%x")
  231.     waktu = tanggal_waktu_sekarang.strftime("%X")
  232.  
  233.     # Menerima input jumlah pembelian dalam Rp.
  234.     jumlah_pembelian = float(input("Masukkan jumlah pembelian dalam Rp.: "))
  235.  
  236.     # Menerima input jenis konsumen (1 untuk pelanggan, 2 untuk non-pelanggan)
  237.     jenis_konsumen = int(input("Masukkan jenis konsumen (1. Pelanggan; 2. Non-pelanggan): "))
  238.  
  239.     # Inisialisasi potongan dan cashback
  240.     potongan = 0
  241.     cashback = 0
  242.  
  243.     # Menghitung potongan untuk pelanggan
  244.     if jenis_konsumen == 1:
  245.         potongan = 0.10 * jumlah_pembelian
  246.  
  247.     # Menghitung cashback
  248.     cashback = int(jumlah_pembelian / 1000000) * 30000
  249.  
  250.     # Menghitung total pembayaran setelah potongan dan cashback
  251.     total_pembayaran = jumlah_pembelian - potongan + cashback
  252.  
  253.     # Menampilkan hasil transaksi
  254.     print(f"\n===== Struk Pembayaran =====")
  255.     print(f"Hari               : {hari}")
  256.     print(f"Tanggal            : {tanggal}")
  257.     print(f"Waktu              : {waktu}")
  258.     print(f"Jumlah Pembelian   : Rp. {jumlah_pembelian:,.2f}")
  259.     print(f"Potongan           : Rp. {potongan:,.2f}")
  260.     print(f"Cashback           : Rp. {cashback:,.2f}")
  261.     print(f"Total Pembayaran   : Rp. {total_pembayaran:,.2f}")
  262.     print("============================\n")
  263.    
  264.     print(f"Tekan Enter Untuk Kembali :")
  265.     input()
  266. #=================================================================================
  267.  
  268.  
  269.  
  270. #Program 8========================================================================
  271. def program_8():
  272.    
  273.     os.system('cls' if os.name == 'nt' else 'clear')
  274.    
  275.     print("===========Program 8===========")
  276.    
  277.     # Menerima input bilangan integer dari pengguna
  278.     X = int(input("Masukkan sebuah bilangan integer (0 s/d 9): "))
  279.    
  280.     # Menampilkan tulisan teks bilangan
  281.     if 0 <= X <= 9:
  282.         if X == 0:
  283.             print("nol")
  284.         elif X == 1:
  285.             print("satu")
  286.         elif X == 2:
  287.             print("dua")
  288.         elif X == 3:
  289.             print("tiga")
  290.         elif X == 4:
  291.             print("empat")
  292.         elif X == 5:
  293.             print("lima")
  294.         elif X == 6:
  295.             print("enam")
  296.         elif X == 7:
  297.             print("tujuh")
  298.         elif X == 8:
  299.             print("delapan")
  300.         elif X == 9:
  301.             print("sembilan")
  302.     else:
  303.         print("")
  304.         print("---------------------------------")
  305.         print("Salah entri: ketik bilangan 0..9")
  306.        
  307.     print(f"\nTekan Enter Untuk Kembali :")
  308.     input()
  309. #=================================================================================
  310.  
  311.  
  312.  
  313. #Program 9========================================================================
  314. def program_9():
  315.  
  316.     os.system('cls' if os.name == 'nt' else 'clear')
  317.  
  318.     print("===========Program 9===========")
  319.    
  320.     # Input nilai UTS, UAS, TUGAS, dan KEHADIRAN
  321.     UTS = float(input("Masukkan nilai UTS (0-100): "))
  322.     UAS = float(input("Masukkan nilai UAS (0-100): "))
  323.     TUGAS = float(input("Masukkan nilai TUGAS (0-100): "))
  324.     KEHADIRAN = float(input("Masukkan nilai KEHADIRAN (0-16): "))
  325.  
  326.     # Hitung KEHADIRAN
  327.     KEHADIRAN = (KEHADIRAN / 16) * 100
  328.  
  329.     # Hitung Nilai Akhir (NA)
  330.     NA = (0.3 * UTS) + (0.4 * UAS) + (0.2 * TUGAS) + (0.1 * KEHADIRAN)
  331.  
  332.     # Tentukan Indeks Mutu (IM) berdasarkan Nilai Akhir (NA)
  333.     if 0 <= NA <= 100:
  334.         if NA > 80:
  335.             IM = 'nilai A'
  336.         elif NA > 65:
  337.             IM = 'nilai B'
  338.         elif NA > 50:
  339.             IM = 'nilai C'
  340.         elif NA > 40:
  341.             IM = 'nilai D'
  342.         else:
  343.             IM = 'nilai E'
  344.     else:
  345.         IM = 'Salah nilai'
  346.  
  347.     # Tampilkan Nilai Akhir dan Indeks Mutu
  348.     print("===========================")
  349.     print(f"Nilai Akhir (NA)    : {NA:.2f}")
  350.     print(f"Indeks Mutu (IM)    : {IM}")
  351.     print("===========================")
  352.    
  353.     print(f"\nTekan Enter Untuk Kembali :")
  354.     input()
  355. #=================================================================================
  356.  
  357.  
  358.  
  359. #Program 10========================================================================
  360. def program_10():
  361.    
  362.     os.system('cls' if os.name == 'nt' else 'clear')
  363.    
  364.     print("===========Program 10===========")
  365.    
  366.     # Menerima input dua bilangan bulat AWAL dan AKHIR dari pengguna
  367.     AWAL = int(input("Masukkan bilangan AWAL: "))
  368.     AKHIR = int(input("Masukkan bilangan AKHIR: "))
  369.  
  370.     # Periksa apakah AWAL lebih kecil dari AKHIR
  371.     if AWAL >= AKHIR:
  372.         print("AWAL harus kurang dari AKHIR.")
  373.         return
  374.  
  375.     # Mencetak semua bilangan dari AWAL hingga AKHIR
  376.     print("Deret bilangan dari", AWAL, "sampai", AKHIR, ":")
  377.     for i in range(AWAL, AKHIR + 1):
  378.         print(i)
  379.        
  380.     print(f"\nTekan Enter Untuk Kembali :")
  381.     input()
  382. #=================================================================================
  383.  
  384. #Program 11=======================================================================
  385. def program_11():
  386.    
  387.     UMenu.display_menu()
  388.  
  389. def program_12():
  390.     print("Program 12")
  391.     input()
  392.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement