fork download
  1. #include <stdio.h>
  2. #include <string.h>
  3.  
  4. // Struktur untuk menyimpan data teman
  5. typedef struct {
  6. char nama[50];
  7. int target;
  8. int pencapaian;
  9. float prediksi;
  10. } Teman;
  11.  
  12. // Fungsi untuk menghitung prediksi
  13. float hitungPrediksi(int pencapaian, int target, int sisaWaktu, int waktuLalu) {
  14. // Asumsi: Linear growth
  15. float laju = (float)pencapaian / waktuLalu;
  16. float prediksi = pencapaian + laju * sisaWaktu;
  17.  
  18. // Batasi prediksi agar tidak melebihi target
  19. if (prediksi > target) {
  20. prediksi = target;
  21. }
  22.  
  23. return prediksi;
  24. }
  25.  
  26. int main() {
  27. // Data teman-teman
  28. Teman teman[] = {
  29. {"Boro", 100, 60, 0.0},
  30. {"Toni", 120, 70, 0.0},
  31. {"Siti", 150, 90, 0.0}
  32. };
  33. int jumlahTeman = sizeof(teman) / sizeof(teman[0]);
  34.  
  35. // Waktu yang sudah berjalan dan sisa waktu
  36. int waktuLalu = 3; // Misalnya, 3 bulan
  37. int sisaWaktu = 2; // Misalnya, 2 bulan lagi
  38.  
  39. // Hitung dan tampilkan prediksi
  40. printf("Prediksi Pencapaian Target:\n");
  41. for (int i = 0; i < jumlahTeman; i++) {
  42. teman[i].prediksi = hitungPrediksi(teman[i].pencapaian, teman[i].target, sisaWaktu, waktuLalu);
  43. printf("%s: Target = %d, Pencapaian = %d, Prediksi = %.2f\n",
  44. teman[i].nama, teman[i].target, teman[i].pencapaian, teman[i].prediksi);
  45. }
  46.  
  47. return 0;
  48. }
Success #stdin #stdout 0.01s 5304KB
stdin
37
100
stdout
Prediksi Pencapaian Target:
Boro: Target = 100, Pencapaian = 60, Prediksi = 100.00
Toni: Target = 120, Pencapaian = 70, Prediksi = 116.67
Siti: Target = 150, Pencapaian = 90, Prediksi = 150.00