Skocz do zawartości

Sam Sung

Stały użytkownik
  • Liczba zawartości

    29
  • Rejestracja

  • Ostatnia wizyta

Odpowiedzi dodane przez Sam Sung

  1. Był kiedyś projekt DeDe (od Delphi Decompiler) rozwijany chyba przez daFixer. Program pozwalał na analizę modułów i formularzy, z jakich składa się dany exek skompilowany w Delphi. Jednak nie odzyskiwał on kodu pascalowego. Jedyne, co można uzyskać w sposób automatyczny, to kod asemblerowy. W dodatku nie jestem pewien, czy wspierał VCL 7 (komponenty używane w Delphi 7)...

     

    W przykładach do Delphi jest program Resource Explorer (czy jakoś tak), który dekompiluje zasoby specyficzne dla aplikacji Delphi - formularze dfm oraz listę modułów zawartych w exeku (temu chyba odpowiadają pliki dcp, ale pewności nie mam).

  2. no zaciekawiles mnie...oczywiscie pozostaje problem miejsca. chodzi o to ze mam starego kompa PII 350 wlasciwie kompletny - tak wiec czy mozna go bedzie przetaktowac tak zeby chodzil na samym radiatorze?

    Nie zaszkodzi sprawdzić, co się stanie pentium II bez wentylatora, monitorując temperaturę. W zastosowaniu do podziału łącza taki procek będzie w zasadzie cały czas się nudził, więc może się nie przegrzeje.

    wszystko stoi na mobo Abit Be-6 czy cos takiego...nie pamietam, 64 MB ramu i dysk Quantuma 5.1 GB. co mozna z tym zrobic?

    Takiego dobrego kompa to trochę szkoda na głupi router :)

    dochodzi jeszcze kwestia maskowania sieci tzn kabloweczka:P wiec podejrzewam, ze przydalby sie serwer wiec dochodzi dysk.

    Jeśli chodzi o maskaradę i sterowanie ruchem, to nie trzeba do tego twardego dysku, są gotowe rozwiązania jak np. Freesco ładowane z dyskietki czy inne tego typu wynalazki (można tez zrobić sobie samemu taką "dystrybucję" w oparciu o Linuxa). Twardziel by tam chyba najbardziej hałasował.

     

    Do tego kompa potrzebne będą jeszcze sieciówki - jedna do sieci zewnętrznej i jedna do wewnętrznej + switch. Lub też (zamiast karty i switcha) tyle kart, ile komputerów podłączamy (w linuksie karty można zmostkować i mieć taką samą sieć jak na switchu, albo - jak kto woli - każdy komp może być w oddzielnej podsieci) - tyle że do tego celu nie nadają się realteki, bo się blokują (dobre są 3com'y).

    a tak w ogole to Arctici rzadza :) mam nie jednego :D a zamiast pro tc mam 3 tc, wydaje mi sie troszke lepszy tyle, ze tylko jako wydmuciach!acy :)

    Zgadzam się :) Arctici rządzą :)
  3. Książka będące biblia jesli chodzi o algorytmy: "Wprowadzenie do algorytmów" Cormen. Co tam można znaleśc? Hmm wszystko i jeszcze więcej :).

    Zgadza się, tej książki nie trzeba reklamować. Jednak jeśli to ma być coś po ludzku, dla licealisty, to może M. Sysło "Algorytmy" (a w/w Cormen w dalszej kolejności). Na googlach można znaleźć opis, nie chcę reklamować księgarń ;)

    Pozdrawiam

  4. myślę że nie było by tego problemu jak byś na samym początku stworzył zmienną kop o jeden większą i wypełnił całą zerami

    Byłaby to alokacja niepotrzebnej pamięci i wykonywanie niepotrzebnej operacji. Lepiej wyrabiać sobie dobre nawyki :)
  5. no widzisz z tym, ze u mnie jest problem natury energetycznej:P nie mam serwera dlatego, ze pozeralby on nieznosnie ogromne ilosci pradu, za ktory ktos musialby zaplacic co wbrew pozorom sprawia pewne trudnosci...

    Komp z Pentium 1 (bez HDD) z kilkoma sieciówkami pobiera ok. 20 W. Chyba więcej niż typowy router (nie wiem), ale to by wyszło jakieś 15 kWh miesięcznie.

    a poza tym router stoi cicho w szafce a komp musilaby na zewnatrz buczec:P

    Kup Penitum 166, przestaw na 90 - spokojnie pochodzi z samym radiatorem. Zasilacz przy takim poborze mocy też się nie przegrzeje, wentyl można puścić na 5 V albo jakiś cichy założyć; np. Arctic Fan Pro TC za 7 zł.

    Zaoszczędzone pieniądze z 300 zł starczą na prąd na 1,5 roku :)

  6. najwyrazniej masz wielkie problemy ze wzrokiem....

    Nic ci do tego.

    menedzera zadań z XP, nazywasz "wskaznikiem obciązenia procesora z win98"

    Nie nazywam menedżera zadań z XP "wskaznikiem obciązenia procesora z win98". Odniosłem się do swojej wcześniejszej wypowiedzi: "A DOS czy Win98 nawet same z siebie używają non-stop 100%", którą łaskawie nazwałeś "ciekawą". Skoro nawet nie chciało ci się nic pisać, to uznałem, że z tym fragmentem też się nie zgadzasz.

    moze lepiej juz nic więcej nie pisz.

    O tym nie ty decydujesz. Weź głęboki oddech i spróbuj napisać coś sensowego, może np. jakieś rzetelne argumenty.
  7. Tak? Poprosze o jeszcze kilka innych "ciekawych" tekstów.....

     

    Nawet nie chce mi się nic pisac. Powiem tylko tyle:

    No i co chciałeś udowodnić tym screenshotem? Ja widzę tu znaczne obciążenie procesora, a w idle powinno być max. kilka procent. Na pewno nie jest to rozwiązanie problemu autora tematu.

    A jeśli wierzysz wskaźnikowi obciążenia procesora z win98, to gratuluję. Zmierz sobie temperaturę procka, może ona do ciebie przemówi.

    Pozdrawiam

  8. - zainstaowac dos/win9x

    Te programy pod dosa zawsze obciążają procesor w 100%. Producent niestety nie pomyślał o wywoływaniu instrukcji HLT w pętli idle. A DOS czy Win98 nawet same z siebie używają non-stop 100%, no chyba, że się zainstaluje dodatkowy program "chłodzący" procesor (tylko, że po uruchomieniu Borland C znowu będzie 100%).

    - zainstalowac emulator calego pc i uruchamiac na nim w dosie.

    W takim wypadku Borland C będzie obciążał w 100 % wirtualny procesor, co przeniesie się na 100-procentowe obciążenie realnego procesora.
  9. Tresć jest albo nieprecyzyjna, albo źle przepisana :) Każdy kod znaku ASCII zawiera parzystą ilość bitów - bo jest reprezentowany przez 1 bajt, czyli 8 bitów (liczba parzysta :) ).

    Może chodziło o parzystą ilość bitów ustawionych lub wyzerowanych...

  10. 1) Zmień kompilator, np. na Free Pascal - wersja Win32 (a może Delphi) (rozumiem że TB to Turbo Bascal ;) )

    2) gdzieś we właściwościach systemu (Panel sterowania -> System) można ustawić większą wydajność dla usług działających w tle (domyślne na XP jest dla aplikacji pierwszoplanowych) - może przestanie się zacinać? Można też ustawić wyższy priorytet np. w Winampie. Ale 100% obciążenia pozostanie.

  11. juz bardziej polecam zastosowanie petli for (choć są zapewne leprze i szybsze sposoby ;) ):

    (...)

    Napisany przez Ciebie kod to prawie to samo co autor wątku zapodał w pierwszym poście :mur:

    A jeden lepszy sposób też już jest w tym wątku - tylko trzeba go przejrzeć... konkretnie mam na myśli wzór ogólny podany przez DJ_AnT'a.

  12. Nie zwróciłem uwagi, że chodzi o pascala....

    type  TIntArray = array[0..0] of Integer;  PIntArray = ^TIntArray;procedure SortowaniePrzezWstawianie(tab : PIntArray; rozmiar : Integer);var  i, j, x : Integer;begin  for j := 1 to rozmiar - 1 do  begin	x := tab^[j]; { x - pierwszy element nieposortowanej częci tablicy }	i := j - 1; { i - indeks ostatniego elementu posortowanej częci }	while (i >= 0) and (tab^[i] > x) do	begin	  { robienie miejsca na x }	  tab^[i + 1] := tab^[i];	  i := i - 1;	end;	{ wstawienie x w odpowiednie, wygospodarowane miejsce }	tab^[i + 1] := x;  end;end;
  13. unsigned fibonacci(unsigned n) {

    if(n < 2) return 1;

    else

    return fibonacci(n - 2) + fibonacci(n - 1);

    }

    Obliczanie n-tego wyrazu ciągu Fibbonacciego oraz obliczanie silni z n to 2 doskonałe przykłady na to, kiedy nie należy stosować rekurencji :-|
  14. Sortowanie przez zliczanie to kiepski pomysł. Po pierwsze, można nim sortować tylko liczby całkowite, po drugie - wymaga ono alokacji licznika dla każdej możliwej liczby. Do sortowania liczb od 0 do 31999 wymaga co najmniej 32 kB - śmieszne, jesli mamy posortować tylko 4 liczby :)

    Najbardziej optymalne byłoby utworzenie drzewa decyzyjnego, które zapewni najmniejszą możliwą liczbę porównań. Jesli to jednak ma być bez wielu if'ów, to doskonale nada się dowolny algorytm sortowania z wykorzystaniem porównań, np. przez wstawianie (INSERTION-SORT) lub wybór (SELECTION-SORT).

     

    Przykład - sortowanie przez wstawianie:

    void InsertionSort(int *t, int count){  register int j;  for (j = 1; j < count; j++)  {	register int i;	int key = t[j];	for (i = j - 1; i >= 0 && t[i] > key; i--)	  t[i + 1] = t[i];	t[i + 1] = key;  }}
  15. Zamiast tablic dwuwymiarowych, możesz używac tablic pozornie jednowymiarowych, i samemu obliczać pozycje elementów o zadanych indeksach.

    Załóżmy, że macierze przechowujemy wierszami. Alokujemy tablicę o n wierszach i m kolumnach:

    int *mac1 = (int *) malloc(n * m * sizeof(int));

    Odwołanie do elementu w i-tym wierszu i j-tej tablicy:

    int element = mac1[i * m + j];

    Zamiast przekazywać tablice o rozmiarach 100 na 100, trzeba więc przekazywać wskaźniki do tablic (wcześniej oczywiście zaalokowane i zainicjowane), oraz rozmiary tych macierzy.

  16. Istnieje cała masa możliwych rozwiązań. Jeśli interesuje Cię aplikacja dwuwarstwowa, to tak jak pisał elh może to być Delphi/mySQL, może być też Delphi/MSDE2000 (jest to "darmowa" wersja Microsoft SQL Server 2000 - Microsoft Server Desktop Engine). Zamiast Delphi można użyć Borland C++, można Visual C++, można Javę.... Do bazy można zaprząc PostgreSQL... Można też nie stawiać serwera bazy danych i zainteresować się biblioteką SQLite, która ma interfejs SQL, ale trzyma dane w zwykłym, pojedynczym pliku, i sama jest sobie serwerem i klientem (z tym, że nie jestem pewien, jak to tam jest z uprawnieniami użytkowników).

  17. jak mam procedury sortujace to wywoluje je nastepujaco, np. bubblesort(tablica,zakres); a jest ona zdeklarowana

    procedure bubblesort(abc:dane,i2:integer);

    wiec abc jest zmienna lokalna (tylko na czas sortowania), ktora dostaje wlasnie wartosci "tablicy", zeby nie zmienic wartosci "tablica", bo do innego sortowania musza byc takie same dane (tak wiec operacje odbywaja sie tylko na abc);

    troche nieskladnie napisane, ale chyba rozumiesz o co chodzi :)

    Skoro tak, to nie powinieneś wewnątrz procedury alokować nowej tablicy (a właśnie to robi procedura New).

    Poprzednio mnie to zmyliło, teraz widzę o co chodzi ;) po prostu tam nie ma być ani New ani Dispose (tak jak zrobiłeś). Wystarczą 2 tablice alokowane raz na cały czas działania programu.

    A pomiar czasu wygląda na dobry. Można wiedzieć, z jakimi wzorami wyniki się nie zgadzają?

×
×
  • Dodaj nową pozycję...