Skocz do zawartości

Programowanie


xemi

Rekomendowane odpowiedzi

Witam.

Potrzebuje napisac program ktory bedzie znajdowal droge skoczka na szachownicy tak zeby z zadanego pola przeszedl on po szystkich polach odwiedzajac kazde pole tylko 1 raz. na necie znalazlem ogolny algorytm na to, ale problem polega na tym ze musze jakies wlasne usprawnienia napisac do tego algorytmu, tak zeby dzialal on szybciej. pisal ktos kiedys taki algorytm, albo ma jakies dobre strony z tym tematem??

zaznacam nie chodzi mi o sam algorytm ("z nawrotami") tylko o jakies jego usprawnienie, poniewaz na "golym" algorytmie znaleznienie takiej drogi jest bardzo czasochlonne:/

Odnośnik do komentarza

mam banalny problem w javie, ale sam go nie potrafie rozwiazac bo dopiero ucze sie tego jezyka

mianowicie, jak zapisac warunek sprawdzajacy czy jesli dana liczba jest podzielna przez 2 to...

probowalem na dwa sposoby

 

I sposob:

if (i%2=0) {...}

 

II sposob

int m=i%2;
if m=0 {...}

 

zaden nie chce dzialac; w I przypadku wyskakuje blad 'unexpected type' (zarowno gdy zadeklaruje i jako int jak i gdy zadeklaruje jako float, natomiast w II wyskakuje blad '.class expected' - zupelnie nie wiem ossohozi...

Odnośnik do komentarza

mam do zrobienia takie cos w javie:

 

Zdefiniuj klasę Tablica. Obiekty tej klasy powinny móc zapamiętać do 100 liczb całkowitych ( oczywiście liczba pamiętanych elementów jest zmienna). Podstawowe metody ( konstruktory, gettery i settery ) każdy może opracować sobie sam. My skupimy się na ciekawszych metodach :

- znajdź wartość maksymalną w tablicy

- usuń wszystkie wystąpienia podanej (jako parametr ) wartości x, kolejność pozostawionych elementów może ulec zmianie

- wyeliminuj wszystkie powtórzenia elementów tablicy

 

jak to zrobić?

jeśli chodzi o usuwanie, to myślałem, żeby tym elementom tablicy po prostu przypisać null, ale nie jestem pewien czy to dobry sposób :-k

Odnośnik do komentarza

Na bazie zwyklej tablicy int'ow skupie sie na tych 3 funkcjonalnosciach.

 

- znajdź wartość maksymalną w tablicy

 

najprostsze: private int obtainMaxValue(int[] array)

 

- usuń wszystkie wystąpienia podanej (jako parametr ) wartości x, kolejność pozostawionych elementów może ulec zmianie

Jesli zrobisz sobie tablice 5 elementowa np. new Object[5]; to nie mozesz skasowac z takiej tablicy elementu i oczekiwac, ze ona nagle zrobi sie [4]. Tak dzialaja tablice w Javie, ze przy deklaracji tablicy musisz okreslic jej rozmiar.

 

Ustawienie wartosci na null nie jest najlepszym rozwiazaniem bo jesli potem np. bedziesz sie iterowal po takiej tablicy i nie bedziesz sprawdzal czy przypadkiem element nie jest null'em to dostaniesz NullPointerException. Teoretycznie, moglby taka wartosc zebrac GarbageCollector, ale zasada jest taka, ze tworzonej logiki nie nalezy opierac na GarbageCollectorze bo mozna sie mocno rozczarowac.

 

Wiec jesli masz tablice, z ktorej chcesz kasowac elementy to musisz sie po niej przeiterowac i po prostu skopiowac do nowej kolekcji, np. ArrayListy wszystkie te elementy, ktorych nie chcesz skasowac. Potem na takiej ArrayLiscie mozesz zawolac proste .toArray(); i bedziesz mial tablice. Czemu nie mozna kopiowac z tablicy do tablicy ? Mozna, ale musialbys wczesniej znac docelowa liczbe elementow, ktora wypelni tablice. Mozna tez z System.arraycopy kombinowac, ale szczerze mowiac ja jestem zwolennikiem uzywania Kolekcji (Collections)

 

Nie wiem skad te zadania masz, na jakim etapie jestes wiec podam w miare szybkie rozwiazanie, choc oczywiscie jest kilka innych - moglbys chociazby iterowac sie po tablicy i zliczac liczbe elementow, ktore odpowiadaja wartosci x. Potem od rozmiaru twojej tablicy ( Array.length;) moglbys odjac ta zliczona liczbe elementow i wtedy bys znal rozmiar przyszlej tablicy i moglbys "na zywca" skopiowac z jednej tablicy do drugiej. Ale w tym wypadku musialbys sie 2 razy przeiterowac po tablicy, wiec nie jest to najlepsze rozwiazanie.

 

Latwiej iterowac sie po tablicy i tworzyc nowa ArrayListe (albo cokolwiek z kategorii Java Collections (LinkedList, Vector), a potem ja "skonwertowac" do tablicy jesli juz potrzebujesz koniecznie tablice.

 

nie wiem do konca o co chodzi z ta losowa kolejnoscia wiec zrobilem Collections.shuffle no i jest losowo ;d

 

- wyeliminuj wszystkie powtórzenia elementów tablicy

Tutaj zrobimy podobnie ale zamiast ArrayList uzyjemy LinkedHashSet - Set to taka kolekcja, w ktorej elementy nie moge sie powtarzac; TreeSet to dodatkowo posortowane rosnaco, HashSet - pororzucone losowo, LinkedHashSet to elementy w takiej kolejnosci w jakiej byly dodawane.

 

import java.util.ArrayList;
import java.util.Collections;
import java.util.LinkedHashSet;

public class Test {
public static void main(String[] args) {
	int[] myArray = new int[7];
	myArray[0] = 23;
	myArray[1] = 45;
	myArray[2] = 56;
	myArray[3] = 56;
	myArray[4] = 5;
	myArray[5] = 56;
	myArray[6] = 45;

	int max = obtainMaxValue(myArray);
	System.out.println("Max value in array: " + max);
	System.out.println("--------------------");
	Object[] updatedArray = deleteElements(myArray, 45);
	System.out.println("Size of deleted array: " + updatedArray.length);
	System.out.println("--------------------");
	System.out.println("Deleting non unique elements...");
	Object[] uniqueElementsArray = deleteDuplicateElements(myArray);
	System.out.println("Size of unique array: " + uniqueElementsArray .length);


}

private static int obtainMaxValue(int[] array) {
	int max = array[0]; // pierwszy element
	for (int i = 1; i < array.length; i++) {
		if (array[i] > max) {
			max = array[i];
		}
	}	   
	return max;
}

private static Object[] deleteElements(int[] array, int elementValue) {
	ArrayList<Object> updatedList = new ArrayList<Object>();

	for (int i = 0; i < array.length; i++) {
		if (array[i] != elementValue) {
			updatedList.add((int)array[i]);
		}
	}	  
	Collections.shuffle(updatedList);
	// jesli potrzeba elementy randomo i np. bez powtorzen to mozna HashSet
	// zamiast ArrayList uzyc
	return updatedList.toArray();
}

private static Object[] deleteDuplicateElements(int[] array) {
	LinkedHashSet<Object> updatedList = new LinkedHashSet<Object>();
	int nonUniqueRecords = 0;

	for (int i = 0; i < array.length; i++) {
		Boolean isUnique = updatedList.add((int)array[i]);
		if (!isUnique) {
			nonUniqueRecords++;
		}
	}	  

	if (nonUniqueRecords>0) {
		System.out.println("Deleted " + nonUniqueRecords + " non unique elements");
	}
	return updatedList.toArray();
}

}

Odnośnik do komentarza

Mam takie zadanie:

 

Dane są dwie tablice złożone z liczb całkowitych [X] (n-elementowa) i [Y] (m-elementowa). Traktując je jako zbiory (każdy element danej tablicy jest unikalny) zbudować tablice będące odpowiednikami części wspólnej X i Y, sumy mnogościowej X i Y oraz różnicy X\Y.

 

Coś już napisałem, ale chciałbym, żeby ktoś na to rzucił okiem :)

 

public class Tablice2
{
int n,m;
int tab1[] = new int [n];
int tab2[] = new int [m];
.
.
.

 

void czescWspolna()
{
	int tab3[] = new int [m];	
	int k=0;
	for (int i=0; i<n; i++)
	for (int j=0; j<n; j++)
	if (tab1[i] == tab2[j]) 
	{
		tab3 [k] = tab1 [i];
		k++;
	}
}

 

void sumaMnogosciowa()
{
	int tab3[] = new int [m+n];
	int k=0;
	for (int i=0; i<m; i++)
	{
		tab1 [i] = tab3 [k];
		k++;
	}
	for (int j=0; j<n; j++)
	{
		tab2 [j] = tab3 [k];
		k++;
	}
}

 

void roznica()
{
	int tab3 [] = new int [m];
	int k=0;
	for (int i=0; i<m; i++)
	for (int j=0; j<n; j++)
	if (tab1 [i] != tab2 [j]) 
	{

		tab3 [k] = tab1 [i];
		k++;
	}
}

 

Wydaje mi się, że to może mieć sens, ale nie wiem jaki typ powinny zwracać te metody (dałem pusty, ale obawiam się, że to nie jest dobrze...)

Odnośnik do komentarza

Przeczytałem dość pobieżnie, ale jak na mój gust, to żeby to miało jakikolwiek sens metody muszą zwracać int[], a konkretnie każda z nich tablicę wynikową tab3. Bo inaczej nie będziemy jej mogli w ogóle potem wykorzystać, a jak już tracimy czas na jej zapełnienie, to warto móc coś z nią zrobić :)

Odnośnik do komentarza

ta, tez to tak widze, ze kazda metoda powinna jakas tam tablice zwracac. hmm tak chwilke zerknalem, moze w ogole chodzi o juz spreparowana, gotowa tablice wielowymiarowa (int[][] matrix = new int[5][10]; int matrix[] = {{0, 1}, {0, 1, 2}};) ??

 

Zreszta, ja juz nie pamietam co to matematyka, wiec tu nie pomoge :keke:

 

Wlasnie dlatego takie przyklady sa zalosne bo sie nie zastanawiasz nad najistotniejsza sprawa (JAVA) tylko tym co bedzie efektem jakiegos karkolomnego wzooru matematycznego. Rownie dobrze mogliby zrobic zadanie z przemnozeniem jednego macierzy przez druga, podzielenie jej elementow przez 50, zrobienie czesci wspolnej, po czym wyciagniecie wartosci piatej z prawej ;)

 

