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.

C++, C - Anagram z char- zmiana kolejności liter w wyrazie

xaviesta 16 Lis 2014 09:50 1854 11
  • #1 16 Lis 2014 09:50
    xaviesta
    Poziom 2  

    Mam do napisania następujący program: Napisać funkcję anagram(napis), która dla danego napisu zmieni kolejność jego liter. Wyskrobałem coś takiego:

    Kod: cpp
    Zaloguj się, aby zobaczyć kod

    Zatrzymałem się i potrzebuję z tym pomocy, bo nawet nie wiem czy idę w dobrym kierunku ?

    0 11
  • #2 16 Lis 2014 10:04
    witoldwitoldowicz
    Poziom 28  

    Próbujesz to w ogóle skompilować? Co to ma być cout ... w[ 100 ] powinno być samo w, teraz dostajesz się do znaku w tablicy i to z poza zakresu (0-99).

    Dodano po 8 [minuty]:

    Używaj debugera.

    0
  • #4 16 Lis 2014 10:11
    witoldwitoldowicz
    Poziom 28  

    Templarious napisał:
    potem policzyłbym ilosc znaków funkcją;
    Po co liczyć przecież jest strlen.

    0
  • #6 16 Lis 2014 10:15
    witoldwitoldowicz
    Poziom 28  

    Zmienił bym jeszcze
    scanf("%s",&tablica); na scanf("%s",tablica);
    for(int i=k;i>0;i--) na for(int i=k-1;i>=0;i--)

    0
  • #7 16 Lis 2014 11:00
    xaviesta
    Poziom 2  

    debugowałem to i kompilowało się bez błędu, w[100] wzięło się z szukania błędów i nie zawszę do końca przemyślanych zmian, ale bardzo dziękuję za rady, praktycznie wszystko już podaliście, dzięki.

    0
  • #10 17 Lis 2014 18:02
    witoldwitoldowicz
    Poziom 28  

    Templarious Jakoś nie podoba mi sie ten kod w[j-i] na początku powinien mieć wartoś zero (koniec stringa), po co forem jechać do j (indexy dla stringa to 0 - strlen()-1).

    0
  • #12 17 Lis 2014 18:17
    witoldwitoldowicz
    Poziom 28  

    Przyklad string ma tylko jeden znak to twoj kod wklada ten znak do w[1].

    0