#include #include #include int Pow(int TWO,int M) { int Product=1,i; for(i=0;i= 0 && a[j] > value; --j) a[j + 1] = a[j]; a[j + 1] = value; } } int loga2(int x ) { int ans = 0 ; while( x>>=1 ) ans++; return ans ; } int enterData(int dest[]) { FILE *fr; int i=0; if((fr=fopen("wartosci.txt","r"))==NULL)printf("Blad odczytu."); while(!feof(fr)){ fscanf(fr,"%d ",&dest[i]); i++; } fclose(fr); return i; } int sumuj(int arr[],int N) { int i,suma=0; for(i=0;i23) { mieszaj(wskArr,N); wezPierwsze(wskArr,wskMn,23); insertSort(wskArr,N); insertSort(wskMn,23); wskArr=wskMn; stab=sumuj(wskArr,23); N=23; } else { insertSort(wskArr,N); stab=sumuj(wskArr,N); } Sleep(100); min=5000; printf("Wczytano %d przedmiotow o wartosci %d.\n",N,stab); printf("Podaj cene: "); scanf("%d",&cena); for(j=Pow(2,N)-1;j>0;j--){ //procent=100-(((float)j)/((float)Pow(2,N)-1))*100; //printf("%.0f%%%\r",procent); k=j; p=0; while(k>0){ if(k%2==1) { suma+=wskArr[p]; tab2[n]=wskArr[p]; n++; } k=k/2; p++; } if(suma>=cena){ if(suma\t%d\n",suma1); wskArr=wsk; N=nZ; printf("\n"); printf("Czy usunac %d wartosci?\n",n1);fflush(stdin); c=getchar(); if(c!='n'){ usun(wskArr,wynik,N); printf("*Usuwanie zakonczone.\n"); Sleep(1000); system("cls"); } else{ system("cls"); Sleep(100); } } }