-
Postów
462 -
Dołączył
-
Ostatnia wizyta
Treść opublikowana przez rezo_
-
Instalator zaleca 18 667 MB.
-
A u mnie podczas ostatniego etapu instalacji ("Completing Instalation") wyskakuje okno "Windows setup could not configure windows to run this computer hardware" i nastepuje deinstalacja...
-
Twoje zadanie sprowadza sie do rozwiazania problemu wyznaczania dwuelementowych kombinacji bez powtorzen ze zbioru wejsciowego. Przykladowe rozwiazanie. void comb(char * tab, int length, int nr=0){ /*tab-twoje druzyny-zakladam nazwy jednoznakowe, length-ilosc druzyn*/ if(nr<length-1) { for (int i=nr+1; i<length; i++) cout<<tab[nr]<<'-'<<tab[i]<<endl; comb(tab,length,nr+1); }}Wywolanie: comb("abcd",4);//"abcd"-twoje druzyny,4-bo jest ich 4 nie?Wyjscie: a-ba-ca-db-cb-dc-d
-
Program Generowania Drzewa Rozpinającego Grafu Wszerz Delphi
rezo_ odpowiedział(a) na SPEEDY2005 temat w Programowanie
Przepisz sobie na delphi. Zakladam ze graf masz na macierzy adiacencji. const int maxa=5 /*zalozmy ze maksymalnie 5 wierzcholkowe grafy bedziesz rozpatrywal*/int graf[maxa][maxa]={0,1,0,0,1, /*przykladowy graf na macierzy adiacencji*/ 1,0,1,1,1, 0,1,0,1,0, 0,1,1,0,1, 1,1,0,1,0};enum kolory {bialy, szary, czarny}; /*do kolorowania wierzchokow*/kolory kolor[maxa]; /*przechowuje kolor danego wierzcholka*/int d[maxa]; /*tablica odleglosci od korzenia Twojego drzewa, np d[1] zawiera w jakiej odleglosci od korzenia jest wierzcholek nr 1*/int par[maxa]; /*tablica rodzica dla kazdego wierzcholka, np par[1] zawiera nr wierzcholka ktory jest rodziciem wierzcholka 1*//*Teraz zdefiniujemy kolejke bo przyda sie do BFS'a, jesli masz mozliwosc uzyj jakiej bibliotecznej.*//*------KOLEJKA---------*/int kolejka[maxa];int last=-1;bool empty(){ if (last>=0)return false; else return true;}void put(int w){kolejka[++last]=w;}int get(){ if(!empty()){ int tmp=kolejka[0]; for (int i=1; i<=last; i++)kolejka[i-1]=kolejka[i]; last--; return tmp; } else cout<<"KOLEJKA PUSTA";}/*-----KONIEC KOLEJKI------------*//*pora na gwozdz programu czyli algorytm przeszukiwania wszerz czyt. BFS*/void bfs(int tab[][maxa], int n, int s){ /*tab-twoj graf, n-rzeczwista ilosc wierzcholkow <=maxa, s-wierzcholek ktory bedzie korzeniem*/ for (int i=0; i<n; i++){ // ustawiamy dane startowe kolor[i]=bialy; par[i]=-1; d[i]=-1; } d[s]=0; /*dla korzenia ustawiamy odleglosc od korzenia na 0, logiczne nie?*/ kolor[s]=szary; put(s); /*odkladamy go do kolejki, dalej szuru buru troche i po krzyku, nie bede sie rozpisywal*/ while (!empty()){ int u=get(); for (int i=0; i<n; i++){ if (tab[u][i]){ if (kolor[i]==bialy){ kolor[i]=szary; par[i]=u; d[i]=d[u]+1; put(i); } } } kolor[u]=czarny; }} Po uzyciu funkcji BFS korzeniem Twojego drzewa jest wierzcholek przekazany w parametrze funkcji s. Jak chcesz wiedziec jaka jest odleglosc od korzenia dla jakiegos wierzcholke to uzywasz d[nr_wierzcholka], jak chcesz odtworzyc droge od danego wierzcholka do korzenia to musisz skorzystac z utworzonej tablicy rodzicow 'par' , np tworzac funkcje rekurencyjna path: void path(int s, int v){ if (v==s) cout<<s; else if (par[v]==-1) cout<<"Droga nie istnieje"; else { path(s, par[v]); cout<<" -> "<<v; }}; Implementowalem pod natchnieniem Wprowadzenia do Algorytmow Cormena. Jak nie czaisz bazy to odsylam tam. -
W Windows Vista pole "Uruchom" w starcie jest domyslnie niewidoczne. Uzyj kombinacji klawiszy tak jak pisze westsajd lub odblokuj pole "Uruchom" w starcie. Jak to zrobic jest napisane w faq na 1 stronie w temacie Windows Vista.
-
Naprawde nie czytasz tych postow? Przeciez pisalem ze w tym przypadku iteracja jest lepszym rozwiazaniem i zreszta sam zaproponowalem rozwiazanie za pomoca do while ;)
-
Nie mydl oczu tymi plikami i dziedziczeniem, bo to czy pracujesz z tysiącami plikow z dziedziczeniem po 350 klasach nie ma tu zadnego znaczenia. Rekurencje stosujesz w konkretnej funkcji, a funkcje maja byc (w miare mozliwosci) krotkie i zwiezle (no chyba ze Twoje maja po 1000 lini kodu, ale to by tylko o Tobie zle swiadczylo - lecz o takie rzeczy Cie nie podejrzewam). Poza tym gdybys doczytal moj wczesniejszy post nie pisałbyś ze kazda petle chcialbym zastepowac rekurencja, gdyz wyraznie napisalem ze czesto rozwiazania iteracyjne sa duzo "bardziej eleganckie" i jak najbardziej nalezy je stosowac. Nie staram sie postawić rekurencji nad rozwiązaniami iteracyjnymi ani na odwrót, zawsze nalezy wybrac rozwiazanie optymalne do problemu. Probuje Ci tylko uzmyslowic ze stosowanie rekurencji nie ogranicza sie jedynie do drzew, grafów czy problemu konika szachowego, lecz z powodzeniem mozna ja stosowac na codzien, co jednakze wymaga dobrego jej zrozumienia. Pozdrawiam
-
Jesli tylko potrafisz sformulowac prawidlowy warunek koncowy to stosowanie rekurencji nie jest w zadnym stopniu naduzyciem - choc czesto rozwiazanie iteracyjne jest "bardziej eleganckie" - tak jak np w przytoczonym w tym watku problemie. Zaleta rekurencji jest zwiezlosc zapisu. Rekurencja zwiększa takze czytelność rozwiązania oraz łatwość jego modyfikacji w stosunku do równoważnego rozwiązania iteracyjnego - lecz jesli tak jak piszesz dbanie o jej poprawne dzialanie nastarcza Ci problemow to faktycznie pownienes sobie ja darowac ;)
-
To juz zalezy od tego jak dobrze masz ja opanowaną ;)
-
A przejrzec ostatnia strone tematu nie laska ? Kilka postów nad waszymi toczy sie dyskusja na temat tego modu wraz z nazwa i linkiem....
-
Zajdzie przepelnienie stosu. Zaden kompilator C/C++ domyslnie nie optymalizuje rekurencji ogonowej. To o czym piszesz oczywiscie mozna osiagnac, lecz po przez kompilacje kodu z odpowiednimi parametrami, pozwalajacymi kompilatorowi na optymalizacje, na co nie zawsze mozna sobie pozwolic. Oczywiscie jest tak jak napisales, cin ustawia failbit, ale zauwaz ze wtedy zmienna pozostaje niezainicjalizowana. W konsekwencji zawiera w sobie jakies smieci i to czy spelni if'a i nie dojdzie do przepelnienia stosu zalezy juz od tego jakie smieci w niej beda.
-
Tak jak pisal Grzybiarz Stos jest w RAM'ie, tak jak i Sterta (lecz w roznych miejscach). To ile miejsca na stos zostanie przeznaczone dla kazdego watku zalezy od kompilatora i Systemu. W systemie Windows domyslny rozmiar stosu dla pojedynczego watku to wlasnie 1MB-co zgadza sie z Twoimi obserwacjami.
-
Tak ale to juz kwestia obslugi zlosliwych danych ktora dodatkowo mozna zaimplementowac. Wystarczy po kazdym wczytaniu zmiennej czyscic bufor cin'a i Twoj napis nie sprawi zadnego klopotu. gcc version 2.95 19990728 (release) - zaskakuje za pierwszym razem po podaniu napisu..
-
No Pelzak ale jego programowi to przepelnienie stosu na pewno nie grozi, musialby naprawde zawziecie setki razy wpisywac za kazdym wywolaniem te zmienne a i b z konsoli wiec raczej szybciej by sie kapnal ze cos jest w if'ie nie tak niz by doprowadzil do przepelnienia stosu :P Poza tym przepelnienie stosu nie jest takie zle, szybciej sie w takim wypadku kapniesz ze zwalone jest cos w rekurencji niz w przypadku gdyby twoj program nie wiedziec czemu stal w miejscu i nic nie robil (tkwil by w nieskonczonej petli while). A co do przedstawionego problemu to ewentualnie ta rekurencja lub do while: do { cout << "Wprowadz a i b tak, aby ich suma byla wieksza od zera:\n"; cin >> a; cin >> b;} while (a+b <= 0);
-
OMG ale sobie chłopie problem znalazłeś, przenieś sobie na prawą stronę jak sie zainstaluje i po bólu. Nawet w arabskim Windowsie (a oni czytaja od prawej do lewej) skróty tworzą się od lewej strony i żyją ludzie i nie marudzą.
-
Organizuj->Układ -> I tu odznacz pole Panel Poglądu. Nazwy moga troche odbiegac od Twoich gdyz korzystam z angielskiej wersji systemu i nie wiem jak dokladnie w polskiej jest przetlumaczone. ;)
-
Do C++: Symfonia C++ Grębosza Do C: Jezyk ANSI C
-
Odkopuje temat gdyz fani gatunku moga byc zainteresowani :) Jakis czas temu powstal mod umożliwiający grę w Planescape: Torment w nieregularnych dla niego rozdzielczościach. http://www.gibberlings3.net/widescreen/ Osobiscie gram w 1280x800 i gra wyglada cudnie, w polaczeniu z lejacym sie litrami klimatem zaden fallout 3 czy inne nowe RPG w 3D sie nie umywaja. Co wazniejsze mod dziala dla wszystkich gier na silniku Infinity, takze pora wyciagnac z polki zakurzone BG I/II czy ID :)
-
Wylacz AHCI w BIOS'ie, zainstaluj jeszcze raz XP i zobacz czy pojdzie.
-
Ranking Wydajności Dysków Twardych 2,5" = Wyniki Hd Tach 3.0.1.0
rezo_ odpowiedział(a) na pmp temat w Laptopy, Tablety, 2w1
Grandmaster pisze to z przymruzeniem oka, wiadomo ze roznice sa marginalne ;) Nie OT'ujmy. Pozdrawiam -
Ranking Wydajności Dysków Twardych 2,5" = Wyniki Hd Tach 3.0.1.0
rezo_ odpowiedział(a) na pmp temat w Laptopy, Tablety, 2w1
No i czego dowodzi Twoj test :P ? Zapodales test w RAID0 wiec jak chcesz cos udowodnic to pusc test jednego dysku, nadal uwazam ze Samsung wymieka :) -
Takze polecam Virtuala, sam korzystam i jestem zadowolony. A jesli nie to instalacje robisz najnormalniej w swiecie, wkladasz plytke z Linuxem(na poczatek polecam Ubuntu) i instalujesz go na tej wolnej partycji, on juz sam zadba o to zebys podczas startu mial wybor miedzy Vista a Linuxem.
-
Wszystko O Seagate Barracuda 7200.11
rezo_ odpowiedział(a) na m15m temat w Dyski SSD, HDD, CD-ROM, DVD, Pendrive
To znaczy gdzie masz niby ten spadek? Bo ja tu widze ze masz wiekszy odczyt i krotszy czas dostepu na tym drugim tescie, wiec dysk pracuje teraz nawet szybciej. A Burst Speed to jest nieistotny test i jego wachania przy robieniu testow jeden po drugim moga czasem nawet okolo 100 MB wynosic ;) -
A nie masz tam czasem katalogu Windows.old ? Tam powinny byc pliki poprzedniej instalacji ktore mozna wykasowac.