Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Cykliczne przesunięcie tablicy znaków.

Ostatnio zmodyfikowano 2013-12-17 19:07
Autor Wiadomość
dejmien
Temat założony przez niniejszego użytkownika
Cykliczne przesunięcie tablicy znaków.
» 2013-12-14 21:51:57
Witam.

Kombinowałem nad cyklicznym przesunięciem tablicy znaków i nie mogę nic wykombinować. Szukałem po forach, ale tamtych rozwiązań nie rozumiem.

Np. jeśli mam taką tablice: char tablica[] = {'a'b'c'd'e'f'g'h'i'j'k'l'm'n'o'p'r's't'u'w'z'1'2'3'4'5'6'7'8'9};

I chciał bym ją przesunąć o dowolną liczbę to jak to wykonać? Np. jeśli mam liczbę 38 i potrzebuję wyciągnąć takowy znak z tablicy o numerze 38 to będę właśnie potrzebował takowego przesunięcia... tylko nie wiem jak to zrobić.
P-99223
pekfos
» 2013-12-15 11:41:05
Np. jeśli mam liczbę 38 i potrzebuję wyciągnąć takowy znak z tablicy o numerze 38 to będę właśnie potrzebował takowego przesunięcia...
Co ma wyciąganie wartości z tablicy, do modyfikowania kolejności elementów?
P-99251
dejmien
Temat założony przez niniejszego użytkownika
» 2013-12-15 18:00:22
Nie wiem co ma wspólnego. Taką wiadomość dostałem na innym forum... Potrzebuje napisać program szyfrujący, który zaszyfruje wiadomość przy użyciu tablicy znaków np. string znaki = 'abcdefghijklmnoprstuwz123456789". Jeśli mamy liczbę 2 to druga w tablicy jest ,,c'' i to będzie szyfr dla pierwszego znaku tekstu wpisanego przez użytkownika, ale nie będę się tu zagłębiał w działanie mojego programu. Pokrótce problem tkwi w tym że jeśli program wylosuje np. mamy liczbę 40 a znaków w tablicy jest tylko 31 to program nie wyszukuje znaku. Rozwiązanie tego problemu poprzez dodanie do tablicy tych samych znaków np. znaki ="abcdefghijklmnoprstuwz123456789abcdefghijklmnoprstuwz123456789" nie działa bo później jest problem z odszyfrowaniem.

I podobno lekarstwem na mój problem jest cykliczne przesunięcie tablicy.
P-99307
pekfos
» 2013-12-15 18:02:38
Nie wystarczy modulo?
P-99308
dejmien
Temat założony przez niniejszego użytkownika
» 2013-12-15 19:34:09
Hmmm pekfos chodzi Ci o resztę z dzielenia tak? Tylko trzeba pamiętać że później będzie trzeba tą wiadomość odszyfrować. Szyfrowanie polega na tym że mamy np. ''tekst'' znak T jest przykładowo na pozycji 10 w tablicy znaków string. Program losuje liczbę  np. 15. 15 jest dodawane do 10 i wychodzi 35. I program szuka jaki znak jest na 35 pozycji w stringu. I to jest ten szyfr.
P-99318
pekfos
» 2013-12-15 19:36:17
No i da się odszyfrować.
P-99319
dejmien
Temat założony przez niniejszego użytkownika
» 2013-12-15 21:19:42
No nie wiem. Weźmy taki przykład: znak ,,d'' w stringu jest na pozycji 3 i podczas odszyfrowywania będę musiał właśnie wydobyć tą liczbę 3. Losujemy dla niej liczbę  np. 14, 14+3 = 17. 31%17 = 14. Na pozycji 14 znajduje się ,,o'' i to jest szyfr. (tak swoją drogą gdyby po dodawaniu liczba wyszła większa od ilości znaków w stringu to też nie wyobrażam sobie jak może wyciągnąć resztę z dzielenia 31%41.)

Teraz nie wyobrażam sobie jak to można odszyfrować nawet jeśli miało by się do pomocy i szyfr ,,o'' i nawet liczbę wylosowaną ,,14''... ale ok Ty tu jesteś ekspertem więc nie będę ,,polemizował'' na ten temat. Ale jeśli możesz to podaj rozwiązanie :-)

pozdrawiam
P-99337
pekfos
» 2013-12-15 21:29:21
indeks % ilosc_znakow
P-99338
« 1 » 2 3
  Strona 1 z 3 Następna strona