#include <stdio.h>
#define TABSIZE 3
double sum_tab(double tab[], size_t len);
void print_tab(double tab[], size_t len);
int main(void) {
double X = 100;
double sr = X/TABSIZE;
double tab_1[TABSIZE] = {0, 0, 0};
double tab_2[TABSIZE];
double suma = sum_tab(tab_1, TABSIZE);
//if(suma == 0.0) { suma = 1; }
for(size_t i=0;i<TABSIZE;++i) { tab_2[i] = tab_1[i]; }
for(size_t i=0;i<TABSIZE;++i) { tab_2[i] = tab_2[i] * sr==0.0?1:sr; }
double suma_tab_2 = sum_tab(tab_2, TABSIZE);
double n = X/suma_tab_2;
for(size_t i=0;i<TABSIZE;++i) { tab_2[i] = tab_2[i] * n; }
print_tab(tab_1, TABSIZE);
print_tab(tab_2, TABSIZE);
printf("X = %5.5f\nsuma tablicy = %5.5f\n", X
, sum_tab
(tab_2
, TABSIZE
)); return 0;
}
double sum_tab(double tab[], size_t len) {
double sum = 0;
for(size_t i=0;i<len;++i) { sum += tab[i]; }
return sum;
}
void print_tab(double tab[], size_t len) {
for(size_t i=0;i<len;++i) {
if((i
%5) == 4) { printf("\n"); } }
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgojZGVmaW5lIFRBQlNJWkUgMwoKZG91YmxlIHN1bV90YWIoZG91YmxlIHRhYltdLCBzaXplX3QgbGVuKTsKdm9pZCBwcmludF90YWIoZG91YmxlIHRhYltdLCBzaXplX3QgbGVuKTsKCmludCBtYWluKHZvaWQpIHsKCWRvdWJsZSBYID0gMTAwOwoJZG91YmxlIHNyID0gWC9UQUJTSVpFOwoJZG91YmxlIHRhYl8xW1RBQlNJWkVdID0gezAsIDAsIDB9OwoJZG91YmxlIHRhYl8yW1RBQlNJWkVdOwoJCglkb3VibGUgc3VtYSA9IHN1bV90YWIodGFiXzEsIFRBQlNJWkUpOwoJLy9pZihzdW1hID09IDAuMCkgeyBzdW1hID0gMTsgfQoJCglmb3Ioc2l6ZV90IGk9MDtpPFRBQlNJWkU7KytpKSB7IHRhYl8yW2ldID0gdGFiXzFbaV07IH0KCWZvcihzaXplX3QgaT0wO2k8VEFCU0laRTsrK2kpIHsJdGFiXzJbaV0gPSB0YWJfMltpXSAqIHNyPT0wLjA/MTpzcjsgfQoJZG91YmxlIHN1bWFfdGFiXzIgPSBzdW1fdGFiKHRhYl8yLCBUQUJTSVpFKTsKCWRvdWJsZSBuID0gWC9zdW1hX3RhYl8yOwoJZm9yKHNpemVfdCBpPTA7aTxUQUJTSVpFOysraSkgewl0YWJfMltpXSA9IHRhYl8yW2ldICogbjsgfQoJCglwdXRzKCJ0YWJfMSIpOwoJcHJpbnRfdGFiKHRhYl8xLCBUQUJTSVpFKTsKCXB1dHMoIlxudGFiXzIiKTsKCXByaW50X3RhYih0YWJfMiwgVEFCU0laRSk7CglwdXRzKCIiKTsKCXByaW50ZigiWCA9ICU1LjVmXG5zdW1hIHRhYmxpY3kgPSAlNS41ZlxuIiwgWCwgc3VtX3RhYih0YWJfMiwgVEFCU0laRSkpOwoJcmV0dXJuIDA7Cn0KCmRvdWJsZSBzdW1fdGFiKGRvdWJsZSB0YWJbXSwgc2l6ZV90IGxlbikgewoJZG91YmxlIHN1bSA9IDA7Cglmb3Ioc2l6ZV90IGk9MDtpPGxlbjsrK2kpIHsgc3VtICs9IHRhYltpXTsgfQoJcmV0dXJuIHN1bTsKfQoKdm9pZCBwcmludF90YWIoZG91YmxlIHRhYltdLCBzaXplX3QgbGVuKSB7Cglmb3Ioc2l6ZV90IGk9MDtpPGxlbjsrK2kpIHsKCQlwcmludGYoIiU1LjVmICIsIHRhYltpXSk7CgkJaWYoKGklNSkgPT0gNCkgeyBwcmludGYoIlxuIik7IH0KCX0KfQ==