Przeszukaj forum
Pokazywanie wyników dla tagów 'Programowanie'.
Znaleziono 4 wyniki
-
Program rysujący idealny znaczek Twilight Sparkle, napisany w C++, korzystający z bibliotek SDL i OpenGL. Nie ma tu żadnych wczytywanych obrazków, wszystko liczy się na bieżąco. Kod: Wynik: Wsystko to powstało po wczesniej przeprowadzonej analizie znaczka, dzięki której wyprowadziłem wzory: Rezultat pokazany na układzie współrzędnych: Wszystkie wzory i niektóre notatki podane są w moim utworze dla Twi: https://www.youtube.com/watch?v=h3Vw5PFta2s
- 10 odpowiedzi
-
- programowanie
- twilight sparkle
- (i 5 więcej)
-
Jak w temacie - mój mały warsztacik ^^ Założyłem go z dwóch powodów. Pierwszy, w sumie troszkę egoistyczny - doszkalanie samego siebie i nabieranie coraz to większego doświadczenia w programowaniu. Drugi - abyście WY mogli skorzystać z moich umiejętności i jednocześnie mogli skorzystać z tego, co dla was stworzyłem. Teraz głównie na temat programowania - piszę pod Microsoft Windows Vista/7/8/8.1/10 (brak XP ). Do odtwarzania wykonywanych przeze mnie programów potrzebny będzie Microsoft .NET Framework 4.5. Piszę aplikację z GUI. I to w zasadzie tyle, zapraszam do komentowania, wysyłania próśb i tak dalej i tak dalej ^^
- 8 odpowiedzi
-
- 1
-
- programowanie
- c#
- (i 8 więcej)
-
Przenoszę to z wątku o spotkaniach w Warszawie, żeby nie robić spamu. Na początek ciekawostka, która niszczy system (czyli powinno się spodobać Chemikowi): https://www.destroyallsoftware.com/talks/wat Na ostatnim spotkaniu ktoś coś mówił o rekurencji w trójkącie pascala. Spróbuj tak: /* row - row number, starting from 1, pos - position in a row, starting from 1 */ unsigned long long pascal(int row, int pos) { if ((row < 1) || (pos <1) || (row < pos)) { return 0ul; } if ((pos == 1) || (pos == row)) { return 1ul; } return pascal(row-1, pos-1) + pascal(row-1, pos); } Problem w tym, że czas wykonania tej funkcji będzie posnął wykładniczo i dlatego to nie jest dobre rozwiązanie tego problemu. Hm, może powinienem na to założyć osobny wątek. Odpowiedź: Dziękuję, że piszesz. To ja pytałem o ten Trójkąt Pascala (w realu nazywam się Witek - jestem jedną z nielicznych osób, które były w sobotę u Arpegiusa i to ja męczyłem Ciebie wtedy na meecie w Lisopadzie). Problem polega na tym, że kod ma być w Pythonie lub Logo, a nie w C++. Moja odpowiedź: Po pierwsze napisałem, że to jest tak naprawdę źle, bo za długo będzie liczyć, wielokrotnie wykonując pascal() dla tych samych argumentów. Lepsze rozwiązanie wykorzystuje tablicę trójkątną do memoizacji. Przy czym nawet tego nie kompilowałem, więc pewnie gdzieś jest błąd. Aha i to nie jest odporne na wątki, do tego memory musiałoby być parametrem funkcji pascal_rec. unsigned long long *memory = NULL; // For memoization. static unsigned long long pascal_rec(int row, int pos); // Recursive helper function /* row - row number, starting from 1, pos - position in a row, starting from 1 */ unsigned long long pascal(int row, int pos) { if ((row < 1) || (pos <1) || (row < pos)) { return 0ul; } // Stupid values if ((pos == 1) || (pos == row)) { return 1ul; } // Trivial problem /* An even better solution would be to keep memory, resize it with realloc and fill as needed, but let's keep it simple and stupid. */ memory = calloc(((row-1)*(row-2))/2, sizeof(unsigned long long)); if (memory == NULL) { return 0; } unsigned long long ret = pascal_rec(row-1, pos-1) + pascal_rec(row-1, pos); free(memory); memory = NULL; return ret; } static inline ind(int row, int pos) // Compute index in memory { return (row*(row-1)/2) + (pos-1); } static unsigned long long pascal_rec(int row, int pos) { if (memory[ind(row,pos)] != 0) // Advantage of memoization - cutting off recursive calls on the same arguments as in the past. { return memory[ind(row,pos)]; } if ((pos == 1) || (pos == row)) // Trivial problem { memory[ind(row,pos)] = 1ul; } else { memory[ind(row,pos)] = pascal_rec(row-1, pos-1) + pascal_rec(row-1, pos); // Use recursion, but store intermediate results in memory } return memory[ind(row,pos)]; } Ugh, ale ten edytor tekstu jest toporny. A na inne języki programowania to sam sobie przetłumacz. Tutaj jest tylko idea. To teraz problem ode mnie: Mamy tablicę n-1 elementową z unikatowymi wartościami od 0 do n-1 (albo jak kto woli od 1 do n). To znaczy że są w niej wszystkie liczby z podanego zakresu, za wyjątkiem jednej. Znajdź tę brakującą liczbę.
-
Czeeeść. Szukam mentora, który miałby czas, cierpliwości ciut i który zna LUA. Mam chęci nauczyć się tego, ale nie mam pojęcia jak za to się zabrać. Jest tu ktoś taki?
- 8 odpowiedzi
-
- LUA
- Programowanie
- (i 5 więcej)