Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Arduino Leonardo - Przekształcenie Tablicy w kod decymalny

Daniel-kaczor 30 Mar 2015 19:15 699 10
  • #1 30 Mar 2015 19:15
    Daniel-kaczor
    Poziom 14  

    Witam.

    Walczę dzisiaj już 5 godzinę z przekształceniem tablicy

    Kod: cpp
    Zaloguj się, aby zobaczyć kod

    w ciąg decymalny i załadowaniem go do int b

    0 10
  • #2 30 Mar 2015 20:04
    gaskoin
    Poziom 38  

    A jak ma wyglądać postać finalna? Pojęcie ciągu decymalnego jest chyba znane tylko Tobie?

    Tak: 0, 0, 42, 170 ?

    0
  • #3 30 Mar 2015 20:08
    Daniel-kaczor
    Poziom 14  

    Chodziło mi o to żeby to była jedna liczba, a nie każdy znak osobno. Nie wiem jak nazywa się taki zapis.

    Postać finalna 10922.

    0
  • #4 30 Mar 2015 20:17
    gaskoin
    Poziom 38  

    No to coś w stylu:

    Kod: c
    Zaloguj się, aby zobaczyć kod


    *(tab + size - i - 1) to w zasadzie to samo co tab[size - i - 1] i chyba można zapisać w taki sposób zamiast arytmetyki wskaźnikowej.

    0
  • Pomocny post
    #5 30 Mar 2015 20:47
    hexen2k
    Poziom 16  

    Krótsza wersja:

    Kod: c
    Zaloguj się, aby zobaczyć kod


    I cały program z przykładem użycia:
    Kod: c
    Zaloguj się, aby zobaczyć kod


    Powodzenia!

    0
  • Pomocny post
    #6 30 Mar 2015 21:04
    gaskoin
    Poziom 38  

    Ciekawe jak zrobisz z tego funkcję z parametrem.

    0
  • #7 30 Mar 2015 21:44
    Daniel-kaczor
    Poziom 14  

    Hmm nie rozumiem czemu, ale kiedy tablica ma wartości

    Kod: cpp
    Zaloguj się, aby zobaczyć kod

    wynik wynosi 15. Kiedy przeliczam kalkulatorem wychodzi: 4160749583

    0
  • Pomocny post
    #8 30 Mar 2015 21:45
    BlueDraco
    Specjalista - Mikrokontrolery

    Pewnie dlatego, że na AVR typ int ma 16 bitów. Zapewne do tego dziwacznego i mało sensownego zadania powinieneś użyć typu uint32_t

    1
  • #9 30 Mar 2015 21:59
    Daniel-kaczor
    Poziom 14  

    Faktycznie! zapomniałem o tym.
    Dlaczego uważasz że to mało sensowne?
    Chodzi mi o to, że potrzebuje tablice załadować do zmiennej, którą następnie wysyłam do biblioteki w postaci decymalnej.

    0
  • #10 30 Mar 2015 22:17
    hexen2k
    Poziom 16  

    gaskoin napisał:
    Ciekawe jak zrobisz z tego funkcję z parametrem.


    Nie wiem czy o to Ci dokładnie chodziło :)
    Kod: c
    Zaloguj się, aby zobaczyć kod

    Oczywiście rozmiar tablicy musi być znany na etapie kompilacji.

    I jak słusznie zauważył BlueDraco, podane kody źródłowe zakładają, iż typ int jest 32 bitowy.

    0
  • #11 30 Mar 2015 22:38
    Daniel-kaczor
    Poziom 14  

    Rozmiar tablicy będzie niezmienny.
    Dziękuje wszystkim za pomoc, chyba muszę przestudiować jakiś poradnik o programowaniu AVR.

    0