Witamy na forum PC Format Zapraszamy do REJESTRACJI


Użytkownicy przeglądający ten wątek: 1 gości

[C++]Gra w odgadywanie liter wyrazu - wasze opinie

#1
[C++]Gra w odgadywanie liter wyrazu - wasze opinie
Napisałem.... Szczerbol
Przeczytałem cały I tom symfoni Grębosza i przyznam się, że to mój dopiero 3 program Lol2 Nie mogłem jakoś się do tego wcześniej zabrać.
Nie kupiłem jednak II tomu więc korzystając z wolnego czasu napisałem:

Grę polegającą na odgadywaniu liter w wyrazach


Zacząłem wczoraj, skończyłem dzisiaj. Mimo, że gra prosta, to siedziałem nad nią sporo czasu...Kiedy się nie ćwiczy regularnie, zapomina się o niektórych rzeczach. I tak...głowiłem się nad wieloma prostymi błędami...

Byłbym wdzięczny gdybyście ocenili moją pracę. Wiem, że na pewno mogłem to zrobić - lepiej, więc proszę was żebyście powiedzieli co mogłem zrobić inaczej.

~300 linijek kodu.
gra.cpp - http://wklej.org/id/32985/
ekspert.cpp - http://wklej.org/id/32986/
slownik.h - http://wklej.org/id/32987/
gracz.cpp - http://wklej.org/id/32988/

Skompilowany program - http://rapidshare.com/files/177953559/gra.exe


Uwaga! Po uruchomieniu programu są do wyboru 3 poziomy trudności. Na razie jest tylko dostępny poziom ekspert. Kolejne to praktycznie ten sam plik co ekspert.cpp tylko zmieniona ilośc zakrytych liter.
 System operacyjny: windows_vista Przeglądarka: firefox
#2
RE: [C++]Gra w odgadywanie liter wyrazu - wasze opinie
Zrób klasyczne menu, tj wybór tylko cyferkami - nikt, mając możliwość wpisania "4", nie będzie stukał "wydaje mi się, że chyba chcę poziom średniosłabozaawansowany".
Wtedy zrobisz menu używając switch, a nie drabinki if-else. Czy jedyna opcja wyjścia z programu to [ctrl+c]? Dodaj ją do menu.

Dlaczego korzystasz ze słownika w sztywny sposób? Mam tu na myśli główną pętlę w funkcji poziom_ekspert(). Jeśli usunę jeden wpis ze słownika, całość się posypie.
Masz 2 struktury - slownik[] oraz slownik_poprawny[]. Są takie same, więc po co je dublujesz? Zamiast modyfikować jeden słownik, kopiuj po prostu słowo i na nim operuj - drugi słownik będzie zbędny.
W pliku nagłówkowym podaje się tylko deklaracje funkcji, więc ciało funkcji sprawdz() powinno być w odpowiednim pliku cpp (slownik.cpp).
slownik.h nie jest zabezpieczony przed wielokrotnym linkowaniem (albo za pomocą polecenia preprocesora, albo dla visual studio odpowiednie pragma).
Całkowity brak komentarzy. Opisuj, co każda funkcja robi, jakie ma wejśiowe parametry oraz co zwraca. Komentuj istotniejsze elementy kodu.
Niektóre z funkcji gracza wypisują coś na ekran. Zamiast tak robić, lepiej IMO żeby zwracały jakieś wartości, a funkcja która je wywołuje niech to odbiera i przetwarza (jeśli chcesz zwracać więcej wartości niż jedną, rób to przez referencję). Dzięki temu, gdybyś np. przeszedł na aplikację okienkową, to klasę gracza będziesz mógł żywcem przenieść, a tak wypisywanie byś w niej musiał modyfikować. Ogólnie chodzi o oddzielenie warstwy logiki od warstwy prezentacji.
Podobnie z funkcją sprawdz().
Rozgrywka jest zawsze taka sama, więc zamiast robić oddzielne funkcje w zależności od poziomu trudności, po prostu sparametryzuj odpowiednio funkcję gry i uwzględniaj to w kodzie.
 System operacyjny: windows_xp_2003 Przeglądarka: opera
#3
RE: [C++]Gra w odgadywanie liter wyrazu - wasze opinie
Dzięki za trafne uwagi.
Moim największym błędem było to, że nie zrobiłem sobie planu i pisałem to ''na żywca''. W czasie pisania wychodziło, że powinienem to zrobić inaczej, ale już było za późno żeby wszystko poprawiać.

Czekam na dalsze uwagi... Oczko

I tak już trochę oftopując; czy macie jakieś strony z ćwiczeniami C++? tj. jakieś pomysły na programy i tym podobne.
Bardzo by mi się to teraz przydało Wesoły
 System operacyjny: windows_vista Przeglądarka: firefox
#4
RE: [C++]Gra w odgadywanie liter wyrazu - wasze opinie
Ćwiczenia... hmm.. poszukaj sobie ćwiczeń z jakichś konkursów programistycznych gimnazjum/LO.

Swoją drogą, ambitnym zadaniem będzie tekstowy RPG. Przeczytałeś tylko I tom ??
 System operacyjny: windows_vista Przeglądarka: firefox
