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

Poker c++ 24 karty

Object Storage Arubacloud
0 głosów
891 wizyt
pytanie zadane 12 listopada 2015 w C i C++ przez kijwoku Nowicjusz (240 p.)
Witam. Jestem dość mocno początkujący i napisałem sobie grę w pokera :) Jakby ktoś rzucił okiem i podpowiedział co powinienem poprawić, co jest bezsensu, byłbym wdzięczny.

http://4programmers.net/Pastebin/4493

Pozdrawiam

5 odpowiedzi

+3 głosów
odpowiedź 12 listopada 2015 przez emSon Stary wyjadacz (10,480 p.)

Zmienne globalne to zło. Niejasne nazwy zmiennych (np. a, albo dupa) utrudniają zrozumienie kodu. Dużo fragmentów też się powtarza i można by je skrócić. Tyle tak na pierwszy rzut oka.

+3 głosów
odpowiedź 12 listopada 2015 przez arek01996 Stary wyjadacz (12,100 p.)
Zmienna dupa ? Za pare tyg nie będziesz pamiętał nic w swoim kodzie z takimi nazwami.

Mogłeś spróbować napisać algorytm wykrywania figur zamiast wszystko na ifach :)
+1 głos
odpowiedź 12 listopada 2015 przez Bravo555 Gaduła (3,970 p.)

Przede wszystkim - cały kod w mainie to nie jest dobra technika. Większe zadania, np potasuj, rozdaj, itd. zamknij w funkcje, a zbiory tych funkcji i różnych zmiennych - w klasę, np. Game. Dzięki temu będziesz wykonywać funkcje na konkretych obiektach.

Karty też możesz jako tako owrappować w klasę lub strukturę (wartość, nazwa, ilość - zmienne obiektu klasy lub struktury Karta). Klas używaj, jeśli chcesz korzystać z czegoś jako obiektu, np. zegarek (poprzez metodę Zegarek.odczytaj() uzyskujesz dostęp do godziny), a struktur, jeżeli coś ma być zlepkiem zmiennych (np. PunktUkladuWspolrzednych - składa się tylko ze zmiennych x, y, ewentualnie z).

0 głosów
odpowiedź 12 listopada 2015 przez kijwoku Nowicjusz (240 p.)
Przepraszam najmocniej za to "dupa", zapomniałem poprawić :\ A ma ktoś pomysł jak w miarę prosto stworzyć algorytm tasujący taką talie kart, która nie opiera się na tablicach ? Bo widziałem dużo ciekawszą impelemtacje mojego pomysłu, na 54 karty, z tym że tamto rozwiązanie ma przeszło 2000 lini kodu :/
komentarz 12 listopada 2015 przez Bravo555 Gaduła (3,970 p.)

Polecam nauczyć się biblioteki vector. Taka ulepszona tablica, można dodawać elementy, zmieniać rozmiar, pobierać ten rozmiar, itd.

0 głosów
odpowiedź 12 listopada 2015 przez kijwoku Nowicjusz (240 p.)
A jakieś pomysły dlaczego to:

for(int a=0; a<5; a++)
{
    tutaj:
    int i=(rand() % 6 ) + 0;
    int j=(rand() % 4 ) + 0;
    reka1[a]=karty[i][j];
    for(int i=0; i<5; i++)
    {
        for (int j=0; j<5; j++)
        {
            if(reka1[i]==reka1[j])
            {
                goto tutaj;
            }
            else
            {
                goto koniec;
            }

        }
    }

    koniec:
    cout <<  reka1[a] << " ";

Nie działa tak samo jak to:

 

    if(reka1[0]==reka1[1] || reka1[0]==reka1[2] || reka1[0]==reka1[3] || reka1[0]==reka1[4]
    || reka1[1]==reka1[0] || reka1[1]==reka1[2] || reka1[1]==reka1[3] || reka1[1]==reka1[4]
    || reka1[2]==reka1[0] || reka1[2]==reka1[1] || reka1[2]==reka1[3] || reka1[2]==reka1[4]
    || reka1[3]==reka1[0] || reka1[3]==reka1[1] || reka1[3]==reka1[2] || reka1[3]==reka1[4]
    || reka1[4]==reka1[0] || reka1[4]==reka1[1] || reka1[4]==reka1[2] || reka1[4]==reka1[3])
    {
        goto tutaj;
    }

cout <<  reka1[a] << " ";

? Konkretnie to pierwsza wersja wcale nie działa.
komentarz 12 listopada 2015 przez Bravo555 Gaduła (3,970 p.)

Używaj proszę tagu code:

int sampleFunc() {
  int someVar = 9;
  return ++someVar;
}

 

Podobne pytania

+1 głos
1 odpowiedź 454 wizyt
pytanie zadane 1 czerwca 2020 w Java przez lucyliu Początkujący (370 p.)
0 głosów
1 odpowiedź 222 wizyt
+2 głosów
2 odpowiedzi 2,901 wizyt
pytanie zadane 5 listopada 2015 w Rozwój zawodowy, nauka, praca przez gromula Stary wyjadacz (10,070 p.)

92,570 zapytań

141,422 odpowiedzi

319,643 komentarzy

61,958 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.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...