Jak widze takie hmm akademickie wywody to troche mam odruch wymiotny :D Ty z jakiejs ksiazki je bierzesz, czy jakis czlowieczek Ci to podsyla ? :D Bo jakbym sie tak Javy uczyl w robocie to bym sie chyba sam podziekowal ;D

 

Ja bym sie skupil najpierw na samej obiektowosci:

- co to jest Klasa, Obiekt, POJO, Pole, Metoda, Static (np. metody statyczne), Enkapsulacja (hermetyzacja; public, private, protected ...), Dziedziczenie, Konstruktor, Interfejs, potem pewnie Exceptions (wyjatki)

 

Bo to jest tak naprawde klucz do Javy, a nie latanie po tablicy prymitywow :)

 

Takie petelki For to troche takie pierdu pierdu :) W kazdym jezyku sa z grubsza podobne i jesli miales cokolwiek doczynienia z jakims jezykiem (C++, Php, Pascal itd) to w kazdym zrobisz podobnie. Juz bardziej edukacyjne byloby miec tablice jakichs Obiektow stworzonych przez ciebie, z jakimis tam polami (+ gettery i settery do nich), po ktorych bys sie iterowal klasa Iterator (wykorzystujac while) bo jest to bardziej obiektowe.

 

No i w ogole na samiutenkim poczateczku wybralbym IDE, czyli srodowisko programistyczne, w ktorym bedziesz pracowal - slabe srodowisko moze skutecznie obrzydzic zycie. W tym jest m.in. sila Javy, ze IDE do niej sa z reguly bardzo dobre, przyjazne itd. (np. Eclipse, NetBeans, IntelliJ IDEA)

 

