Dodawanie pisemne dwóch tablic

0

Witam mam problem z dodawaniem pisemnych dwóch liczb zapisanych w tablicach.

Liczby są zapisane tak np. 100=001 czyli od najmniej znaczącej. Długość tablic przechowuję w zmiennych mam problem z kodem bo jakieś kosmiczne liczby mi tworzy.

 //nowa dlugosc tablicy
 if (dl_wynik<dl_tab) then dl_wynik:=dl_tab;
 p:=0;
 for i:=0 to dl_wynik-1 do begin
   wynik[i]:=wynik[i]+tab[i]+p;
   p:=0;
   if (wynik[i]>=10) then begin
   wynik[i]:=wynik[i]-10;
   p:=1;
   end;
 end;
 if (p>0) then begin
 dl_wynik:=dl_wynik+1;
 wynik[dl_wynik-1]:=1;
 end;
  

Poszukuję jakiegoś gotowego kodu bo już nie mam z tym siły...

0

Kod jest poprawny i działa zgodnie z oczekiwaniem.
Na przykład dodawanie 234+175=409 w tablicach 6-elementowych

      i    0 1 2 3 4 5
  wynik[i] 4 3 2 0 0 0   = 234 
 +  tab[i] 5 7 1 0 0 0   = 175
 =wynik[i] 9 0 4 0 0 0   = 409
0

Coś mi się wydaje, że nie chce Ci się do tego przyłożyć...

Musisz pamiętać, że macierze przechowujące dwie liczby muszą mieć taki sam rozmiar, żeby licznik pętli zawsze mógł wskazać na istniejącą komórkę w macierzy; Inaczej będziesz otrzymywał kosmiczne liczby;

Na przyszłość - podawaj cały kod łącznie z deklaracją zmiennych, żeby nikt nie musiał zgadywać i można było od razu sprawdzić jego działanie;

0

Siadłem dziś rano, rozpisałem to na spokojnie i działa bardzo dobrze. Inaczej mózg pracuje wieczorem niż rano :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1