#5
RE: [C++]Gra w odgadywanie liter wyrazu - wasze opinie
(30.12.2008, 12:35)kubasnk napisał(a): Przeczytałeś tylko I tom ??
Tak, drugi muszę zamówić. Nigdzie nie sprzedają oddzielnie.
 System operacyjny: windows_vista Przeglądarka: firefox
#6
RE: [C++]Gra w odgadywanie liter wyrazu - wasze opinie
Skoro ciągnie Cię do robienia gier, to zrób grę Pong :D Albo w konsoli (to byłaby niezła masakra :D) albo z wykorzystaniem np. biblioteki Allego - zwykłe 2D.
 System operacyjny: windows_xp_2003 Przeglądarka: opera
#7
RE: [C++]Gra w odgadywanie liter wyrazu - wasze opinie
(30.12.2008, 13:21)wiesniak napisał(a): Skoro ciągnie Cię do robienia gier, to zrób grę Pong :D Albo w konsoli (to byłaby niezła masakra :D) albo z wykorzystaniem np. biblioteki Allego - zwykłe 2D.

Skoro tak...to może jakąś książkę znasz o tej bilbiotece?
Zamówiłbym od razu drugi tom symfonii i tą książkę.
 System operacyjny: windows_vista Przeglądarka: firefox
#8
RE: [C++]Gra w odgadywanie liter wyrazu - wasze opinie
Z książką się żadną nie spotkałem, ale tak naprawdę nie potrzebujesz cegły do tego. W necie jest pełno kursów, które spokojnie wystarczą, byś załapał, jak korzystać z dobrodziejstw Allegro. Poza tym znajdziesz tu na forum temat o instalacji allegro w visual studio - powinno Ci to pomóc w konfiguracji środowiska.
 System operacyjny: windows_xp_2003 Przeglądarka: opera
#9
RE: [C++]Gra w odgadywanie liter wyrazu - wasze opinie
Kursu allegro nie mogłem znaleźć nigdzie dobrego...
Tylko ten http://kursy.ddt.pl/?TutorialId=7 ale daleko mu do ideału...

Visual studio w życiu nie używałem. Ściągnąłem go sobie, ale przyznam, że nie wiem nawet po co to jest SzczerbolSzczerbol
 System operacyjny: windows_vista Przeglądarka: firefox
Programy: Polecane / Nowe / Inne



Użytkownicy forum szukali:
gra w odgadywanie liter słowagra odgadywanie literprogram do odgadywania słw z literodgadywanie slow znajac pierwsza i ostatniom literejava odgadywanie slowjava jak zrobić grę na odgadywanie literjava i odgadywanie liter jak napisać programgry odgadywanie litergra w odgadywanie słówprogram ktory odgaduje konfiguracje liter

Podobne wątki ([C++]Gra w odgadywanie liter wyrazu - wasze opinie)
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
  Sprawdzenie liter dostępnych dysków w systemie za pomocą VBA 2010 meratronik 2 7708 15.11.2015, 10:26
Ostatni post: broda99
  Wczytywanie liter- zmiana na ascii karol8023 1 7627 04.06.2015, 19:35
Ostatni post: Szachista
  [Zadanie]Wydruk na ekranie kolejnych liter alfabetu szefusik 6 10673 17.05.2015, 21:51
Ostatni post: szefusik

Skocz do:


Wybrane wątki ([C++]Gra w odgadywanie liter wyrazu - wasze opinie)
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
  Oczekiwanie na Akcje przycisku wanhelsing 8 5751 01.03.2020 19:44
Ostatni post: Szachista
Toungue Wybór szkoły średniej przez potencjalnego programistę Zikinan 1 5428 09.02.2020 15:58
Ostatni post: dzikuu86
  Skrypt pod sklep internetowy Talcia 4 8068 14.12.2019 19:48
Ostatni post: hexopex760
  Poszukuję pomysłu na prosty program ;) janciu96 5 14895 13.12.2019 23:32
Ostatni post: Ajgor
  Programowanie Batch (CMD) Informatyk2019 0 6292 11.12.2019 18:30
Ostatni post: Informatyk2019
  [JavaScript] Znajdowanie przedziału czasu rafal12999 0 2872 10.12.2019 17:58
Ostatni post: rafal12999
  Przekazywanie wskaźnika przez referencję w Qt Trojan3000 3 14249 10.12.2019 13:16
Ostatni post: Ajgor
  Proszę o pomoc w uzupełnieniu ankiety dt. Zawodu Programisty MaleMonki 0 3384 17.11.2019 12:47
Ostatni post: MaleMonki
  Spring framework – jakie strony polecacie do nauki? olek23 5 8256 15.11.2019 15:57
Ostatni post: Alsenas
  Programowanie windy (problem) w C++ mysza2323 2 7395 06.11.2019 23:04
Ostatni post: mysza2323
  Programy w C ~Anonim 1 7631 22.10.2019 17:48
Ostatni post: Szachista
  Książki do nauki C# olek23 14 22187 17.10.2019 13:06
Ostatni post: Ajgor
  Wyświetlanie informacji z bazy danych na stronie www PitPlay 1 8623 16.09.2019 11:18
Ostatni post: Ajgor
  Błąd przy uruchamianiu programu w Java z wiersza poleceń Physicist 3 4640 30.08.2019 14:16
Ostatni post: Physicist
  Python z wiersza poleceń Physicist 15 23057 21.08.2019 20:14
Ostatni post: Physicist