1 / 9
Feb 2018

Próbuję uporać się z problemem wczytania cyfr z int’a do tablicy w kolejności: od cyfry jedności i niby działa ale się wywala ( nie za każdym razem)

w czym problem??
Proszę o podpowiedź
krzysztof

#include

using namespace std;
int klucz,i=0;
string tabklucz, tabklucz2;
int main()
{
cin>>klucz;
while (klucz!=0)
{
tabklucz[i]=klucz%10;
klucz=klucz/10;
cout<<"reszta: “<<(int)tabklucz[i]<<” klucz: "<<klucz<<endl;
i++;
}

 for (int n=0; n<i;  n++)
{
    tabklucz2[n]=tabklucz[i-n-1];
    cout<<(int)tabklucz2[n]<<endl;
}

return 0;

}

  • created

    Feb '18
  • last reply

    Feb '18
  • 8

    replies

  • 1.5k

    views

  • 4

    users

  • 4

    links

wszystkie potrzebne informacje potrzebne do używanie klasy string znajdziesz tu7

Dziękuję za link ale niestety nie potrafię na tej podstawie ustalić powodu dla którego ten programik przestaje działać (dzieje się to jeśli wprowadzę klucz dłuższy niż 4 cyfry).

Wydaje mi się, że problemem jest ta linijka w kodzie
tabklucz2[n]=tabklucz[i-n-1];

może mi ktoś podpowie, proszę

Krzysztof

Ja również. Właśnie zadziałało mi dla liczby 23456. Chyba, że inaczej definiujemy “działa” lub “klucz dłuższy niż 4 cyfry” :wink:

Wstaw kod jako link do Ideone z wywołanym problematycznym testem.

Wstawiłem do Ideone pod linkiem https://ideone.com/y8bNVP3 (jeżeli dobrze zrozumiałem co mam zrobić - jestem nowy)

Mówiąc, że nie działa mam na myśli, że po prawidłowym wykonaniu wyskakuje okienko windowsa: “Program przestał działać poprawnie z powodu wystąpienia problemu. System Windows zamknie … itd”

czyli nie zadałeś sobie trudu poczytania o klasie string - bo wystarczy przeczytać kilka pierwszych linijek o defaultowym konstruktorze, a wszystko stanie się jasne