ps. nie szedlbym tez na skroty i jesli mam metode no to jednak kazdej bym ustawial hmm modyfikator dostepu (Access level modifiers) czyli, czy jest ona public czy private badz protected bo potem przy "miliardzie" warstw (np. DAO's, serwisy, akcje) to predzej czy pozniej sie zgubisz jesli tych modyfikatorow nie ustawisz.

Odnośnik do komentarza
Ja bym sie skupil najpierw na samej obiektowosci:

- co to jest Klasa, Obiekt, POJO, Pole, Metoda, Static (np. metody statyczne), Enkapsulacja (hermetyzacja; public, private, protected ...), Dziedziczenie, Konstruktor, Interfejs, potem pewnie Exceptions (wyjatki)

 

Bo to jest tak naprawde klucz do Javy, a nie latanie po tablicy prymitywow :)

tego go pewnie zaczna uczyc na 3 roku - na razie ma klepac przyklady gdzie jest wiecej matmy niz programowania, tak to jest u nas na wyzszych uczelniach :keke:

Odnośnik do komentarza
[...]

Jak widze takie hmm akademickie wywody to troche mam odruch wymiotny :D Ty z jakiejs ksiazki je bierzesz, czy jakis czlowieczek Ci to podsyla ? :D Bo jakbym sie tak Javy uczyl w robocie to bym sie chyba sam podziekowal ;D

