fork download
  1. #include <stdio.h>
  2.  
  3. int main() {
  4. int N, M;
  5. int pendonor[10][4][2] = {{{0}}}; // [desa][gol_darah][jumlah dan volume]
  6.  
  7. printf("Masukkan jumlah pendonor (N): ");
  8. scanf("%d", &N);
  9. printf("Masukkan jumlah desa (M): ");
  10. scanf("%d", &M);
  11.  
  12. printf("Masukkan data (kode desa, golongan darah, volume darah ml):\n");
  13. for (int i = 0; i < N; i++) {
  14. int kodeDesa, golDarah, volume;
  15. scanf("%d %d %d", &kodeDesa, &golDarah, &volume);
  16.  
  17. if (kodeDesa >= 1 && kodeDesa <= M && golDarah >= 1 && golDarah <= 4) {
  18. pendonor[kodeDesa - 1][golDarah - 1][0]++;
  19. pendonor[kodeDesa - 1][golDarah - 1][1] += volume;
  20. } else {
  21. printf("Data tidak valid, input ulang.\n");
  22. i--;
  23. }
  24. }
  25.  
  26. for (int d = 0; d < M; d++) {
  27. printf("Desa %d:\n", d + 1);
  28. printf("Golongan A: %d pendonor, total volume %d ml\n", pendonor[d][0][0], pendonor[d][0][1]);
  29. printf("Golongan B: %d pendonor, total volume %d ml\n", pendonor[d][1][0], pendonor[d][1][1]);
  30. printf("Golongan AB: %d pendonor, total volume %d ml\n", pendonor[d][2][0], pendonor[d][2][1]);
  31. printf("Golongan O: %d pendonor, total volume %d ml\n", pendonor[d][3][0], pendonor[d][3][1]);
  32. printf("\n");
  33. }
  34.  
  35. return 0;
  36. }
  37.  
Success #stdin #stdout 0s 5324KB
stdin
8
3
3 1 150
1 2 250
3 1 300
1 3 450
2 2 200
3 4 350
1 4 500
2 1 500
stdout
Masukkan jumlah pendonor (N): Masukkan jumlah desa (M): Masukkan data (kode desa, golongan darah, volume darah ml):
Desa 1:
Golongan A: 0 pendonor, total volume 0 ml
Golongan B: 1 pendonor, total volume 250 ml
Golongan AB: 1 pendonor, total volume 450 ml
Golongan O: 1 pendonor, total volume 500 ml

Desa 2:
Golongan A: 1 pendonor, total volume 500 ml
Golongan B: 1 pendonor, total volume 200 ml
Golongan AB: 0 pendonor, total volume 0 ml
Golongan O: 0 pendonor, total volume 0 ml

Desa 3:
Golongan A: 2 pendonor, total volume 450 ml
Golongan B: 0 pendonor, total volume 0 ml
Golongan AB: 0 pendonor, total volume 0 ml
Golongan O: 1 pendonor, total volume 350 ml