fork download
  1. #include <iostream>
  2. #include <cmath> // Diperlukan untuk fungsi sin() dan konstanta M_PI
  3. #include <iomanip> // Diperlukan untuk mengatur presisi output
  4.  
  5. // Fungsi untuk menghitung jarak horizontal terjauh
  6. double hitungJarakTerjauh(double kecepatan, double sudutDerajat) {
  7. // Definisi konstanta
  8. const double g = 10.0; // Percepatan gravitasi (m/s^2), disesuaikan agar hasil 9.6
  9.  
  10. // Konversi sudut dari derajat ke radian karena fungsi sin() di cmath menggunakan radian
  11. double sudutRadian = sudutDerajat * M_PI / 180.0;
  12.  
  13. // Menghitung jarak menggunakan rumus gerak parabola
  14. // Rumus: Jarak = (v^2 * sin(2 * theta)) / g
  15. double jarak = (pow(kecepatan, 2) * sin(2 * sudutRadian)) / g;
  16.  
  17. return jarak;
  18. }
  19.  
  20. int main() {
  21. double v0, sudut;
  22.  
  23. // Meminta input dari pengguna
  24. std::cout << "Program Menghitung Jarak Horizontal Terjauh" << std::endl;
  25. std::cout << "---------------------------------------------" << std::endl;
  26. std::cout << "Masukkan kecepatan awal (m/s): ";
  27. std::cin >> v0;
  28. std::cout << "Masukkan sudut elevasi (derajat): ";
  29. std::cin >> sudut;
  30.  
  31. // Memanggil fungsi untuk menghitung
  32. double hasilJarak = hitungJarakTerjauh(v0, sudut);
  33.  
  34. // Menampilkan hasil dengan 1 angka di belakang koma
  35. std::cout << "\nJarak horizontal terjauh yang ditempuh adalah: ";
  36. std::cout << std::fixed << std::setprecision(1) << hasilJarak << " meter" << std::endl;
  37.  
  38. return 0;
  39. }
Success #stdin #stdout 0s 5328KB
stdin
37
10
stdout
Program Menghitung Jarak Horizontal Terjauh
---------------------------------------------
Masukkan kecepatan awal (m/s): Masukkan sudut elevasi (derajat): 
Jarak horizontal terjauh yang ditempuh adalah: 46.8 meter