• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Problem z kodem. Algorytm konwersji na inny system liczbowy

Object Storage Arubacloud
0 głosów
311 wizyt
pytanie zadane 31 października 2019 w C i C++ przez urbix01 Gaduła (3,290 p.)
edycja 31 października 2019 przez urbix01

Siema, znalazłem taki algorytm, w codebocksie działa poprawnie ale oprócz wyniku wyświetlają mi się chińskie znaczki lub losowe litery. Nie wiem co jest przyczyną tego, moglibyście rzucić na to okiem

int main()
{
    long liczba=7;      //liczba do konwersji
    int podstawa=2;     //podstawa systemu na który konwertuje
    char wynik[24];     //tablica na wynik
    int n=0;
    do{
        wynik[n]='0' + (liczba%podstawa);
        n++;
        liczba=liczba/podstawa;
        }while(liczba);
        for(n;n>=0;n--)cout<<wynik[n];

    return 0;
}

Wynik jaki otrzymuje to w111
zależnie od liczby jaką się konwertuje to wyskakuje inny znak przed wynikiem

PS: piszcie w komentarzach z jakimi algorytmami mogę jeszcze spotkać się na maturze

komentarz 31 października 2019 przez urbix01 Gaduła (3,290 p.)
dodam że czasami tym znakiem jest - co całkowicie zmienia wynik

1 odpowiedź

+1 głos
odpowiedź 31 października 2019 przez Michałełe Nałogowiec (25,600 p.)

Witam

Podczas wypisania tablicy:

        for(n;n>=0;n--)cout<<wynik[n];

Wypisujesz OD n do 0.

W tablicach index'ujemy od zera, czyli  te n trzeba jeszcze pomniejszyć o jeden

	n -= 1;

	for ( n; n >= 0; n--) cout << wynik[n];

 

EDIT. Dodam jescze ,że te chińskie znaczki biorą się z tego że tablica wynik nie ma nadanych wartości od początku, czyli zawiera jakieś "losowe" liczby.

Podobne pytania

0 głosów
1 odpowiedź 607 wizyt
pytanie zadane 21 marca 2017 w Matematyka, fizyka, logika przez Jiin Obywatel (1,390 p.)
0 głosów
2 odpowiedzi 591 wizyt
0 głosów
1 odpowiedź 1,671 wizyt

92,573 zapytań

141,423 odpowiedzi

319,648 komentarzy

61,959 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...