Olimpiada informatyczna

Wszystko Off Topic
velmafia
Member
Posty: 1820
Rejestracja: 01 września 2006, 00:56
Lokalizacja: Las

Olimpiada informatyczna

Post autor: velmafia »

Witam,
właśnie dzisiaj się dowiedziałem że zostałem wybrany (ze szkoły) do olimpiady informatycznej i że rozwiązane zadania muszę dostarczyć do 20 listopada, ale problem w tym że w szkole dopiero teraz zaczynamy programowanie (turbo pascal) i wynika z tego że mam 20 dni na nauczenie sie jakiegoś języka programowania i zrobienie zadań.
Przygodę z programowaniem zaczynam dopiero teraz, ale ogólne pojęcie o algorytmach i sposobie ich tworzenia mam (chyba ;) ), ponieważ dużo czytałem o tym i grzebałem już w różnych kodach programów, ale nigdy jeszcze nie tworzyłem żadnych programów od początku.
Mam teraz zamiar zabrania sie w końcu za programowanie, bo zabieram się już dłuuugi czas i teraz mam konkretny powód.
Wobec tego teraz moje pytanie, mam do wyboru języki programowania: Pascal i C lub C++ i za który najlepiej sie (według Was) zabrać ? Treść zadań jest tu.
Zastanawiam się nad C, ale jeszcze pewny nie jestem, trudność nie ma znaczenia, bo nie lubię iść na łatwiznę, chodzi mi o taki język który mi sie przyda potem, bo mam zamiar kształcić sie w kierunku informatyki. I jak byście mogli podać jakąś konkretną książkę do nauki tego języka który polecacie.
Dotychczas nie zajmowałem się programowanie bo bawiłem się GNU/Linuksem, ale teraz mam to zmienić w 20 dni ;)

PS.
Wiem ze mam marne szanse, ale robię to "for fun", oraz dla tego że dużo mogę się nauczyć. Do samej olimpiady podchodzę poważnie, ale ze względu na to co mogę się nauczyć, a nie ze względu na to że mogę coś osiągnąć.



aloha
Kaka'
Senior Member
Posty: 3018
Rejestracja: 30 lipca 2006, 13:17
Lokalizacja: Kartuzy

Post autor: Kaka' »

velmafia pisze:Treść zadań jest tu.
Nic mi się nie wyświetla, w tych zadaniach oczywiście. Stronka tak, zadanie nie.
velmafia pisze:Pascal i C lub C++ i za który najlepiej sie (według Was) zabrać ?
C/C++ Jeżeli chcesz poznać jako takie podstawy C++ to mam świetny kurs: http://www.it.hk.pl/ Jak na razie z niego się uczę i nawet dobrze mi idzie, ale w niedługim czasie mam zamiar jakąś książkę kupić. C++ na 100% Ci się przyda (pytałem się tego zaufanej osoby na tym forum :) ). Ale...Szczerze mówiąc gdybym był na twoim miejscu przez te 20 dniu szlifował bym pascala. Po pierwsze łatwy, po drugie szybko się go nauczysz (a na tym Ci chyba zależy), i po trzecie, jeśli będziesz znał pascala to nie będziesz miał problemu z C++ (ja pascala znam bardzo dobrze (a raczej znałem - 3 miesiące bez programowania w nim robi swoje, połowę już zapomniałem) i nie mam dużych problemów z C++ ale z java albo python gdy próbowałem to mam duże problemy). No ale C/C++ bardziej Ci się przyda niż pascal. Zrobisz jak uważasz :)


Pozdrawiam!

PS: jak chcesz to mogę Ci dać linka do kursu pascala.

[ Dodano: 2006-10-31, 20:36 ]
Tu masz kursy do pascala:

http://turbopascal.skryptoteka.pl/index-noflash.html (polecam)

http://www.pascal.eu.org/index2.htm (taki se ale też może być)

A tu inne nietestowane prze ze mnie stronki:

http://www.pascal.webpacket.net/

http://pascal.vj.e.pl/

