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

question-closed c++ funkcja mam źle

0 głosów
751 wizyt
pytanie zadane 14 października 2019 w C i C++ przez Niepokonana7999 Bywalec (2,310 p.)
zamknięte 17 listopada 2019 przez Niepokonana7999
string whil(string an)
{
    while(an!="a"&an!="b"&an!="c"&an!"A"&an!="B"&an!="C")
    { cout<<"prosze podać mozliwa odpowiedz"<<endl;
        cin>>an;
    }
}

Co jest w tym źle? Czy muszę jeszcze gdzieś indziej zadeklarować zmienną an? I musi być string, bo to są ciągi znaków co nie.

komentarz zamknięcia: jest kilka dobrych odpowiedzi
komentarz 7 listopada 2019 przez jkdfklgdf Nałogowiec (32,020 p.)
Jeśli uzyskałeś odpowiedź, możesz oznaczyć ją jako najlepszą i zamknąć pytanie ;)
komentarz 17 listopada 2019 przez Niepokonana7999 Bywalec (2,310 p.)
ale jest jeszcze moje pytanie na samym dole

1 odpowiedź

+1 głos
odpowiedź 14 października 2019 przez jkdfklgdf Nałogowiec (32,020 p.)
& to binarny operator AND.

To czego potrzebujesz to && czyli logiczny operator porównania
komentarz 14 października 2019 przez Niepokonana7999 Bywalec (2,310 p.)
string whil(string an)
{
    while(an!="a"&&an!="b"&&an!="c"&&an!"A"&&an!="B"&&an!="C")
    { cout<<"prosze podać mozliwa odpowiedz"<<endl;
        cin>>an;
    }
}

nadal nie działa nie wiem czemu

komentarz 14 października 2019 przez jkdfklgdf Nałogowiec (32,020 p.)
A jak to ma działać?

PS. Nic nie zwracasz z funkcji którą zadaklarowałeś jako string
komentarz 14 października 2019 przez Niepokonana7999 Bywalec (2,310 p.)
{
    while(an!="a"&&an!="b"&&an!="c"&&an!"A"&&an!="B"&&an!="C")
    { cout<<"prosze podać mozliwa odpowiedz"<<endl;
        cin>>an;
    }
    return an;
}

już ma returna, ale problem według code blocksa jest w linijce z while
1
komentarz 14 października 2019 przez jkdfklgdf Nałogowiec (32,020 p.)
an!"A"

chyba powinno być 

an != "A"

Czytaj błędy kompilatora ;)

komentarz 14 października 2019 przez Niepokonana7999 Bywalec (2,310 p.)
ej, a jak zrobić żeby mi to działało w innych miejscach?
1
komentarz 17 listopada 2019 przez jkdfklgdf Nałogowiec (32,020 p.)

Jeśli dobrze rozumiem co chcesz zrobić to funkcja będzie wyglądać mnie więcej tak:

string whil()
{
    string an;

    while(an != "a" && an != "b" && an != "c" && an != "A" && an != "B" && an != "C")
    {
        cout<<"prosze podać mozliwa odpowiedz"<<endl;
        cin>>an;
    }
    
    return an;
}

Ta funkcja wczytuje z klawiatury znaki dopóki nie otrzyma jednej z liter a b lub c. I kiedy ją otrzyma, zwraca tą wartość

komentarz 17 listopada 2019 przez Niepokonana7999 Bywalec (2,310 p.)
a ok dzięki

Podobne pytania

0 głosów
1 odpowiedź 519 wizyt
pytanie zadane 4 lipca 2016 w JavaScript przez LCPGM Obywatel (1,550 p.)
0 głosów
1 odpowiedź 898 wizyt
0 głosów
1 odpowiedź 1,084 wizyt

93,604 zapytań

142,526 odpowiedzi

322,991 komentarzy

63,088 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

Kursy INF.02 i INF.03
...