Assalamualaikum.
Pada kesempatan kali ini saya ingin sedikit berbagi tentang bahasa pemrograman Go, kali ini saya membuat program perhitungan, program perhitungan ini menangani 11 masalah perhitungan, yaitu :
Hitung Luas Persegi
Hitung Luas Segitiga
Hitung Luas Lingkaran
Hitung Sudut Sinus, Cosinus, dan Tangen
Hitung Gerak Lurus Beraturan
Hitung Gerak Lurus Berubah Beraturan
Hitung Energi Potensial dan Energi Kinetik
Hitung Frekuensi Getaran
Hitung Massa Jenis
Hitung Daya, Tekanan, Usaha, dan Gaya
Hitung Konversi Suhu
dikarenakan perhitungan yang banyak maka perhitungan tersebut di pisah dengan fungsi masing-masing dan di kelompokkan sesuai dengan 11 poin diatas, untuk mempermudah menggunakannya ke sebelas fungsi tersebut akan di panggil oleh fungsi main dengan menggunakan metode case.
untuk lebih lanjut kita langsung saja bahas source codenya
Fungsi main
Fungsi main adalah fungsi utama yang akan di jalakan pertama kali ketika program di run, fungsi ini berguna untuk memanggil fungsi-fungsi yang di jabarkan pada poin-poin di atas, fungsi tersebut akan di jalankan apabila user menginputkan nomor fungsi tersebut dan secara otomatis program akan masuk pada fungsi yang di inputkan oleh user.
package main
import "fmt"
func main() {
var a int
fmt.Println(" 1. Luas Persegi")
fmt.Println(" 2. Luas Segitiga")
fmt.Println(" 3. Luas Lingkaran")
fmt.Println(" 4. Sudut Sinus, Cosinus, Tangen")
fmt.Println(" 5. Gerak Lurus Beraturan")
fmt.Println(" 6. Gerak Lurus Berubah Beraturan")
fmt.Println(" 7. Energi Potensial dan Energi Kinetik")
fmt.Println(" 8. Frekuensi Getaran")
fmt.Println(" 9. Massa Jenis")
fmt.Println("10. Daya, Tekanan, Usaha, dan Gaya")
fmt.Println("11. Konversi Suhu \n")
fmt.Printf("Masukkan Pilihan : ")
fmt.Scanf("%d", &a)
switch a{
case 1 : Luas_Persegi()
case 2 : Luas_Segitiga()
case 3 : Luas_Lingkaran()
case 4 : Sudut_Sinus_Cosinus_Tangen()
case 5 : Gerak_Lurus_Beraturan()
case 6 : Gerak_Lurus_Berubah_Beraturan()
case 7 : Energi_Potensial_Energi_Kinetik()
case 8 : Frekuensi_Getaran()
case 9 : Massa_Jenis()
case 10 : Daya_Tekanan_Usaha_Gaya()
case 11 : Konversi_suhu()
default : main()
}
}
Fungsi Luas_Persegi
Fungsi Luas Persegi Berfungsi untuk menghitung luas dari persegi, user dinimta untuk menginputkan panjang sisi dari persegi dan program akan mengitung Luas dari persegi tersebut.
func Luas_Persegi(){
var sisi float64
fmt.Printf("Masukkan Panjang Sisi = ")
fmt.Scanf("%f", &sisi)
fmt.Println("Hasil =", sisi*sisi)
}
Fungsi Luas_Segitiga
Fungsi Luas Segitiga memiliki fungsi untuk menghitung luas dari segitiga, user dimintata untuk menginputkan nilai Alas dan Tinggi dari Segitiga dan program akan mengitung Luas dari Segitiga tersebut dan menampilkan hasilnya ke layar.
func Luas_Segitiga(){
var (
alas, tinggi float64
)
fmt.Printf("Masukkan Nilai Alas Segitiga = ")
fmt.Scanf("%f", &alas)
fmt.Printf("Masukkan Nilai Tinggi Segitiga = ")
fmt.Scanf("%f", &tinggi)
fmt.Println("Hasil =", alas*tinggi/2)
}
Fungsi Luas_Lingkaran
Fungsi Luas Lingkaran memiliki fungsi untuk menghitung luas dari Lingkaran, user dinimta untuk menginputkan nilai jari-jari dari lingkaran yang akan di hitung luasnya dan program akan mengitung Luas dari lingkaran tersebut lalu menampilkannya ke layar.
func Luas_Lingkaran(){
var (
jari_jari float64
)
fmt.Printf("Masukkan Nilai Jari-jari = ")
fmt.Scanf("%f", &jari_jari)
fmt.Println("Luas Lingkaran =", (22.0/7.0)*jari_jari*jari_jari)
}
Fungsi Sudut_Sinus_Cosinus_Tangen
Fungsi Sudut Sinus Cosinus dan Tangen memiliki fungsi untuk menghitung
Sinus Cosinus dan Tangen
dari Segitiga siku-siku, user dinimta untuk menginputkan nilai alas, tinggi, dan miring dari Segitiga siku-siku dan program akan mengitung sinus, cosinus, dan tangen dari segitiga tersebut dan menampilkannnya di layar.
func Sudut_Sinus_Cosinus_Tangen(){
var (
alas, tinggi, miring float64
)
fmt.Printf("Masukkan Nilai Alas : ")
fmt.Scanf("%f",&alas)
fmt.Printf("Masukkan Nilai Tinggi : ")
fmt.Scanf("%f",&tinggi)
fmt.Printf("Masukkan Nilai Miring : ")
fmt.Scanf("%f",&miring)
hasil_sin := tinggi / miring
hasil_cos := alas / miring
hasil_tan := tinggi / alas
fmt.Printf("Nilai sin = %.2f \n", hasil_sin)
fmt.Printf("Nilai cos = %.2f \n", hasil_cos)
fmt.Printf("Nilai ntan = %.2f \n", hasil_tan)
}
Fungsi Gerak_Lurus_Beraturan
Fungsi Gerak Lurus Beraturan Berfungsi untuk memanggil fungsi yang mengitung kecepatan atau jarak atau waktu dari gerak lurus beraturan, untuk mengetahui lebih lanjut lihat fungsi glb_kecepatan, glb_jarak dan glb_waktu di bawah
func Gerak_Lurus_Beraturan(){
var glb int
fmt.Println("Data yang Dicari : ")
fmt.Println("\t1. Kecepatan")
fmt.Println("\t2. Jarak")
fmt.Println("\t3. Waktu \n")
fmt.Printf("Masukkan Pilihan : ")
fmt.Scanf("%d", &glb)
switch glb{
case 1 : glb_kecepatan()
case 2 : glb_jarak()
case 3 : glb_waktu()
default : Gerak_Lurus_Beraturan()
}
}
Fungsi glb_kecepatan
Fungsi glb_kecepatan Berfungsi untuk menghitung kecepatan dari gerak lurus beraturan, user dinimta untuk menginputkan waktu dan Perpindahan, setelah di inputkan program akan mengitung kecepatan dari glb tersebut dan di tampilkan ke layar.
func glb_kecepatan(){
var (
waktu, jarak float64
)
fmt.Printf("Masukkan Nilai Waktu(dalam Sekon) = ")
fmt.Scanf("%f", &waktu)
fmt.Printf("Masukkan Nilai Jarak/Perpindahan(dalam Meter) = ")
fmt.Scanf("%f", &jarak)
fmt.Printf("Kecepatan yang di dapat adalah = %.2f m/s\n", jarak/waktu)
}
Fungsi glb_jarak
Fungsi glb_jarak memiliki fungsi yang sama dengan glb_kecepatan, tetapi perhitungan pada glb ini yang di cari adalah jarak.
func glb_jarak(){
var (
waktu, kecepatan float64
)
fmt.Printf("Masukkan Nilai kecepatan(dalam m/s) = ")
fmt.Scanf("%f", &kecepatan)
fmt.Printf("Masukkan Nilai Waktu(dalam Sekon) = ")
fmt.Scanf("%f", &waktu)
fmt.Printf("Jarak yang di dapat adalah = %.2f m\n", kecepatan*waktu)
}
Fungsi glb_waktu
Fungsi glb_jarak memiliki fungsi yang sama dengan glb_kecepatan dan glb jarak, namun perbedaannya perhitungan pada glb ini yang di cari adalah waktu
.
func glb_waktu(){
var (
jarak, kecepatan float64
)
fmt.Printf("Masukkan Nilai Nilai kecepatan(dalam m/s) = ")
fmt.Scanf("%f", &kecepatan)
fmt.Printf("Masukkan Nilai Jarak/Perpindahan(dalam Meter) = ")
fmt.Scanf("%f", &jarak)
fmt.Printf("Waktu yang di dapat adalah = %.2f s\n", kecepatan*jarak)
}
Fungsi Gerak_Lurus_Berubah
_Beraturan
Jika ada gerak lurus beraturan maka, kali ini da Fungsi Gerak Lurus Berubah Beraturanuntuk mencari jarak tempuh dari glbb tersebut.
func Gerak_Lurus_Berubah_Beraturan(){
var (
kec_awal, waktu, percepatan float64
)
fmt.Printf("Masukkan Kecepatam Awal = ")
fmt.Scanf("%f", &kec_awal)
fmt.Printf("Masukkan Waktu = ")
fmt.Scanf("%f", &waktu)
fmt.Printf("Masukkan Percepatan = ")
fmt.Scanf("%f", &percepatan)
hasil_percepatan := (kec_awal*waktu)+((percepatan/2.0)*(waktu*waktu))
fmt.Printf("Jarak Tempuhnya adalah = %.2f\n", hasil_percepatan)
}
Fungsi Energi_Potensial_Energi_Kinetik
Fungsi
Energi Potensial Energi Kinetik Berfungsi untuk memanggil fungsi Energi Kinetik dan Energi Potensial dengan fungsi masing2 perhitungan Energi
.
func Energi_Potensial_Energi_Kinetik(){
var epek int
fmt.Println("Data yang Dicari : ")
fmt.Println("\t1. Energi Potensial")
fmt.Println("\t2. Energi Kinetik\n")
fmt.Printf("Masukkan Pilihan : ")
fmt.Scanf("%d", &epek)
switch epek{
case 1 : EP()
case 2 : EK()
default : Energi_Potensial_Energi_Kinetik()
}
}
Fungsi EP
func EP(){
var (
m,g,h float64
)
fmt.Printf("Masukkan Nilai massa(kg) = ")
fmt.Scanf("%f", &m)
fmt.Printf("Masukkan Nilai Percepatan Gravitasi(m/s2) = ")
fmt.Scanf("%f", &g)
fmt.Printf("Masukkan Nilai Tinggi Benda Dari Permukaan Tanah(m) = ")
fmt.Scanf("%f", &h)
fmt.Printf("Energi Potensial dari benda tersebut adalah = %.2f Joule\n", m*g*h)
}
Fungsi EK
func EK(){
var (
m,v float64
)
fmt.Printf("Masukkan Nilai massa(kg) = ")
fmt.Scanf("%f", &m)
fmt.Printf("Masukkan Nilai Kecepatan Benda(m/s) = ")
fmt.Scanf("%f", &v)
fmt.Printf("Energi Kinetik dari benda tersebut adalah = %.2f Joule\n", (m*(v*v))/2)
}
Fungsi Getaran
Fungsi Getraan untuk mengitung getaran
.
func Frekuensi_Getaran(){
var (
jumlah_getaran,waktu float64
)
fmt.Printf("Masukkan Jumlah Getaran = ")
fmt.Scanf("%f", &jumlah_getaran)
fmt.Printf("Masukkan waktu(secon) = ")
fmt.Scanf("%f", &waktu)
fmt.Printf("Energi Kinetik dari benda tersebut adalah = %.2f Joule\n", jumlah_getaran/waktu)
}
Fungsi Massa_Jenis
func Massa_Jenis(){
var (
massa,volume,massa_jenis float64
)
fmt.Printf("Masukkan Nilai massa(dalam satuan g) = ")
fmt.Scanf("%f", &massa)
fmt.Printf("Masukkan Nilai volume(dalam satuan cm) = ")
fmt.Scanf("%f", &volume)
massa_jenis = massa/volume
fmt.Printf("Masa Jenis dari benda tersebut adalah = %.2f g/cm3\n", massa_jenis)
}
Fungsi Daya_Tekanan_Usaha_Gaya
func Daya_Tekanan_Usaha_Gaya(){
var dtug int
fmt.Println("Data yang Dicari : ")
fmt.Println("\t1. Daya")
fmt.Println("\t2. Tekanan")
fmt.Println("\t3. Usaha")
fmt.Println("\t4. Gaya\n")
fmt.Printf("Masukkan Pilihan : ")
fmt.Scanf("%d", &dtug)
switch dtug{
case 1 : Daya()
case 2 : Tekanan()
case 3 : Usaha()
case 4 : Gaya()
default : Energi_Potensial_Energi_Kinetik()
}
}
Fungsi Daya
func Daya(){
var (
w,t float64
)
fmt.Printf("Masukkan Nilai Usaha(Joule) = ")
fmt.Scanf("%f", &w)
fmt.Printf("Masukkan Nilai Waktu(Second) = ")
fmt.Scanf("%f", &t)
fmt.Printf("Gaya = %.2f Watt\n", w*t)
}
Fungsi Tekanan
func Tekanan(){
var (
f,a float64
)
fmt.Printf("Masukkan Nilai Gaya(Newton) = ")
fmt.Scanf("%f", &f)
fmt.Printf("Masukkan Nilai Luas Penampang(m2) = ")
fmt.Scanf("%f", &a)
fmt.Printf("Nilai Tekanan dari benda tersebut adalah = %.2f\n", f/a)
}
Fungsi Usaha
func Usaha(){
var (
f,s float64
)
fmt.Printf("Masukkan Nilai Gaya(newton) = ")
fmt.Scanf("%f", &f)
fmt.Printf("Masukkan Nilai Jarak(meter) = ")
fmt.Scanf("%f", &s)
fmt.Printf("Nilai dari Usaha adalah = %.2f Joule\n", f*s)
}
Fungsi Gaya
func Gaya(){
var (
m,g float64
)
fmt.Printf("Masukkan Nilai Massa Benda(kg) = ")
fmt.Scanf("%f", &m)
fmt.Printf("Masukkan Nilai Garvitasi Bumi(m/s2) = ")
fmt.Scanf("%f", &g)
fmt.Printf("Gaya Berat dari benda tersebut adalah = %.2f Joule\n", m*g)
}
Fungsi Konversi_suhu
func Konversi_suhu(){
var suhu int
fmt.Println("Data yang Dicari : ")
fmt.Println("\t1. Celsius")
fmt.Println("\t2. Kelvin")
fmt.Println("\t3. Farenheit")
fmt.Println("\t4. Reamur\n")
fmt.Printf("Masukkan Pilihan : ")
fmt.Scanf("%d", &suhu)
switch suhu{
case 1 : Celsius()
case 2 : Kelvin()
case 3 : Fahrenheit()
case 4 : Reamur()
default : Energi_Potensial_Energi_Kinetik()
}
}
Fungsi Celsius
func Celsius(){
var cel float64
fmt.Printf("Masukkan Nilai Celsius = ")
fmt.Scanf("%f", &cel)
fmt.Printf("Kelvin = %.2f\n", cel+273.15)
fmt.Printf("Fahrenheit = %.2f\n", cel*1.8+32)
fmt.Printf("Reamur = %.2f\n", cel*0.8)
}
Fungsi Kelvin
func Kelvin(){
var kelvin float64
fmt.Printf("Masukkan Nilai Kelvin = ")
fmt.Scanf("%f", &kelvin)
fmt.Printf("Celsius = %.2f\n", kelvin-273.15)
fmt.Printf("Fahrenheit = %.2f\n", kelvin*1.8-459.67)
fmt.Printf("Reamur = %.2f\n", (kelvin-273.15)*0.8)
}
Fungsi Fahrenheit
func Fahrenheit(){
var fahrenheit float64
fmt.Printf("Masukkan Nilai Fahrenheit = ")
fmt.Scanf("%f", &fahrenheit)
fmt.Printf("Celsius = %.2f\n", (fahrenheit-32)/1.8)
fmt.Printf("Kelvin = %.2f\n", (fahrenheit+459.67)/1.8)
fmt.Printf("Reamur = %.2f\n", (fahrenheit-32)*2.25)
}
Fungsi Reamur
func Reamur(){
var reamur float64
fmt.Printf("Masukkan Nilai Reamur = ")
fmt.Scanf("%f", &reamur)
fmt.Printf("Celsius = %.2f\n", reamur/0.8)
fmt.Printf("Kelvin = %.2f\n", reamur/0.8+273.15)
fmt.Printf("Fahrenheit = %.2f\n", reamur*2.25+32)
}
Mungkin segitu saja yang bisa saya bagi, semoga bermanfaat.
mantull min
obeng set 5 in 1