fork download
  1. #include <iostream>
  2. #include <cmath>
  3. #include <vector>
  4. #include <string>
  5.  
  6. using namespace std;
  7.  
  8. const double g = 9.8; // gravitasi
  9.  
  10. // Struktur untuk menyimpan data burung
  11. struct Burung {
  12. string nama;
  13. double kecepatan; // m/s
  14. double sudut_derajat; // derajat
  15. };
  16.  
  17. // Fungsi menghitung ketinggian maksimum
  18. double hitungKetinggianMaks(double kecepatan, double sudut_derajat) {
  19. double sudut_radian = sudut_derajat * M_PI / 180.0;
  20. return pow(kecepatan * sin(sudut_radian), 2) / (2 * g);
  21. }
  22.  
  23. int main() {
  24. int jumlahBurung;
  25.  
  26. cout << "Masukkan jumlah burung: ";
  27. cin >> jumlahBurung;
  28.  
  29. vector<Burung> burungList(jumlahBurung);
  30.  
  31. // Input data untuk setiap burung
  32. for (int i = 0; i < jumlahBurung; ++i) {
  33. cout << "\nBurung ke-" << i + 1 << ":" << endl;
  34. cout << "Nama burung: ";
  35. cin >> burungList[i].nama;
  36. cout << "Kecepatan awal (m/s): ";
  37. cin >> burungList[i].kecepatan;
  38. cout << "Sudut terbang (derajat): ";
  39. cin >> burungList[i].sudut_derajat;
  40. }
  41.  
  42. // Menampilkan hasil
  43. cout << "\n=== HASIL PREDIKSI KETINGGIAN MAKSIMUM ===\n";
  44. for (const auto& burung : burungList) {
  45. double h_max = hitungKetinggianMaks(burung.kecepatan, burung.sudut_derajat);
  46. cout << "Burung " << burung.nama << " -> Ketinggian maksimum: " << h_max << " meter\n";
  47. }
  48.  
  49. return 0;
  50. }
  51.  
Success #stdin #stdout 0s 5324KB
stdin
1
37
stdout
Masukkan jumlah burung: 
Burung ke-1:
Nama burung: Kecepatan awal (m/s): Sudut terbang (derajat): 
=== HASIL PREDIKSI KETINGGIAN MAKSIMUM ===
Burung 37 -> Ketinggian maksimum: 0 meter