Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- Predmet: Namenski racunarski sistemi
- Zadatak 2, vezbe 2
- Autor: PR130-2021 Martin Muharemovic
- */
- #include <stdio.h>
- #include <stdlib.h>
- int *CalculateMinMax(char *);
- int main()
- {
- short n;
- int i;
- do
- {
- printf("Unesite broj clanova niza: ");
- scanf("%hd", &n);
- } while (n <= 0);
- char *buffer = (char *)malloc(sizeof(short) + n * sizeof(int));
- *buffer = n;
- for (i = sizeof(short); i < sizeof(short) + n * sizeof(int); i += sizeof(int))
- {
- printf("Unos %llu elementa niza: ", (i - sizeof(short)) / sizeof(int));
- scanf("%d", buffer + i);
- }
- int *ret = CalculateMinMax(buffer);
- printf("Najmanji element niza je %d, a najveci element niza je %d.", *ret, *(ret + sizeof(int)));
- free(ret);
- free(buffer);
- return EXIT_SUCCESS;
- }
- int *CalculateMinMax(char *buffer)
- {
- short n = *buffer;
- int i,
- *ret = (int *)malloc(2 * sizeof(int));
- int tmp = *(buffer + sizeof(short));
- /* TRAZENJE MINIMALNOG */
- for (i = sizeof(short) + sizeof(int); i < sizeof(short) + n * sizeof(int); i += sizeof(int))
- {
- if (*(buffer + i) < tmp)
- {
- tmp = *(buffer + i);
- }
- }
- *ret = tmp;
- /* TRAZENJE MAKSIMUMA */
- tmp = *(buffer + sizeof(short));
- for (i = sizeof(short) + sizeof(int); i < sizeof(short) + n * sizeof(int); i += sizeof(int))
- {
- if (*(buffer + i) > tmp)
- {
- tmp = *(buffer + i);
- }
- }
- *(ret + sizeof(int)) = tmp;
- return ret;
- }
Advertisement
Add Comment
Please, Sign In to add comment