Napr. ze na zaciatku si nastavis 2 premenne "pozicia_cislo1" a "pozicia_cislo2" na index poslednej cifry cisel vo vstupnom poli, a premenne zaciatok_cislo1 a zaciatok_cislo2 na poziciu prvej cifry vo vstupnom poli.
Potom len vytvoris vystupne pole, a mozes hned ratat, nieco ako
int cifra1,cifra2,prenos;
prenos=0;
for(i=0;i<velkost_vystupneho_pola;i++) // pre kazdu cifru vystupneho pola
{
if(pozicia_cislo1<zaciatok_cislo1) // som uz mimo cisla1?
cifra1=0; // tak potom nula
else
cifra1=vstup[pozicia_cislo1--] - '0';
if(pozicia_cislo2<zaciatok_cislo2) // som uz mimo cisla2?
cifra2=0; // tak potom nula
else
cifra2=vstup[pozicia_cislo2--] - '0';
//a teraz si vyratas sucet cifra1+cifra2+prenos a nastavis podla toho vystup[i] a prenos
vystup[i]=(cifra1+cifra2+prenos)%2;
prenos=(cifra1+cifra2+prenos)/2;
} // konec cyklu a aj celeho programu :D
P.S. zaklad optimalneho programovania je okrem inych veci aj zakazdym ked chces urobit novu premennu alebo pole sa najprv zamyslet co uz mam v stavajucich premennych a poliach, a nevytvarat zbytocne nove premenne a polia so stejnymi datami ak uz tie data niekde mam v stavajucej premennej. Akurat ked chcem nejaku premennu menit a zartoven si ale aj zachovat povodnu hodnotu tak novu premennu samozrejme potrebujem. V mojom pripade to su tie pozicia_cisla1 a 2, tie chcem v cykle menit tak preto som ju vytvoril extra, aj ked poziciu poslednej cifry by som si vedel zakazdym vyratat z premennych ktore som uz mal.Ale nerob si stres, optimalne dnes neprogramuje uz asi skoro nikto ani v profesionalnom celosvetovom meritku, mozog je totiz celosvetovo nedostatkovy tovar :D Dnes ide len o to zaskrtnut v nejakom dementnom managerskom SW ze je naplanovany bod implemented a accepted, a ziaden flag ze "je to uplna sracka" manager v programe nema takze to nikoho nezaujima :D