/***************************************************************** * Ovo delo zaštićeno je licencom Creative Commons CC BY-NC-ND 4.0 * (Attribution-NonCommercial-NoDerivatives 4.0 International License). * Za detalje pogledati LICENSE.TXT * Autori: Milena Vujosevic Janicic, Jovana Kovacevic, * Danijela Simic, Andjelka Zecevic, Aleksandra Kocic ******************************************************************/ #include <stdio.h> #include <stdlib.h> #define MAKS 100 /* Funkcija ucitava elemente niza dimenzije n. */ void ucitaj(int a[], int n) { int i; printf("Unesite elemente niza: "); for (i = 0; i < n; i++) scanf("%d", &a[i]); } /* Funkcija sabira elemenate niza od pozicije i do pozicije j. */ int zbir(int a[], int i, int j) { int k, rezultat = 0; /* Obilazak elemenata niza koji pripadaju zadatom opsegu. */ for (k = i; k <= j; k++) rezultat += a[k]; return rezultat; } int main() { /* Deklaracije potrebnih promenljivih. */ int n, i, j; int a[MAKS]; /* Ucitavanje dimenzije niza i provera ispravnosti ulaza. */ printf("Unesite dimenziju niza: "); scanf("%d", &n); if (n <= 0 || n > MAKS) { printf("Greska: neispravan unos.\n"); exit(EXIT_FAILURE); } /* Ucitavanje elemenata niza. */ ucitaj(a, n); /* Ucitavanje vrednosti granica i provera ispravnosti ulaza. */ printf("Unesite vrednosti za i i j: "); scanf("%d%d", &i, &j); if (i < 0 || j < 0 || i > n - 1 || j > n - 1 || i > j) { printf("Greska: neispravan unos.\n"); exit(EXIT_FAILURE); } /* Ispis rezultata. */ printf("Zbir je: %d", zbir(a, i, j)); exit(EXIT_SUCCESS); }