fork download
  1. #include <stdio.h>
  2.  
  3. int main() {
  4. // 画素値データ(260個)
  5. int data[] = {
  6. 21,10,40,76,48,30,10,11,27,23,21,27,32,8,0,2,6,4,17,25,
  7. 17,11,74,59,32,50,17,15,23,17,13,55,55,48,23,0,2,2,8,6,
  8. 13,8,11,13,15,21,15,21,21,6,13,86,86,76,82,44,4,4,6,4,
  9. 11,6,2,10,10,10,19,19,2,11,78,78,84,74,74,69,69,6,4,4,
  10. 2,6,4,10,11,11,17,11,10,86,86,80,80,65,67,69,82,6,2,4,
  11. 2,8,4,11,13,15,21,8,86,84,78,82,78,76,69,82,21,2,0,2,
  12. 13,17,15,13,6,6,13,15,89,91,86,84,88,88,82,65,21,19,25,25,
  13. 19,27,32,29,21,21,57,44,89,91,86,88,91,84,88,19,15,11,6,0,
  14. 27,29,32,32,29,13,10,25,55,88,88,88,91,91,88,48,10,8,0,0,
  15. 19,27,30,30,19,21,30,21,25,70,55,74,89,53,17,21,13,38,8,0,
  16. 21,30,34,34,25,19,17,8,6,6,10,8,6,4,10,11,10,23,4,0,
  17. 21,29,32,38,36,19,8,13,13,19,13,13,6,4,10,10,8,2,2,2,
  18. 15,27,30,32,23,8,8,13,25,29,19,17,13,8,15,15,11,6,4,4
  19. };
  20.  
  21. int histogram[10] = {0};
  22. int length = sizeof(data) / sizeof(data[0]);
  23.  
  24. // ヒストグラムの集計処理
  25. for (int i = 0; i < length; i++) {
  26. int index = data[i] / 10;
  27. if (index > 9) index = 9; // 保険:最大値99までとする
  28. histogram[index]++;
  29. }
  30.  
  31. // 結果の出力
  32. for (int i = 0; i < 10; i++) {
  33. printf("h(%d0-%d9): %d\n", i, i, histogram[i]);
  34. }
  35.  
  36. return 0;
  37. }
  38.  
Success #stdin #stdout 0.01s 5316KB
stdin
Standard input is empty
stdout
h(00-09): 65
h(10-19): 72
h(20-29): 38
h(30-39): 18
h(40-49): 6
h(50-59): 8
h(60-69): 7
h(70-79): 12
h(80-89): 29
h(90-99): 5