[...]

greg: no ale to sa przeciez dopiero podstawy. na poczatku studiow nie mozna zakladac e kazdy ma podstawy programowania. przeciez nauka podstw tez sie na jakis przykladch musi opierac.

 

ja teraz na SUM na algorytmach to mam praktycznie tylko na algorytmnie sie skupic, jezyk oraz forma prezentacji wynikow jest calkowicie dowolna.

 

A na koniec ja mam pytanie. Potrzebuje napisac program do graficnej prezentacji grafow, oraz, a raczej glownie program w ktorym bedzie mozna bylo sobie taki graf hmm (nie wiem czy dobrze to nazwe) narysowac. Czyli ze klikam sobie gdzies myszka i tam jest wierzcholek, a potem miedzy wybranymi tworze powiazania.

W jakim srodowisku to polecacie?? Dodal ze odpada JAVA i ze praktycznie nie mialem stycznosci (niestety) z pisaniem aplikacji okienkowych:/

Musze to w dosc szybkim terminie zrobic. a narazie nie mam za bardzo pojecia jak sie za to zabrac:/

Odnośnik do komentarza
bede wredny - w srodowisku, ktore znasz.

 

nie ma srodowiska do pisania programow do rozpinania grafow, mozna to zrobic w kazdym :]

no ale wlasnie chodzi o to ze nigdy nie pisalem nic okienkowego.

nie jestem ajkis wielkim programista. pisze tylko to co do szkoly potrzebuje, albo znajomym na studia rzeczy;p

zasadniczo to wszystko co pisalem to bylo robione w Dev'ie

Odnośnik do komentarza
greg: no ale to sa przeciez dopiero podstawy. na poczatku studiow nie mozna zakladac e kazdy ma podstawy programowania. przeciez nauka podstw tez sie na jakis przykladch musi opierac.

No niby tak, ale mam wrazenie, ze po takich zajeciach 90 % studentow powie - eee java (se), co za jakis powalony jezyk, toz to kolejna reinkarnacja (o zgrozo) pascala :D. Moze i fakt, za sam sukces powinno sie uwazac pewnie to, ze w ogole maja tam Jave SE, ale mam wrazenie, ze moznaby to robic 10 x lepiej, tez przy ograniczonych srodkach i zaryzykuje stwierdzenie, ze nawet uzywajac jakichs gotowcow typu tutorial sun'a wyszloby lepiej :)

 

ja teraz na SUM na algorytmach to mam praktycznie tylko na algorytmnie sie skupic, jezyk oraz forma prezentacji wynikow jest calkowicie dowolna.

No tak, ale algorytmy to jednak inna bajka - mozesz go przedstawic za pomoca roznego rodzaju diagramow wiec tutaj w pelni sie zgodze, ze liczy sie myslenie, a forma ma drugorzedne znaczenie. W takiej sytuacji rozbicie matematyki na algorytm (np. silnia czy cokolwiek) jest calkiem ciekawie.

 

