fork download
  1. #include <iostream>
  2. #include <vector>
  3. using namespace std;
  4.  
  5. int main() {
  6. int N, M; // N = jumlah pendonor, M = jumlah desa
  7.  
  8. cout << "Masukkan jumlah pendonor DDS (1 - 1000): ";
  9. cin >> N;
  10. cout << "Masukkan jumlah desa (1 - 10): ";
  11. cin >> M;
  12.  
  13. // Membuat vektor 2D: M desa, masing-masing punya 4 kolom (golongan darah A, B, AB, O)
  14. vector<vector<int>> pendonor(M, vector<int>(4, 0));
  15.  
  16. cout << "Masukkan kode desa, golongan darah (1-4), dan volume darah (0-500 ml): " << endl;
  17.  
  18. for (int i = 0; i < N; i++) {
  19. int kodeDesa, golonganDarah, volumeDarah;
  20. cin >> kodeDesa >> golonganDarah >> volumeDarah;
  21. pendonor[kodeDesa - 1][golonganDarah - 1]++; // Tambahkan jumlah pendonor di desa dan golongan darah sesuai input
  22. }
  23.  
  24. cout << "\nBerikut banyaknya pendonor pada masing-masing desa: " << endl;
  25. for (int i = 0; i < M; i++) {
  26. int totalPendonor = 0;
  27. for (int j = 0; j < 4; j++) {
  28. totalPendonor += pendonor[i][j];
  29. }
  30. cout << "Desa " << i + 1 << ": " << totalPendonor << " Pendonor" << endl;
  31. }
  32.  
  33. return 0;
  34. }
  35.  
Success #stdin #stdout 0s 5316KB
stdin
8
3
3 1 150
1 2 250
3 1 300
1 3 450
2 2 200
3 4 350
1 4 500
3 1 500
stdout
Masukkan jumlah pendonor DDS (1 - 1000): Masukkan jumlah desa (1 - 10): Masukkan kode desa, golongan darah (1-4), dan volume darah (0-500 ml): 

Berikut banyaknya pendonor pada masing-masing desa: 
Desa 1: 3 Pendonor
Desa 2: 1 Pendonor
Desa 3: 4 Pendonor