#include #include int main(void) { int n; int *p; int tmp; int i, j; double med; do { scanf("%d", &n); } while (n < 1 || n > 1000); p = malloc(n * sizeof(int)); if (p == NULL) printf("記憶域の確保に失敗しました。"); else { for (i = 0; i < n; i++) do { scanf("%d", &p[i]); } while (p[i] < -1000 || p[i] > 1000); } j = n; do { for (i = 0; i < j - 1; i++) { if (p[i] > p[i + 1]) { tmp = p[i]; p[i] = p[i + 1]; p[i + 1] = tmp; } } } while (j--); if (n % 2) { med = (double)p[n / 2]; } else med = (((double)p[n / 2 - 1] + (double)p[n / 2]) / 2); printf("%.1f\n", med); free(p); return 0; }