w javie to juz jednak troche inaczej wyglada - forma ma znaczenie calkiem spore, juz od samego poczatku jest nacisk chociazby na pisanie tzw. wielbladem, odpowiednie nazewnictwo klas itp. Moze jakis brutalny jestem, ale to samo mogliby w Pascalu robic - no bez kitu, w malo ktorej ksiazce widzialem takie totalnie akademickie przyklady bo nie czarujmy sie, one sa do bani, i na wiekszosc studentow dzialaja pewnie jak plachta na byka :D Polowa pewnie w ogole nie wie co mozna w JAVIE zrobic (moze pokazac najpierw pare przykladow bo moznaby caly rok pokazywac ;) ) i pewnie sa przekonani, ze to jakis tam kod, ktorego efekty dzialania widzimy w konsoli - czyli krotko mowiac jakies gowno :) Prawda taka, ze Java to przede wszystkim technologia, a kod moze wygladac mniej lub bardziej dziwnie, w zaleznosci od tego jaka technologie wybierzemy.

 

Po prostu nie wierze, ze najciekawszym sposobem na nauke jezyka programowania, od zera, jest walkowanie przykladow gdzie jest wiecej matmy. Pewnie to jakis pieprzony matematyk im wyklada, albo gosciu co od 20 lat robi to samo tylko co jakis czas zmieni jezyk ;P

 

A na koniec ja mam pytanie. Potrzebuje napisac program do graficnej prezentacji grafow, oraz, a raczej glownie program w ktorym bedzie mozna bylo sobie taki graf hmm (nie wiem czy dobrze to nazwe) narysowac. Czyli ze klikam sobie gdzies myszka i tam jest wierzcholek, a potem miedzy wybranymi tworze powiazania.

W jakim srodowisku to polecacie?? Dodal ze odpada JAVA i ze praktycznie nie mialem stycznosci (niestety) z pisaniem aplikacji okienkowych:/

Musze to w dosc szybkim terminie zrobic. a narazie nie mam za bardzo pojecia jak sie za to zabrac:/

Delphi - ale tak naprawde zalezy co znasz. Pytanie w ogole, czy musi to byc cos desktopowego.

 

Moglbys to np. we Flashu pierdyknac, albo i html + javascript. Ja szczerze mowiac bym poszukal ... gotowca. Nie wywaza sie otwartych drzwi. Jesli nie wiesz w czym chcesz pisac to naprawde mozna utonac. Ja bym najpierw zobaczyl w czym mozna najszybciej :)

Odnośnik do komentarza
Po prostu nie wierze, ze najciekawszym sposobem na nauke jezyka programowania, od zera, jest walkowanie przykladow gdzie jest wiecej matmy. Pewnie to jakis pieprzony matematyk im wyklada, albo gosciu co od 20 lat robi to samo tylko co jakis czas zmieni jezyk jezyk.GIF

Poniekąd trafiłeś :) Uczy mnie 60-latek... Ciekawe jest jednak to, że koleś sprawia wrażenie (słyszałem też takie o nim opinie) człowieka, który zjadł zęby na obiektówce w c++, a teraz jakoś cięzko mu się przestawić na javę...

Odnośnik do komentarza
[...]

No niby tak, ale mam wrazenie, ze po takich zajeciach 90 % studentow powie - eee java (se), co za jakis powalony jezyk, toz to kolejna reinkarnacja (o zgrozo) pascala :D. Moze i fakt, za sam sukces powinno sie uwazac pewnie to, ze w ogole maja tam Jave SE, ale mam wrazenie, ze moznaby to robic 10 x lepiej, tez przy ograniczonych srodkach i zaryzykuje stwierdzenie, ze nawet uzywajac jakichs gotowcow typu tutorial sun'a wyszloby lepiej :)

[...]

No wlasnie mam podobne doswiadczenia z javy:/ to nie ze nie lubie javy, tylko po prostu nie umie:/ Na studiach ktos probowal (chociaz nie wiem czy to dobre slow) tego, a raczej nawet nie wiem co to dokladnie bylo, ale cos z java :P nauczyc. Na pierwszych zajeciach padlo zdanie "ja nie mam zamiaru was javy uczyc, bo powinniscie to umiec" no i mozna powiedziec ze wtedy sie juz zakonczyla nauka javy ba studiach. jako ze byla to czesc calego przedmiotu i liczyla sie ocena z innego zagadnienia, to wszyscy to olali, tak ze nikt z tego nic nie wiedzial. Nie mowie ze to dobrze, ale skoro gosc mial takie podejscie to skoro sie we wlasnym zakresie ktos tego wczesniej nie nauczyl to i zajecia go nie zmobilizowaly do tego. ale to taki OT

 

