czy w ogóle się nadaję do programowania?

0

Nie wiem już co mam zrobić.
Nie potrafię zrobić samemu takiego programu jak np. na tej stronie http://zadaniacpp.blox.pl/2012/08/Zadanie-16-Kopiowanie-tablicy-w-odwroconej.html
Znam teorię pętli for, tablic itd. ale problem jest jak dochodzę do części praktycznej.
Czy ja się w ogóle nadaję do czegoś takiego?
Może znacie jakąś dobrą metodę nauki programowania?
Siedzę obecnie przy c++.
Powoli zaczynam tracić wiarę w to że jestem w stanie się nauczyć zrozumieć język programowania.

0

Hej!

Wiesz, dla mnie programowanie jest jak budowanie z klocków lego. Ale nie z instrukcją w ręku, lecz takie budowanie, że masz wieeelki karton z tymi klockami, a w głowie sobie tworzysz np. obraz jakiegoś statku kosmicznego, samochodu, domku, czy scenografii dla jakiejś fajnej sytuacji (wojna między ludzikami, czy coś). Jak już masz taki obraz w głowie, to szukasz w tym kartonie klocków, z których zbudujesz to, co naszkicowałeś sobie w głowie.

Polega to więc na tym, że masz jakiś problem, który jest pewnego rodzaju "abstrakcyjną całością" i rozwiązujesz go poprzez korzystanie z mniejszych elementów, w tym wypadku konkretnych słów danego języka. Najlepiej uczyć się programowania poprzez rozbijanie każdego problemu na mniejsze części i szukaniu dla tych części pojedynczych rozwiązań.

Następnie przy implementacji łączymy wszystko do kupy i teoretycznie mamy problem rozwiązany. Musisz więc nauczyć się dedukcji, rozbijania kwestii ogólnych na ich składowe, a później szukania dla tych składowych pojedynczych rozwiązań, które to rozwiązania następnie łączysz w spójną całość.

Poza tym nie rozwiązuj wyłącznie zadań w necie, ale też wymyśl sobie jakiś program z konkretną funkcjonalności i zacznij go pisać. Jak czegoś nie będziesz wiedział, to szukaj rozwiązań w necie dla konkretnych problemów. Z czasem wyryjesz w mózgu odpowiednie wzorce dla konkretnych problemów i dzień po dniu będzie Ci łatwiej nie tylko pisać, ale też chłonąć nową wiedzę z zakresu programowania dzięki już "przetartym szlakom" :)

Pozdrawiam :)

0

Jeżeli C++ jest dla ciebie za trudny to użyj jakiegoś prostszego/bardziej intuicyjnego języka jak ObjectPascal (dobre IDE to Delphi/Lazarus) albo PHP jest bardzo podobny do C++ ale łatwiejszy.

W Pascal'u wygląda to tak:

program Project1;

{$APPTYPE CONSOLE}

uses
  SysUtils;

CONST
 WIELKOSC_TABLICY = 3;

var
 TAB1:array of Integer;
 TAB2:array of Integer;
 CMD:Integer;
 K,I:Integer;

begin
  SetLength(TAB1,WIELKOSC_TABLICY);
  SetLength(TAB2,WIELKOSC_TABLICY);
  try
   WriteLn('Podaj ',WIELKOSC_TABLICY,' liczb(y)');
   for I := 0 to WIELKOSC_TABLICY-1 do begin
    ReadLn(CMD);
    TAB1[I]:=CMD;
   end;
   K:=0;
   for I := WIELKOSC_TABLICY-1  downto 0 do begin
     TAB2[I]:=TAB1[K];
     INC(K);
   end;
   WriteLn('Odwrotna kolejnosc');
   for I := 0 to WIELKOSC_TABLICY- 1 do WriteLn(TAB2[I]);
  except
    on E:Exception do
      Writeln(E.Classname, ': ', E.Message);
  end;
  ReadLn;
end.
3
hzmzp napisał(a):

PHP jest bardzo podobny do C++ ale łatwiejszy.

Zgiń, przepadnij...

1

Jeżeli @Adrian.lodz i @adrian.widzew to ta sama osoba, to sądząc po poziomie zadawanych od kilku miesięcy pytań, programowanie nie jest dla Ciebie właściwym zajęciem.

0

@hzmzp No tak tylko czy to c++ czy pascal czy java to rozwiązanie na dobrą sprawą będzie się różnić tylko słowami kluczowymi.
Moim zdaniem problem nie leży w języku ale w sposobie myślenia. Także @Adrian.lodz wychodzi na to że masz problem w rozumowaniu więc zalecam wsiąść kartkę, długopis i jakimś pseudo kodem rozrysuj sobie to wszystko łopatologicznie, jeśli po czasie nie załapiesz czegoś takiego jak w/w zadanie to ja bym sobie dał spokój później ilość zależności i poziom zagmatwania rośnie bardzo szybko.

0

Może powodem jest brak porządnej książki która cię w interesujący sposób tego nauczy. Polecam Symfonie C++. Nie oszczędzaj kasy na książki bo to jest inwestycja która zwróci się z nawiązką w ciągu 1 miesiąca pracy.

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