Pozdrawiam!
velmafia
Member
Posty: 1820
Rejestracja: 01 września 2006, 00:56
Lokalizacja: Las

Post autor: velmafia »

mi normalnie wyświetla tego linka, ale jeśli Tobie nie chce to wejdź na
http://www.oi.edu.pl/
i otwórz zakładkę

Kod: Zaznacz cały

XI OI 2006/2007

i dalej zakładka zadania.
Kaka'
Senior Member
Posty: 3018
Rejestracja: 30 lipca 2006, 13:17
Lokalizacja: Kartuzy

Post autor: Kaka' »

A i jeszcze jedno. To są tylko kursy podstaw pascala, więcej byś się nauczył z jakiejś książki. Co do tego kursu C++ to warto go spróbować. Jest on bardziej rozbudowany niż te z pascala no ale w nim będzie trzeba długo siedzieć. Na początku będzie bardzo łatwo ale później (tak 15 lekcja) zaczynają się schody.

Zrób tak: przeczytaj kurs C++ i pascala i zobacz w którym będzie Ci się szybciej uczyć (no ale jeszcze raz mówię, lepiej C/C++ no ale pascala się szybciej nauczysz - tak akurat było w moim przypadku).

Pozdrawiam!

[ Dodano: 2006-10-31, 20:46 ]
Nom, już zobaczyłem. W C++ bym tego na pewno nie potrafił zrobić (dopiero się go uczę) ale w pascalu jakbym go sobie przypomniał to kto wie. No ale to Ty masz to wykonać ;-) więc zrób tak jak napisałem wcześniej zobacz w czym Ci będzie się szybciej pisać i czego się szybciej nauczysz.


Pozdrawiam!
velmafia
Member
Posty: 1820
Rejestracja: 01 września 2006, 00:56
Lokalizacja: Las

Post autor: velmafia »

wiem że Pascala sie szybciej nauczę, ale mi chodzi o przydatność nie szybkość,
nauka takich rzeczy jak programowanie ogólnie nauki matematyczne/informatyczne/techniczne idzie mi bardzo szybko więc wolę skupić się na przydatności tego co się uczę, ten konkurs jest tak jak już pisałem "for fun",
Kaka', dzięki za odpowiedz ale poczekam jeszcze na opinie innych i wtedy zdecyduję

a uczyć wolę się z książki, jakoś w książkach jest wszystko bardziej spójne, a do neta wolę zaglądnąć po przerobieniu książki


aloha
Kaka'
Senior Member
Posty: 3018
Rejestracja: 30 lipca 2006, 13:17
Lokalizacja: Kartuzy

Post autor: Kaka' »

wiem że Pascala sie szybciej nauczę, ale mi chodzi o przydatność nie szybkość,
No to C++.


No ale poczekaj jeszcze na opinie innych, ale obacz se ten kurs - naprawdę warto. Bo jak raz byłem w empiku i patrzałem na książki o C++ to ten kurs z neta przewyższa je kilkakrotnie! Ale fajną książkę znalazłem i ją chcę właśnie kupić (no a raczej dostałem "cynka" na nią) a zwie się: "Symfonia C++" Jerzego Grębosza.


Pozdrawiam!
KarolOssowski
Posty: 92
Rejestracja: 25 czerwca 2006, 19:59
Lokalizacja: Warszawa

Post autor: KarolOssowski »

20 dni to za mało żeby się nauczyć programować, a co dopiero napisać programy na olimpiadę informatyczną. jeśli jesteś nawet geniuszem informatycznym (chociaż jak piszesz - nawet o tym nie wiesz), to zważ na to że aby rozwiązać tam jakieś zadanie nie trzeba znać jedynie *dobrze* dany język programowania (czyt.: swobodnie wyrażać w nim swoje myśli) ale również mieć pewne podstawy teoretyczne.
chodzi tu przede wszystkim o matematyke (często przydaje się rachunek prawdopodobieństwa, matematyka dyskretna), i wiedze o algorytmach i strukturach, danych (przedtmiot ASD na studiach na kierunkach informatycznych pojawia się na 2/3 roku i najczęściej jest zaliczany do tych trudniejszych). np. teoria grafów jest najczęściej niezbędna.

jednym słowem konia z rzędem Ci sprawie jeśli po tych 20 dniach chociaż ruszysz jakieś zadanko.

poza tym ten konkurs jest dla ludzi "uzdolnionych" w budowaniu algorytmów i nawet mając już odpowiednią bazę teoretyczną trzeba naprawdę być w tym dobrym żeby rozwiązać zadania, które są tam nawet na 1szym etapie. jestem pewien że przeciętny student informatyki miałby problemy.
zatem nie zrażaj się jeśli nie będziesz umiał ich rozwiązać. z ASD jest tak, że b. żadko stosuje się to w praktycznym kodowaniu. a takie kombinacje jakie są na OI, to chyba nigdy nie będziesz miał okazji zastosować.

jeśli chodzi o język, to C++ ale ostrzegam że jako Twój 1szy język może Cię nieco zrazić, łatwiej nauczyć się zaczynając od pascala, ale wiadomo że ten z kolei nie jest już prawie nigdzie stosowany.
kurs: podobno ten jest b. dobry: http://www.intercon.pl/~sektor/cbx/, a książka, to nie wiem, ja uczyłem się z "C++ w 24h" - jest dobra dla totalnych laików, ale programowania nauczysz się oczywiście przede wszystkim samemu pisząc programy i ew. czytając czyjeś kody źródłowe.
Kaka'
Senior Member
Posty: 3018
Rejestracja: 30 lipca 2006, 13:17
Lokalizacja: Kartuzy

Post autor: Kaka' »

velmafia, co do książki o C++ to zobacz tu: http://www.bitbajt.pl/x_C_I__P_21911778.html Książka podobno świetna więc i ja się o nią pokuszę :)


Pozdrawiam!
velmafia
Member
Posty: 1820
Rejestracja: 01 września 2006, 00:56
Lokalizacja: Las

Post autor: velmafia »

właśnie zastanawiałem się nad tą książką co podałeś, oraz nad "thinking in c++"
http://helion.pl/ksiazki/thicpp.htm
słyszałem że obie są "dobre" ale z żadną nie miałem kontaktu, więc nie wiem co wybrać
będę musiał popytać się gdzieś na necie, a póki co to przerabiam ten kurs c++ co podałeś, naprawdę fajny, dzięki

aloha
Kaka'
Senior Member
Posty: 3018
Rejestracja: 30 lipca 2006, 13:17
Lokalizacja: Kartuzy

Post autor: Kaka' »

velmafia pisze:właśnie zastanawiałem się nad tą książką co podałeś, oraz nad "thinking in c++"
Lepiej Symfonia C++ standard - dlaczego? Po pierwsze czytałem o niej dużo w necie i była jak i jest jedną z najpopularniejszych książek. Jedna osoba (nie wiem czy powiedzieć która :p ) na tym forum uczyła się z Symfonii C++ i właśnie ją poleca. Co do tej z helion to też szukałem recenzji itp. ale wygląda na to, że Symfonia C++ Standard jest bardziej popularna i napisana prostym językiem. Zrobisz jak uważasz ale ja kupuję Symfonia C++ Standard.
velmafia pisze:a póki co to przerabiam ten kurs c++ co podałeś, naprawdę fajny, dzięki
No na początku fajny, ale zobaczysz co to będzie na 20 lekcji i później (taka mała rada: jak nie zrozumiesz wszystkich rodzajów pętli i tablic to nie masz co przechodzić dalej, po prostu wiedza na temat pętli i tablic jest w późniejszych lekcjach wymagana; ja niestety nie rozumiem dobrze pętli "do while" i praktycznie stoję w miejscu - muszę do tych pętli wrócić). A Ty w którym miejscu jesteś? :)

Pozdrawiam!
ODPOWIEDZ