Potrzebuję, by ktoś przejrzał kod i powiedział co jest źle

Odpowiedz Nowy wątek
2015-09-08 10:18
0

Jestem całkiem nowy, nie tylko tu ale też w programowaniu, toteż nie potrafię zauważyć błędów. Zasadniczo mam dwa problemy. Pierwszy dotyczy komunikatu powitalnego i wyboru rasy ( załącznik 1) a drugi instrukcji switch ( załącznik 2). Kod wrzuciłem w załączniku.
Nie pytajcie co to jest. Niech ktoś tylko powie jak rozwiązać te błędy, żebym mógł pisać dalej.

Pozostało 580 znaków

2015-09-08 10:22
2

Mnie to drażni i pewnie innych też, dlatego poświęcę się i wrzucę kod z załącznika:

#include <iostream>

using namespace std;

string imie, rasa="0", RASA;

int hp=30, lokum=1, kierunek;

int main ()
{
    cout << "Witaj żądny przygody wędrowcze" << endl;
    cout <<"Podaj swoje imię: ";
    cin >> imie;

    while ( rasa == "0")
    {
        cout << "Podaj swoją rasę (Człowiek, Elf, Krasnolud, Hobbit): ";
        cin >> RASA;

        if (RASA == "Człowiek"||"człowiek"||"C"||"c")
        {
            (rasa = "1");
        }

        if (RASA == "Elf"||"elf"||"E"||"e")
        {
            (rasa = "2");
        }

        if (RASA == "Krasnolud"||"krasnolud"||"K"||"k")
        {
            (rasa = "3");
        }

        if (RASA == "Hobbit"||"hobbit"||"H"||"h")
        {
            (rasa = "4");
        } 

        else
            cout << "Nie ma takiej rasy. Podaj inną";
    }
    cout << rasa << " ";
    cout << imie;
    while ( hp > 1)
    {
        cin >> kierunek;
        if (kierunek == 2)
        {
            switch ( lokum );
            {
                case 1:

                   cout << "Po przejściu kilku kroków na północ od fontanny znalazłeś się pod ścianą budynków. Na parterze znajdują się wejscia i okna. Drugie i trzecie piętro jest wypuszczone do Centrum Placu o 30 cm, a ściany ozdobione murem pruskim pięknie wyglądają zasłonięte częściowo przez bluszcz. ";
                   cout << "Wyjścia: Wschód, Zachód, Południe";
                case 4:

                   cout << "Spod wyjścia z Placu udałeś się do północno-wschodniego rogu Placu. Wydaje się on bardziej zapuszczony niż reszta miasta. Kamienny deptak jest wyraźnie rzadziej uczęszczany. W tym miejscu widzisz czworo drzwi, z czego tylko te na przeciwko wyglądają na kiedykolwiek otwierane. Pod nogami wala się kilka nieokreślonych przedmiotów.";
                   cout << "Wyjścia : Zachód, Południe";
                   cout << "Przedmioty: dziurawe blaszane wiadro, deska, sakiewka";
           }
        } 
    }
    return 0;
}
edytowany 2x, ostatnio: Sarrus, 2015-09-08 10:30

Pozostało 580 znaków

2015-09-08 10:25
1
switch ( lokum );

wywal średnik na końcu

RASA == "Elf"||"elf"||"E"||"e"

zamień na

RASA == "Elf" || RASA == "elf" || RASA == "E" || RASA == "e"

Pozostało 580 znaków

2015-09-08 10:30
0

W switch nie masz break przez co będzie się wykonywać kod od danego case do końca

Pozostało 580 znaków

2015-09-08 10:32
0
twonek napisał(a):
```cpp
RASA == "Elf" || RASA == "elf" || RASA == "E" || RASA == "e"

Przy okazji rozszerz warunek:

RASA == "Elf" || RASA == "ELf" || || RASA == "ELF" || RASA == "ElF" || RASA == "eLF" || RASA == "elf" || RASA == "E" || RASA == "e"

;)

edytowany 2x, ostatnio: hipekk, 2015-09-08 10:35
to już nie wygląda fajnie. Lepiej użyć funkcji typu to_uppser_case - pingwindyktator 2015-09-08 11:14
Ktoś tutaj nie załapał sarkazmu :P - Patryk27 2015-09-08 11:31
och no tak.. ;p - pingwindyktator 2015-09-08 14:18

Pozostało 580 znaków

2015-09-08 13:17
0

Dziękuję :) wszystko działa

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0