matematykaszkolna.pl
Prosze Sinusoidalny: Chciałbym nauczyć sie programowa w jakimś języku . Co polecacie ? Może Rygby, JS , Python ? W tej chwili z języków programowania poslugiwalem sie JS, poza tym znam HTML CSS i dobrze biblioteke jQuerry. Co o nich sądzicie ? Jak. Nauczyć sie myslec jak programista?
1 lip 09:46
Sinusoidalny: Miałem na myśli Ruby
1 lip 09:50
Sinusoidalny: Miałem na myśli Ruby
1 lip 09:51
b.: Polecałbym Pythona lub C/C++. Przy czym jeśli uczysz się całkiem sam, to raczej Pythona, jest dużo łatwiejszy. Z kolei jeśli opanujesz dobrze C++, to poradzisz sobie chyba w każdym innym języku, co jest konsekwencją tego, że C++ jest bardzo bogaty (i dość skomplikowany) do pythona polecam: http://docs.python.org/2/tutorial/ (wersja 2) http://docs.python.org/3/tutorial/ (nowsza, ale ciągle mniej popularna wersja 3) do C++ polecałbym raczej jakąś książkę
1 lip 10:03
Mateusz: Jak znasz HTML i CSS dodatkowo JS to poucz sie tez PHP i MySQL wbrew pozorom poszukuje sie programistow do tego bardziej niz do C++ czy inych jesli chodzi o Polske bo na zachodzie jest troche inaczej, jest to bardziej wyrównane jesli interesują cie tez bazy danych to z pewnoscią przyda sie Oracle tez poszukuje się bazodanowców wszelkiej maści i będzie poszukiwało.
1 lip 10:18
Sinusoidalny: Dziękuje za odpowiedź emotka Temat jest wciąż aktywny .
1 lip 10:29
Sinusoidalny: Aktualna wersja stabilna 3.3.1 (6 kwietnia 2013) 2.7.4 (6 kwietnia 2013) Czym różnią sie te dwie wersje pythona ?
1 lip 10:58
Sinusoidalny: Czym sa programowanie obiektowe, programowanie strukturalne i programowanie funkcyjne.
1 lip 11:02
1 lip 11:23
Mateusz: Google nie gryzie emotka jak to mowią ale mowiac tak w skrocie obrazowo Programowanie strukturalne w tej metodzie programowania program dzieli się na mniejsze fragmenty i zapisuje w postaci podprogramow(inaczej procedur lub funkcji) tzw projektowanie top down. programowanie obiektowe to kolejny etap rozwoju językow programowania, łączą dane z wykonywanymi na nich operacjami tworząc tzw obiekty co pozwala na łatwiejsze i dokładniejsze modelowanie rzeczywistosci po drugie stosujac techniki takie jak dziedziczenie czy ukrywanie danych np stsosowanie modyfikatora dostepu private lub protected ułatwia sie rozbudowywanie programów przez zespoły programistyczne. programowanie funkcyjne w tym programowaniu program składa sie tylko z funkcji (język takie jak np Haskell )
1 lip 11:23
Sinusoidalny: Dziekuje
1 lip 11:39
fx: Zważyć należy, że kluczową umiejętnością programisty jest umiejętność samodzielnego pozyskiwania informacji. Startując od zera w zasadzie nie ma znaczenia co wybierzesz. Python rzeczywiście jest przyjemnym środowiskiem nie tylko do nauki programowania.
1 lip 11:45
Sinusoidalny: A jak nauczyć sie myśleć jak programista ?
1 lip 11:55
Mateusz: Tego sie nie da nauczyc w 100% z tym trzeba sie urodzic prawdziwy programista nie widzi kodu programu np int main() { cout<<"cos tam"; return 0; } przykład bardzo banalny ale programista tego nie widzi on widzi rezultat emotka oczywiscie z biegiem lat doswiadczenie rośnie i mozna byc bardzo dobrym programistą.
1 lip 12:01
Sinusoidalny: Można sie nauczyć . Oglądałem wykłady z MIT i tam tego uczą emotka
1 lip 12:07
Sinusoidalny:
1 lip 12:08
fx: Programista musi potrafić dekomponować problemy a tej umiejętności można się nauczyć poprzez ćwiczenia.
1 lip 12:12
fx: Mówienie, że programista nie widzi kodu a rezultat jest przynajmniej ryzykowne. Zwłaszcza gdy większość programistów to klepacze kodu a tworzeniem modelu zajmuje się sztab ludzi, bardzo często nie programistów.
1 lip 12:13
Sinusoidalny: Jak to?
1 lip 12:14
fx: Jeśli masz jakieś pytanie to zadaj je w sposób szczegółowy nie tak jak powyżej.
1 lip 12:18
Sinusoidalny: Nie chciałbym być maszyna do wklepywania kodu ale tez twórca
1 lip 12:45
Mateusz: No to musisz duzo cwiczyc emotka ale najlepiej na praktycznych rzeczach,projektach @ fx tak zgadza się że większość to klepacze kodu dostają specyfikację i piszą w konkretnym języku programowania mi nie o to chodzi , tylko o to ze chcąc byc naprawde dobrym programistą trzeba rozumiec jak działa dany język programowania i jak komputer przetwarza te dane o taki rezultat mi chodzi ja np znając asembler wiem np ze tam jedna instrukcja warunkowa np if(a>b) c=a+b; w C++ odpowiada mniej wiecej 7 instrukcjom procesora ktore beda wyglądały mniej wiecej tak: mov eax,[ebp−0x04] cmp eax, [ebp−0x08] jle +0x09 mov edx, [ebp−0x04] add edx,[ebp−0x08] mov [ebp−0x0],edx przyjałem ze zmienna a jest pod adresem 0x04 a zmienna b w komorce 0x08 zrozumienie tego duzo ułatwia ale nie jest konieczne
1 lip 18:58
Sinusoidalny: Studiujesx informatykę, na jakiej uczelni na którym roku jesteś? Kiedy zacząłes uczyć sie programowac?
1 lip 19:46
Mateusz: Nie studiuje informatyki. W wieku 17 lat miałem pierwszą stycznosc z programowaniem.
1 lip 19:55
Sinusoidalny: Rozumie ze programowabie jest bardzo trudne?
1 lip 20:59
Mateusz: Nie, nie jest trudne emotka.
1 lip 21:00
Sinusoidalny: Chyba jest
1 lip 21:37
Mateusz: Dlaczego? Programowanie to tylko język, narzędzie. Trudnosc tkwi w jego rozumnym wykorzystaniu.
1 lip 21:42
Sinusoidalny: <Wyślij rozwiązanie> [0/100]Statystyki zadania Liczba osob: 43 Liczba osob na 100 punktow: 26 Sredni wynik: 75.0233 Komiwojażer Limit pamięci: 128 MB Komiwojażer stwierdził, iż optymalne planowanie podróży na powierzchni ziemi jest zbyt trudnym problemem obliczeniowym, więc przenosi swój interes w liniowy świat na Dunaju. Ów komiwojażer posiada bardzo szybką łódź, którą może przepłynąć pomiędzy dowolnymi punktami na rzece w pomijalnym czasie, ale niestety łódź ta zużywa ogromne ilości paliwa −− każdy metr przepłynięty w górę rzeki (w kierunku jej źródła) kosztuje komiwojażera dolarów, a każdy metr przepłynięty w dół rzeki (w przeciwnym kierunku) −− dolarów. Wzdłuż rzeki jest rozmieszczonych targów, które komiwojażer chciałby odwiedzić. Każdy targ odbywa się tylko przez jeden dzień. Dla każdego targu , komiwojażer zna jego datę , wyrażoną jako liczba dni od zakupu jego łodzi. Zna też lokalizację targu , będącą jego odległością w metrach od źródła rzeki (w dół rzeki), jak również liczbę dolarów , którą zarobi, jeśli odwiedzi ten targ. Powinien zacząć i zakończyć swoją podróż w swoim domu nad brzegiem rzeki, który znajduje się na pozycji , także wyrażonej jako odległość w metrach od źródła rzeki. Pomóż komiwojażerowi wybrać targi, które powinien odwiedzić (potencjalnie żadne), oraz ich kolejność, tak aby zmaksymalizować zysk na końcu podróży. Zysk komiwojażera wyraża się jako suma dolarów uzyskanych na odwiedzonych targach minus suma dolarów wydanych na podróże w górę i w dół rzeki. Pamiętaj, że jeśli targ odbywa się przed targiem , komiwojażer może odwiedzić je tylko w tej kolejności (tzn. nie może najpierw odwiedzić , a potem ). Jeśli jednak dwa targi odbywają się tego samego dnia, komiwojażer może odwiedzić je w dowolnej kolejności. Nie ma ograniczenia na liczbę targów odwiedzonych jednego dnia, ale oczywiście komiwojażer nie może odwiedzić dwa razy tego samego targu i zgarnąć zysków dwukrotnie. Może natomiast przepłynąć obok odwiedzonych wcześniej targów bez dodatkowego zysku. Zadanie Napisz program, który mając dane daty, lokalizacje i możliwe zyski z poszczególnych targów, jak również lokalizację domu komiwojażera i jego koszty podróżowania, wyznaczy maksymalny możliwy do uzyskania zysk na końcu podróży. Ograniczenia −− liczba targów −− koszt podróżowania w górę rzeki () i w jej dół () −− lokalizacja domu komiwojażera −− dzień, w którym odbywa się targ −− lokalizacja targu −− liczba dolarów, którą zarobi komiwojażer, jeśli odwiedzi targ Wejście Twój program powinien wczytać ze standardowego wejścia następujące dane: Pierwszy wiersz zawiera liczby całkowite , , oraz , w tej kolejności, pooddzielane pojedynczymi odstępami. Kolejne wierszy opisuje targów, w jakiejkolwiek kolejności. −ty z tych wierszy opisuje −ty targ i zawiera trzy liczby całkowite pooddzielane pojedynczymi odstępami: dzień odbywania się targu , jego lokalizację oraz zysk możliwy do uzyskania na nim przez komiwojażera. Uwaga: Wszystkie lokalizacje podane na wejściu będą różne. Dokładniej, żadne dwa targi nie będą odbywały się w tym samym miejscu i żaden targ nie odbędzie się w domu komiwojażera. Wyjście Twój program powinien wypisać na standardowe wyjście jeden wiersz zawierający jedną liczbę całkowitą: maksymalny zysk, jaki może uzyskać komiwojażer po odbyciu swej podróży. Ocenianie W testach wartych łącznie 60 punktów żadne dwa targi nie będą odbywać się tego samego dnia. W testach wartych łącznie 40 punktów żadna z liczb na wejściu nie przekroczy . Testy, w których zachodzą oba powyższe warunki, są warte 15 punktów. Testy, w których zachodzi co najmniej jeden z tych warunków, są warte 85 punktów. Przykład Dla danych wejściowych: 4 5 3 100 2 80 100 20 125 130 10 75 150 5 120 110 poprawną odpowiedzią jest: 50 Wyjaśnienie do przykładu: Optymalny plan podróży przewiduje odwiedzenie targów 1 i 3 (tych o lokalizacjach 80 i 75). Kolejność działań oraz odpowiadające im zyski i koszty są następujące: Komiwojażer podróżuje 20 metrów w górę rzeki kosztem 100 dolarów. Dotychczasowy zysk: −100. Odwiedza targ numer 1 i zyskuje 100. Dotychczasowy zysk: 0. Podróżuje 5 metrów w górę rzeki, ponosząc koszt 25. Dotychczasowy zysk: −25. Odwiedza targ numer 3, gdzie zarabia 150. Dotychczasowy zysk: 125. Podróżuje 25 metrów w dół rzeki i tym samym wraca do domu, ponosząc koszt 75. Zysk końcowy: 50. <Wyślij rozwiązanie> [0/100]
1 lip 21:46
Trivial: Gratulacje, potrafisz kopiować!
1 lip 22:10
Mateusz: @Sinus ale takie zadanie ma mało wspolnego z praktyką powiem wiecej to jest zabawa ale bardzo pouczająca sprawdza czy potrafisz myśleć abstrakcyjnie i przy okazji skupia sie na budowaniu w miare solidnej aplikacji a nie zapisaniu programu byle jak byle by działał a pozerał 80% zasobow Tak swoją drogą to chyba z main−a pochodzi.
2 lip 07:29
tn: Bodaj nawet z jakiegoś OIa, czyżby LCA?
2 lip 22:25
Jak to zrobić ?: Main
2 lip 23:14