Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- int column_statistics(const int *ptr, int width, int height, int column_id, int *max, int *min, float *avg)
- { //tab[wiersze][kolumny]
- //dla kolumn:
- int j;
- *max = *(ptr + column_id);
- *min = *(ptr + column_id);
- for (j = 0; j < height; j++)
- {
- int current = *(ptr + column_id+width*j);
- *avg += current;
- if (*max < current)
- {
- *max = current;
- }
- if (*min > current)
- {
- *min = current;
- }
- }
- *avg /= height;
- printf("kolumna: %d srednia: %f, max: %d, min: %d\n", column_id, *avg, *max, *min);
- return 1;
- }
- int row_statistics(const int *ptr, int width, int height, int row_id, int *max, int *min, float *avg)
- {
- int i;
- // init max and min to first element of each row
- *max = *(ptr + row_id * width);
- *min = *(ptr + row_id * width);
- for (i = 0; i<width; ++i)
- {
- int current = *(ptr + (row_id*width) + i);
- *avg += current;
- if(*max < current)
- {
- *max = current;
- }
- if(*min > current)
- {
- *min = current;
- }
- }
- *avg /= width;
- printf("rzad: %d srednia: %f, max: %d, min: %d\n", row_id, *avg, *max, *min);
- return 1;
- }
- int main() {
- printf("Podaj macierz:\n");
- int i = 5, j = 5;
- int tab[25] = { 0 };
- float avg = 0;
- int k; // iterator
- for (k = 0; k<i*j; ++k)
- scanf("%d", &tab[k]);
- int min = 0, max = 0;
- for (k = 0; k<5; ++k) //k jest id analizowanego rzedu
- {
- avg = 0.0f;
- row_statistics(tab, j, i, k, &max, &min, &avg);
- }
- for (k = 0; k<5; ++k) //k jest id analizowanej kolumny
- {
- avg = 0.0f;
- column_statistics(tab, j, i, k, &max, &min, &avg);
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement