Przeczytałem 1 tom symfonii c++ + rozdział o klasach z 2 tomu i nadal nie umiem programować. Czytałem również z programami jakie są w tej książce umieszczone. Obecnie chciałem napisać program jakim jest stos. Ale po prostu nie dam rady. Dosyć długo to książkę czytałem. I nie wiem co zrobić czy ja jestem jakiś upośledzony i nie umiem myśleć ?
Nie mów tylko że ją tylko czytałeś. Książka to taki dodatek; należy praktykować (czyt. programować). Rozwiązuj zadania ze SPOJ'a i twórz własne projekty. Kiedy czegoś potrzebujesz to się tego uczysz, jeżeli czegoś nie potrzebujesz to po co Ci to potrzebne. Jak masz czas to czytasz książkę o nowych rzeczach które pozwolą Ci napisać lepszy, szybszy i może wydajniejszy kod.
Proponuję odłożyć książkę i zacząć pisać programy. Wiedza z ksiażek pomaga czasami (i poszerza horyzonty), ale programowanie to w większości praktyka i praktyka.
Propozycja:
- Spróbuj napisać ten program (stos?).
- Jesli Ci nie wyjdzie, siedź nad nim aż wyjdzie.
- Szukaj pomocy w internecie jeśli nie działa.
- Przeglądnij przykłady w książce czy nie ma czegoś podobnego.
- Czytaj błędy kompilatora.
- Szukaj pomocy w internecie z błędami kompilatora.
- Nie pytaj o oczywiste rzeczy na forum (przed poszukaniem w google/próbą rozwiązania samemu przynajmniej)
- Jeśli dalej nie wychodzi, próbuj dalej, kiedyś się uda
- Napisz nowy, lepszy program.
- Przepisz program od nowa, tak żeby kod był ładniejszy.
- Noś koszulę w kratkę.
- Pij kawę.
- Kiedy program będzie już idealny, spróbuj napisać inny, większy projekt - wróć do punktu 1.
- Powtarzaj aż zostaniesz prawdziwym programistą.
I nie rzucaj się na głęboką woda :P najpierw proste zadanka potem troche trudniejsze, podobnie z projektami najpierw jakieś małe i z czasem powiększaj wielkość projektu.
ok dzięki za rady. Na obecnym programem stos już siedzę od 3dni i tak na prawdę jestem w miejsce. Ciągle piszę ten kod od nowa bo jest za każdym razem beznadziejny i bezsensowny i nadal nie wiem jak go poprawnie napisać.
To zacznij od czegoś prostszego, np. znajdź gotowy podstawowy "stos" w sieci, i dopisz do niego np. operacje:
- sprawdzającą czy stos jest pusty
- wypisującą wszystkie elementy stosu (to akurat brzydka funkcja w stosie, ale mniejsza z tym)
- zwracająca ilość elementów na stosie
Później przetestuj czy wszystkie dobrze działają.
A później np. napisz kolejkę (jest troche podobna do stosu) za pomocą:
- jednej wielkiej tablicy bez przesuwania elementów przy usuwaniu (proste i niepraktyczne)
- jednej wielkiej tablicy z przesuwaniem elementów przy usuwaniu (proste i bardzo niepraktyczne)
- bufora cyklicznego
- doubly linked listy (trochę trudneijsze)
- dynamicznie alokowanych tablic (trudniejsze)
- i co tam jeszcze wymyślisz
Ogólnie rzeczy do napisania jest nieskończona ilość, więc jeśli z czymś sobie nie radzisz zawsze możesz sobie wyznaczać podzadania/prostsze zadania
Stos muszę napisać na zajęcia i nie wiem czy to ogarnę do przyszłego tygodniu (wtedy muszę go oddać).
Programując stos w C++ powinieneś mieć już solidne podstawy w programowaniu.
Książek do programowania się nie czyta, tylko wykorzystuje w nich zawartą wiedzę i (gdy się zaczyna) ćwiczy, ćwiczy, ćwiczy.
C++ to słaby język do nauki programowania. Ale rozumiem że już za późno na coś innego.
Przerób wszystkie ćwiczenia z książki na komputerze - może to coś da.
Polecam spoja.
No niestety jedynie czytając książkę z programowania nie nauczysz się dobrze programować. Trzeba ćwiczyć praktycznie, bo sama teoria nic ci nie da