Tvoj problem podla mna je
j - i+1
prekladac neni jasnovidec bud j - (i+1) alebo j - i - 1.
Inac robis moc zlozito vsetko. ja by som dynamicky vytvoril len pole pre vysledok a ratal by som to rovno zo vstupu. Tie polia cislo1 a cislo2 vytvaras uplne zbytocne.
Inac len tak mimochodom:
int adresa_posledniho_prvku = delka_vstup-1;
for(int j = 0; j <= adresa_posledniho_prvku; ++j){
staci takto: for(int j = 0; j < delka_vstup; ++j){
alebo //urcim delky poli
int a; //index konce cislo1
for(a = 0; a < i; ++a){
++delka1;
}
--a;
int b; //index konce cislo2
for(b = i+1; b < delka_vstup; ++b){
++delka2;
}
--b;
je presa to iste co int a=i-1; //zasa dalsia zbytocna premenna
delka1=i;
int b= delka_vstup-i-1; //zbytocna premenna
delka2=delka_vstup-i-1;