Advertisement
Guest User

2.5

a guest
Apr 4th, 2020
151
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.84 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <limits.h>
  4. #define SIZE 5
  5.  
  6. //algorytm posiada zlozonosc O(n^2)
  7. void findMinimialDifference(int tab[], int n){
  8.  
  9.    int difference =0;
  10.  
  11.    int sum1 =0, sum2 = 0;
  12.    int i,j,k;
  13.    int current_result = INT_MAX;
  14.    int savedIndex =0;
  15.  
  16.    for(i=0; i<n; i++) {
  17.         for(j=0; j<=i; j++) {
  18.            sum1+= tab[j];
  19.         }
  20.  
  21.         for(k=j; k<n; k++ ){
  22.             sum2+= tab[k];
  23.         }
  24.  
  25.        if(abs(sum1-sum2) < current_result) {
  26.             current_result = abs(sum1-sum2);
  27.             savedIndex= i;
  28.        }
  29.         sum1 =0;
  30.         sum2 =0;
  31.    }
  32.  
  33. printf("\Minimalna roznica wynosi = %d\n", current_result);
  34. printf("Wyszukana wartosc: i= %d\n" , savedIndex);
  35. }
  36.  
  37.  
  38. int main()
  39. {
  40.  
  41.    int a[SIZE] = {1,2,3,4,5};
  42.    findMinimialDifference(a,SIZE);
  43.  
  44.     return 0;
  45. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement