Problem z konwersją systemu dziesiętnego na binarny Pascal

 
Napisz nowy temat   Odpowiedz do tematu    Forum Wszystko o Turbo Pascalu Strona Główna -> Problemy
Zobacz poprzedni temat :: Zobacz następny temat  
Autor Wiadomość
domin568
Nowy



Dołączył: 16 Lut 2014
Posty: 1
Przeczytał: 0 tematów

Ostrzeżeń: 0/5

PostWysłany: Nie 16:21, 16 Lut 2014    Temat postu: Problem z konwersją systemu dziesiętnego na binarny Pascal

Witam, próbuję napisać program w pascalu ktory zamienia liczbe z systemu dziesietnego na system binarny, udalo mi sie uzyskac odwrocona liczbe w tablicy, jednak teraz trzeba ja odwrocic żeby wynik był poprawny, jednak mój algorytm (myślałem że będzie działał idealnie) nie działa tak jak chciałem, poprostu w jednej pozycji nie zmienia na odpowiednią liczbe. Narazie liczba dziesietna do przeliczenia jest ustawiona na stałe. Tutaj wyniki jakie dostaje po pierwszej petli obliczajacej : 10110101, natomiast po drugiej pętli mam : 10100101, czyli w 5 pozycji brakuje 1 ... Tutaj kod :
Kod:

program Untitled;

procedure zapisDziesietnyNaBinarny (var liczba : Integer);
var
liczbaOstateczna : Real ;
resztyDzielenia : array [1..100] of Integer;
i : Integer;
j : Integer;
tmp : Integer;
begin
i := 0;
j := 0;
     while liczba >= 1 do
      begin
      i := i + 1;
      resztyDzielenia[i] := liczba mod 2;
      liczba := liczba div 2 ;
      write (resztyDzielenia[i]);
      end;
      writeln;
     i := i +1;

     while i >= 1 do
     begin
     i := i - 1;  {8}
     j := j + 1;
     tmp := resztyDzielenia[i];
     writeln ('tmp :', tmp);
     resztyDzielenia[j] := tmp;

     writeln (resztyDzielenia[j]);
     end;
     writeln;
     write ( resztyDzielenia[1]);
     write ( resztyDzielenia[2]);
     write ( resztyDzielenia[3]);
     write ( resztyDzielenia[4]);
     write ( resztyDzielenia[5]);
     write ( resztyDzielenia[6]);
     write ( resztyDzielenia[7]);
     write ( resztyDzielenia[8]);
end;
var
liczba : Integer;
begin
liczba := 173;
zapisDziesietnyNaBinarny (liczba);
readln;
end.

Liczę na waszą pomoc bo już naprawdę nie wiem co mam zrobić :/


Post został pochwalony 0 razy
Powrót do góry
Zobacz profil autora
Wyświetl posty z ostatnich:   
Napisz nowy temat   Odpowiedz do tematu    Forum Wszystko o Turbo Pascalu Strona Główna -> Problemy Wszystkie czasy w strefie EET (Europa)
Strona 1 z 1

 
Skocz do:  
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach


Bluetab template design by FF8Jake of FFD
fora.pl - załóż własne forum dyskusyjne za darmo
Powered by phpBB © 2001, 2002 phpBB Group
Regulamin