Skocz do zawartości

Platyna

Użytkownicy
  • Postów

    2 122
  • Dołączył

  • Ostatnia wizyta

Treść opublikowana przez Platyna

  1. Jak tablicę tworzysz w innym obiekcie to się nie dziw, że ten obiekt Ci jej nie widzi skoro nie jest globalna...
  2. Nie do końca rozumiem, ale przypuszczam, że to ten sam problem na który ja się natknąłem niecałe 2 lata temu. W sensie, że nie kręci się się według globalnej osi x tylko tej już obróconej względem osi y tak? Poważna sprawa! :P Siedziałem nad tym sporo i sobie wtedy nie poradziłem. Powodzenia! :)
  3. Platyna

    GMclan-owe cytaty

    UWAGA! Post, który zacytuję jest nie więcej jak trzecim w historii GMClanu, który czytając rzeczywiście zaśmiałem się na głos! Czytając całość po prostu się uśmiechałem, ale po ostatnich 3 słowach nie wyrobiłem i wyplułem herbatę. :)
  4. Wieszałbym za jaja za takie pytania.
  5. Platyna

    Pole

    A jak ten twój generator działa? Generalnie to chyba możesz mu nadać jakąś wartość y by był na określonej wysokości, nie?
  6. Tak. Tak. +1 A co do tematu to fajki rzeczywiście śmierdzą, ale smak mają niedobry tylko zaraz po odpaleniu, potem są już bez smaku (chyba, że smakowe), a nie pali się dla smaku przecież. Osobiście palę paczkę na miesiąc, albo dwa, jak akurat mnie ochota najdzie, albo zły jestem. I dobrze mi z tym.
  7. Platyna

    Silnia dużych liczb

    Tia. Orientuję się co to SPOJ, ale za dużo zadań stamtąd nie robiłem. Wolę maina.
  8. Ustaw origin sprita na koniec lufy, albo pobaw się lengthdirami.
  9. Platyna

    Silnia dużych liczb

    Ale syfny kod. Nie chce mi się go analizować. Jaką ma złożoność? Generalnie pierwsze co mi się w oczy rzuciło to wewnątrz funkcji odwroc() tworzysz jakąś wielką tablicę stringów temp[]. Tablice powinno się raczej zawsze tworzyć globalnie. To też ci zabiera czas jak za każdym razem alokujesz pamięć. A przecież możesz używać cały czas tej samej tablicy. Generalnie to złożoność oczekiwana jest n^3 na co wskazuje n<=100. n! jest liczbą rzędu n^n czyli (logarytm o podstawie 10 z n)*n cyfr. Logarytm jest pomijalny bo dla 100 jest równy 2. Czyli mamy n cyfr. Mnożenie pisemne dwóch liczb x i y ma złożoność (log10 z x)*(log10 z y) czyli iloczyn ilości cyfr. U nas będzie to więc pesymistycznie n^2. Dobrze robisz, że piszesz własną arytmetykę, ale coś w niej musiałeś sknocić. Bo: n operacji mnożenia dwóch liczb po n cyfr to łącznie daje nam nasz n^3. Powinno być szybko. Nie idzie tego zrobić szybciej więc coś musiałeś implementacyjnie sknocić. Mam Ci to napisać na nowo czy sobie poradzisz? P.S. Skąd jest to zadanie? EDIT: Ach, sorka. Zapomniałem o 100 przypadkach testowych. Czyli mamy t*n^3. To już za dużo. Pomyślę nad czymś szybszym. Generalnie do własnej arytmetyki można zamiast komórki na każdą cyfrę to sklejać ze sobą long longi. To już nam znacznie zmniejszy stałą. EDIT2: Dobra, już wiem jak ominąć te przypadki testowe. Jaki jest limit na pamięć? Bo moim zdaniem wystarczy zastosować spamiętywanie. Obliczasz raz wszystkie wyniki silni od 1 do 100 i spamiętujesz w tablicy. Żeby obliczyć x! należy również obliczyć (x-1)! więc po co to robić kilka razy? Obliczasz do setki i wyniki pamiętasz. Potem tylko wypisujesz z tablicy. Masz do spamiętania n liczb po n cyfr. Powinno się bezproblemowo zmieścić w pamięci.
  10. Zawsze ogranicza Cię pamięć przecież. Więc nie da się. A do zwiększania ilości po stworzeniu to musisz tablicy dynamicznej jakiejś użyć. Chociażby STLowy vector dla C++. W C# chyba też coś takiego jest.
  11. lengthdiry zwracają składowe pozioma i pionowa wektora. Twój pojazd jest obrócony w kierunku dir i chcesz sprawdzić czy nie ma czegoś w odległości odl przed nim tak? Długość i kierunek to razem jakiś wektor. Prawda? My chcemy uzyskać współrzędne czyli dowiedzieć się o ile ten wektor przesuwa nam coś w poziomie, a o ile w pionie. Czyli poznać jego składowe. GML shift_x = lengthdir_x(dir,odl); shift_y = lengthdir_y(dir,odl); Współrzędne naszej linii to będą więc (x,y) oraz (x+shitf_x , y+shift_y) Kolejność argumentów w lengthdirach może być odwrotna.
  12. Platyna

    Foto-galeria

    To nie Japan. On jest tęgi chłopak. :P
  13. && to operator logiczny. Przyjmuje 2 argumenty. Jeden piszemy po lewej stronie drugi po prawej. Tak samo jak z +, -, * oraz /. To też są operatory dwuargumentowe. Argumentami dla && są warunki. Warunek1 && Warunek2 Np: GML (aaa=3) && (bbb>5) Całe to wyrażenie też jest warunkiem. Warunek jest spełniony jeśli jednocześnie i pierwszy i drugi jest spełniony. Czyli np: GML if( a=8 && b<10 ) {...} Instrukcje w nawiasach klamrowych wykonają się tylko i wyłącznie wtedy jeśli zmienna a jest równa 8 oraz zmienna b ma wartość mniejszą od 10. Mam nadzieję, że rozumiesz. Bardziej łopatologicznie nie potrafię. EDIT: Wykrzyknik natomiast jest operatorem JEDNO-argumentowym. Argument piszemy PO wykrzykniku i argument też jest warunkiem. Wykrzyknik oznacza po prostu NIE. GML if( !(a=8) ) oznacza "Jeśli a NIE jest równe 8". Czyli może być większe, albo mniejsze.
  14. Nie. On je ustawia i tyle. Nie ma czegoś takiego jak "omijanie ich". Są tylko różne sposoby ich ustawiania. A konkretnie to hspeed i vspeed są tymi najważniejszymi. A speed i direction to też tylko jakiś sposób ustawiania hspeed i vspeeda.
  15. GML if (mouse_check_button(mb_left) && !keyboard_check(vk_control)) { move_towards_point(mouse_x,mouse_y,2) } else { speed = 0 } if keyboard_check_pressed(vk_control) { speed = 0; instance_create(x,y,bolt) }
  16. Jesteś pewien? Dał bym sobie głowę uciąć, że move_towards_point() nie wykonuje przesunięcia o wektor tylko ustawia speeda i directiona odpowiednio. EDIT: Dawidds, gamoniu! Nie masz racji. Ja mam. Sprawdziłem.
  17. Więc pokaż gdzie zmieniasz tego speeda na wartość inną od 0. I po prostu nie rób tego. A co właściwie chcesz osiągnąć? Jak klikasz lewy to ma jechać czy nie? Czy zależnie od tego czy Ctrl jest wciśnięty?
  18. Nie wiem czy wiesz, ale DOKŁADNIE TO robi move_towards_point(). A to czy jednorazowo czy nie to zależy od eventu w którym to umieścimy.
  19. Sprawdzić wszystkie dyski w poszukiwaniu tego na którym znajduję się windowsowe katalogi jak WINDOWS, Program Files, Documents and settings i tym podobne. Wtedy ewentualnie powiedzieć użytkownikowi, że wykryto dany dysk i spytać czy chce wybrać inny.
  20. Rozciągnąć? To image_xscale i image_yscale. Ale wątpię by ładnie to się prezentowało.
  21. Jak pójdziesz to liceum Staszica to znajdziesz całą masę kolegów, rozpijesz się, będziesz się cieszył ze średniej 2.0, skończysz z tanim winem, albo ruskim szampanem pod mostem oraz tytułem laureta z jakiejś olimpiady i tym samym wolnym wstępem na dowolną uczelnię w kraju. Mnie to odpowiada. :P
  22. Tak. Języka się może każdy nauczyć w jeden dzień, a liczy się to jak się tę wiedzę potrafi wykorzystać. A studia na polibudzie to i doświadczenie i umiejętności. Bo praktyki tam jest pełno. To nie UW gdzie wpychają Ci do łba masę zbędnej teorii. A jak się człowiek postara to i jakie stypendium może dostać to jeszcze będzie się na tym dorabiać. :P
  23. A ja powtórzę. Politechnika Warszawska i pracodawcy sami się będą o Ciebie zabijać. Inżynierów tera wszędzie potrzebują. Oczywiście nie mówię, że koniecznie musi to być PW, bo dużo jest w Polsce sensownych uczelni nie koniecznie w Warszawie. Ale to daje jako przykład, bo o tym po prostu wiem bo znajomych tam mam. Za granicą nawet ma prestiż PW.
  24. Ja mimo wszystko stwierdzam, że jak wybierzesz którekolwiek z liceów przeze mnie wymienionych to oni Cię nauczą programować porządnie. Przygotują Cię do Olimpiady. A jak w olimpiadzie masz sukcesy to za algorytmiki jesteś kozak, a jak te bardziej złożone algorytmy kodzić umiesz to możesz śmiało stwierdzić, że programować umiesz na wysokim poziomie. Bo programowanie to nie jest znajomość języka. Język możesz znać słabo, ale ważne byś był w nim biegły i umiał zakodzić skomplikowane rzeczy. A każde z tych liceów przygotuje Cię do matury z matmy, fizy i informatyki tak, że na dowolne studia się dostaniesz. A wbrew temu co niektórzy mówią papier jest cholernie ważny. Papier jest zbędny tylko jeśli człowiek potrafi się naprawdę dobrze zakręcić, a to jest rzadkie. Z papierem nie robisz kompletnie nic, a zarobki masz spore. Politechnika Warszawska i pracodawcy sami się będą o ciebie zabijać. To po pierwsze. A po drugie to ważne by robota sprawiała przyjemność. A kariera naukowa to fajna rzecz pod tym względem.
×
×
  • Dodaj nową pozycję...