// Parte 1, programa 3. Dibujen los marcos en cada punto que pide lab/README.md.
#include <stdio.h>

struct counter {
    int count;
    int last;
};

void fill(int *start, int n, int value) {
    for (int i = 0; i < n; i++) {
        *(start + i) = value;
    }
}

void record(struct counter *c, int value) {
    c->count = c->count + 1;
    c->last = value;
}

int main(void) {
    int data[5] = {1, 2, 3, 4, 5};
    struct counter c = {0, 0};

    fill(data + 1, 2, 7);

    int *p = data + 3;
    *p = *(p + 1) + p[-1];

    record(&c, data[3]);
    record(&c, *data);

    for (int i = 0; i < 5; i++) {
        printf("%d ", data[i]);
    }
    printf("\ncount = %d, last = %d\n", c.count, c.last);
    return 0;
}