[...]

Moglbys to np. we Flashu pierdyknac, albo i html + javascript. Ja szczerze mowiac bym poszukal ... gotowca. Nie wywaza sie otwartych drzwi. Jesli nie wiesz w czym chcesz pisac to naprawde mozna utonac. Ja bym najpierw zobaczyl w czym mozna najszybciej :)

Myslalem o Flashu, ale z AS srednio stoje:/ html i js odpada, (nie umiem js:/)

Co do gotowca, to tak srednio, bo ja musze oprocz samego programu do rysowania zrobic program ktory bedzie w tym jeszcze liczyl najkrotsza sciezke miedzy podanymi wierzcholkami. Plus jest taki, ze to (czyli lizenie najkrotszej sciezki) juz zrobilem, tyle ze kolejne utrudnienie dochodzi:/ oprocz wag na drodze miedzy wierzcholkami, kazdy wierzcholek ma swoja wage. Ale nie liczy sie tej wagi dla wierzcholka z ktorego sie zaczyna i na ktorym sie konczy kazda sciezka. Moze to brzmi laatwo do zrobienia, ale wcale takie nie jest ( nie twierdze ze to jest jakos bardzo trudno zrobic, ale narazie mi sie nie udalo) podstawowy algorytm sie na paru zalozeniach opiera i trzeba teraz dobrze pomyslec jak to zrobic.

Moze jutro bede mial lepszy dzien i cos wymysle konkretnego.

 

PS. co do mojego pierwszego postu w tyn temacie, to zrobilem tamto, znalazlem w sumiena necie w koncu, bardzo dobry algorytm:) heh, na polskich stronach nie bylo nic na temat tego rozwiazania, znalazlem dopiero na angielsko jezycznych stronach.

 

(PO)zdrawiam:)

Odnośnik do komentarza

Ja mam problem z Pascalem. Choć jeśli ktoś się w tym orientuje to zapewne mnie wyśmieje z takim problemem.

Otóż, mam narysować choinkę z bombkami, które będą świecić (mają migać w różnych kolorach tak, żeby w danym momencie każda była innego koloru). Udało mi się sklecić choinkę oraz obwódkę bombek, ale z resztą mam już problem.

program choinka;
uses crt, GRAPH;
var driver,mode,a,b,i:integer;
procedure rysuj;
begin
setcolor(green);
moveto(a,b);
lineto(a+50,b+50);
lineto(a-50,b+50);
lineto(a,b);
setfillstyle(1,green);
floodfill(a,b+25,green);
b:=b+50;
end;
procedure pien;
begin
setcolor(brown);
rectangle(a-20,b+1,a+20,b+20);
setfillstyle(1,brown);
bar(a-20,b+1,a+20,b+20);
end;
procedure bombki;
begin
setcolor(red);
circle(a+50,b,5);
circle(a-50,b,5);
circle(a-50,b-100,5);
circle(a+50,b-100,5);
circle(a+50,b-50,5);
circle(a-50,b+50,5);
end;
begin
writeln('podaj a');
readln(a);
writeln('podaj b');
readln(b);
driver:=detect;
InitGraph(driver, mode, 'C:\TP\BGI');
for i:=1 to 3 do
rysuj;
pien;
bombki;
repeat until KeyPressed;
CloseGraph;
end.

Czy mógłby ktoś dopisać odpowiednie linijki do tego programu żeby było tak jak ma być? :)

Odnośnik do komentarza
panowie, jak w Pascalu pisze się ułamki zwykłe? :>

z tego co wiem to uklamek zwykly to dzielenie jednej liczby przed druga wiec pisze sie to pewnie tak: 1/2 :P

 

natomiast jesli chcesz dzialac bezposrednio na ulamkach zwyklych bez konwersji do float'a czy czegos podobnego i na wyjsciu tez chcesz miec ulamek zwykly to musisz sobie sam napisac do tego funkcje.

Odnośnik do komentarza

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Usuń formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić obrazków. Dodaj lub załącz obrazki z adresu URL.

Ładowanie
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...