GRY-Online.pl --> Archiwum Forum

(Programowanie w C/C++ i nie tylko)----(Dla laików i ekspertów)----(cz.6)

24.09.2005
11:31
smile
[1]

KULL [ Gladiator ]

(Programowanie w C/C++ i nie tylko)----(Dla laików i ekspertów)----(cz.6)

cout << "--------------------------[Przydatne strony]............... ";


"NEW - Nowe Linki";

[!!!] https://lew.tu.koszalin.pl/~abernat/polish/wprcpp.htm [Kurs C++]
[!!!] https://www.4programmers.net/download.php/id=72 [O programowaniu]
[!!!] https://www.programuj.com [O programowaniu]
[!!!] https://members.lycos.co.uk/codersteam/infopage.php?id=16 [Kursy, nie tylko Cpp]
[!!!] https://www.code-maker.prv.pl/ [WinAPI, DirectX, FMOD, SDL, itd.]
[!!!] https://kolos.math.uni.lodz.pl/~user/user/index.php?p=index [C++, Kursy, Algorytmy, Artykuły, Zagadki]


"[PL]";

[!!!] https://www.keeller.kompozytor.net/ [Kurs C++]
[!!!] https://www.physd.amu.edu.pl/~tomekkaz/ [Podstawy C++]
[!!!] https://3miasto.net/~chq/ [Kurs C++]
[!!!] https://www.avocado.risp.pl/ [m.in. kursy C++: /pliki do pobrania/teksty/.../]
[!!!] https://www.kursc.terramail.pl/kursc/ [Kurs C++]
[!!!] https://jdomaradzki.republika.pl/cw.html [materiały o C++ z Politech. Wroc.]
[!!!] https://www.playcom.republika.pl/ [duzo ciekawych, gotowycgh programow (pascal i c++) ]

https://stud.wsi.edu.pl/~webber/czarny/?link=cpp
https://jdomaradzki.republika.pl/cw.html [materiały o C++ z Politech. Wroc.]
https://www.phys.uni.torun.pl/~kgrabcze/zajecia/
https://www.elektronet.prv.pl/
https://www.intercon.pl/~sektor/cbx/

https://stud.wsi.edu.pl/~sistudem/ [Podstawy C++]
https://lisek99.w.interia.pl/ [Programowanie w C/C++ pod DOS, WIN, LINUX]
https://maczek.info.bielsko.pl/~zbiju/ATH/ [Ciekawe rzeczy do ściągnięcia]
https://www.sztolnia.pl/?p=faq_pcp
https://www.algorytm.cad.pl/
https://www.republika.pl/piotrciskowski/dydaktyka/materialy.zima.htm#Informatyka3L
https://sprocket.ict.pwr.wroc.pl/~jablonski/
https://www.wemif.pwr.wroc.pl/labc/


"[ANG]";

https://www.gametutorials.com/Tutorials/c++/Cpp_Pg1.htm
https://www.cprogramming.com/cgi-bin/source/source.cgi




cout << " ...............[DOWNLOAD]............... ";

https://sourceforge.net/projects/dev-cpp/ //(Dev-C++ 4.9.9.0 PL - kompilator C/C++)
https://www.webhostgalaxy.com/mirrors/eckelbooks/TICPP-2nd-ed-Vol-two.zip // "Thinking in C++" Tom 2
https://www.webhostgalaxy.com/mirrors/eckelbooks/TICPP-2nd-ed-Vol-one.zip // "Thinking in C++" Tom 3
https://www.webhostgalaxy.com/mirrors/eckelbooks/ // Darmowe pubikacje elektroniczne o programowaniu
https://www.wemif.pwr.wroc.pl/labc/labc/lab1/lab1a.html //Borland C++ 3.1





cout << " ...............[INNE]............... ";

https://www.warp.arx.pl/ [czasopismo WARP]




cout << " ...............[Literatura programisty]............... ";

Symfonia C++ J.Grębosza
Thinking in C++
Pasja C++ J.Grębosza
Mój pierwszy program wydawnictwa HELP
Książeczka "Programowanie w C++" od Komputer Swiat - Dla BARDZO początkujących (https://www.komputerswiat.pl/informacje/archiwum/bk0105.html)
"C++ Styl Programowania" Tom'a Cargill'a.
"Język ANSI C" Kernighan, Ritchie.



cout << " ...............[Poprzednie wątki]............... ";

[1] https://forumarchiwum.gry-online.pl/S043archiwum.asp?ID=3073834&N=1
[2] https://forumarchiwum.gry-online.pl/S043archiwum.asp?ID=3124999&N=1
[3] https://forumarchiwum.gry-online.pl/S043archiwum.asp?ID=3228514&N=1
[4] https://forumarchiwum.gry-online.pl/S043archiwum.asp?ID=3620101&N=1
[5] https://forumarchiwum.gry-online.pl/S043archiwum.asp?ID=3847852&N=1

24.09.2005
12:12
[2]

Qbaa [ Senator ]

znam fajną stronkę o pisaniu znanych gier logicznych. zawiera omówione algorytmy oraz gotowe kody źródłowe w pascalu i c++
może komuś się spodoba stronka :)

ps. strona czasem dziwnie działa :(

24.09.2005
12:15
[3]

pecet007 [ ]

ja ostatnio zacząłem sobie gierkę w C++/SDL'u pisać, zobaczymy co z tego wyjdzie :P

24.09.2005
12:16
[4]

pecet007 [ ]

a tak btw: nie wiem jak mogło tego linka zabraknąć:

26.09.2005
21:36
smile
[5]

KULL [ Gladiator ]

A mozecie mi cos polecic do PHP? Od jakiej ksiazki zaczac sie uczyc ?? I czy jest roznica jak mam ksiazke php 3, czy php 4 lub 5 ?? Duze sa roznice? Od razu chyba najlepiej najnowsza brac ??

Co do ksiazki to mysle tutaj o pozycji dla bardzo poczatujacych. Od zera.

26.09.2005
22:03
smile
[6]

reds23 [ redsov ]

odnosnie PHP to szczerze polecam (na poczatek) ksiazke:

wyd. Helion
https://helion.pl/ksiazki/phpszs.htm

ksiazka swietna dla poczatkujacego, niesposob niezrozumiec ...
wszystko wspaniale, powioli, dokadnie wyjasnione!
szczerze polecam na poczatek!!

26.09.2005
22:36
[7]

KULL [ Gladiator ]

reds23 --> a jest jeszcze ksiazka "PHP i MySQL. Dynamiczne strony WWW. Szybki start" jest tutaj wiecej o MySql. wiesz moze czy Duzo sie one od siebie roznia?? Ktora lepiej ??

bo niby sam php z tego co czytalem kursy w Internecie to jest wypisz wymaluj C/Cpp :). Z tym, ze niby latwe, latwe, a nie mam pojecia jak sie zabrac za pisanie stronki w php :/.

27.09.2005
09:12
[8]

Regis [ ]

Ja PHP i MySQL-a uczylem sie z internetu. Tj. z tutoriali. Ksiazek po dzis dzien nie posiadam. Polecam www.php.pl, jesli chodzi o zrodla wiedzy. Natomiast jesli chodzi o wersje php - zacznij od php4, lub php5. Starsza wersja to juz prehistoria, 4 tez powoli sie starzeje, ale moim zdaniem latwiej przejsc na obiektowe php5 jak sie ma podstawy w zwyklym php4.

05.10.2005
12:22
smile
[9]

KULL [ Gladiator ]

Coz, musze powoli wybrac temat na zaliczenie informatyki :). Ktory z tej listy mozecie mi polecic ? Aby byl prosty i w miare szybki do napisania :). No chyba, ze macie juz taki, to chetnie bym go zobaczyl :]. Jak nie z listy, to zawsze moge zaproponowac wlasny pomysl. Ale jaki? :)


LISTA PROPONOWANYCH TEMATÓW

1. Zliczanie i sortowanie słów ze standardowego wejścia
2. Wyszukiwanie i zamiana wyrażeń regularnych w zbiorze wejściowym
3. Wyszukiwanie pliku lub tekstu na dysku
4. Realizacja struktury przechowującej dowolnie duże liczby. Funkcje wykonujące działania na tych liczbach (ADD, SUB, MUL, DIV)
5. Operacje na macierzach dodawanie, mnożenie, wyznacznik, macierze rzadkie
6. Mnożenie dowolnie dużych macierzy zapisanych w plikach w postaci tekstowej
7. Operacje na wielomianach – dodawanie, mnożenie, miejsca zerowe, pochodna, całka, modelowanie serii danych przez wielomian
8. Analiza czasowa i spektralna sygnału. Iloczyn skalarny, energia, splot, FFT, IFFT, DFT, częstotliwość podstawowa itd.
9. Porównanie algorytmów sortowania tablic. Sortowanie co najmniej 5-ma metodami, tabela z wynikami czasów sortowania. Badania parametryczne
10. Wykrywanie plagiatów. Program prostej analizy podobieństwa dwóch programów źródłowych napisanych w języku C++. Program powinien sprowadzać kod do postaci normalnej, a następnie określać wzajemne podobieństwo, np. metodą korelacji
11. Książka adresowa (baza danych) – dodawanie, wyszukiwanie i przeglądanie osób, zapis i odczyt z dysku
12. Rysowanie wykresu funkcji podanej zapisem symbolicznym
13. Implementacja jednej z podanych gier: saper, węże, statki, bantumi, reversi, kulki, poker, ruletka. Zasady gry, koncepcja oraz sposób wykonania do uzgodnienia z prowadzącym
14. Przelicznik dat. Program powinien wyliczać dzień tygodnia na podstawie dowolnej daty w latach 1-2100 n.e.
15. Generator liczb losowych. Generator o rozkładzie jednostajnym, Bernouliego, punktowym itd. Losowa inicjalizacja, np. na podstawie czasu systemowego
16. Program realizujący system egzaminowania w formie testu. Program ma do dyspozycji bazę danych pytań i odpowiedzi. Zadaniem programu jest zorganizowanie testu z losową kolejnością pytań i odpowiedzi oraz zapisanie wyników testu
17. Przetwarzanie i graficzna prezentacja danych pomiarowych (aplikacja Win32)
18. Karta analogowego i cyfrowego wejścia/wyjścia. Programowanie, archiwizacja danych
19. Obsługa portu szeregowego. Zapis, odczyt, operacje buforowane. Sposoby prezentacji danych
20. Generator/rejestrator cyfrowy w oparciu o port równoległy
21. Obliczenie wartości p przy pomocy metody Monte Carlo
22. Polecenie TREE (dostępne w Windowsie)
23. Polecenie DU (disk usage – wyświetlenie miejsca zajmowanego przez bieżący katalog i podkatalogi na dysku – ilość bajtów plików i ilość bajtów zajmowanej przestrzeni dyskowej ) (dostępne w Linuxie)
24. Program dopisujacy do pliku BMP bieżącą datę
25. Odtwarzanie obrazów w sieciach Kohonnena
26. Baza danych obsługującą elementy języka SQL (create table, select, update, delete)
27. Szyfrowanie symetryczne
28. Szyfrowanie asymetryczne
29. Szyfrowanie strumieniowe
30 Szyfrowanie blokowe
31. Wyznaczanie całek oznaczonych metoda trapezów
32. Minimalizacja funkcji logicznych metoda siatki Karnaugh

05.10.2005
13:09
[10]

fanlegii79 [ Konsul ]

Czwarte kiedys pisalem, na zlicznie obiektowego. Jest w c++, w sumie to jedyne co napisalem w c++ :)
Coś podobnego do 7 też pisałem i też na obiektowe ale w języku smalltalk.
Czwarte u mnie ma 133 linie, niestety tylko dodaje. Te dwa uznalbym za najprostsze.
Dziewiąte też jest fajne. Pierwsze to w sumie mozna probowac bic rekordy w ilu znakach da rade zrobic.
Zliczaneni slów i wrzucanie ich np do kopca, czy czego tam. Brał bym pierwsze, chyba że masz ambicje :)

05.10.2005
14:57
smile
[11]

KULL [ Gladiator ]

fanlegii79 --> hehe :), dzieki za odp., wiec jak bedzie wolne to wezme pierwsze, tak aby byc pewnym, ze mam juz cos do oddania. A w miedzyczasie bede probowal zrobic troche trudniejsze i jak sie uda i sie wyrobie z czasem to oddam to lepsze. pozdrawiam

05.10.2005
22:03
smile
[12]

zurg [ Centurion ]

KULL -> 14. Przelicznik dat. Program powinien wyliczać dzień tygodnia na podstawie dowolnej daty w latach 1-2100 n.e.

O temat przeciez ktos juz pytal w tym watku...
Zdaje sie ze byl w watku nawet pelny kod. Wiec jak nie chcesz sie napracowac...

Ja osobiscie wybralbym cos z szyfrowania. Chocby po to by zmusic sie do poczytania o tym temacie...

05.10.2005
22:38
smile
[13]

Sir Skull [ Market Square Hero ]

KULL --> Polecam szyfrowanie asymetryczne a konkretnie RSA. Ogólnie szyfrowanie to ciekawy temat a przydatność na pewno większa niż jakieś przeliczniki dat itp ;) W sieci sporo znajdziesz o RSA, być może i gotowy kod :) Powodzenia!

06.10.2005
17:21
smile
[14]

KULL [ Gladiator ]

zurg --> hehehe, to ja wlasnie ten program meczylem w dawnych watkach. ;)

07.10.2005
21:54
[15]

slowik [ NightInGale ]

cos mi mowi ze zyskacie nowego osobnika w watku ;-)

C i Asembler w tym semestrze mnie czeka ....

tak wiec moze jakies pozycje do asemblera ??

07.10.2005
22:00
smile
[16]

Regis [ ]

KULL --> Ja czwarte zadanie mialem do napisanai na 6 w pierwszej klasie LO i nie bylo to az tak strasznie wymagajace :) Tzn. nie wiem jak ty bys to zrobil - ja mialem odgornie narzucone, ze ma to byc w lopatologiczny sposob zaimplementowanie dzialan pisemnych. Ale dzialalo na dowolnie duzych liczbach (tylko bylo powolne :P )

07.10.2005
22:32
smile
[17]

Sir Skull [ Market Square Hero ]

slowik -->
if ( chodzi Ci o asembler dla architektury x86 )
zainteresuj się książką "Zrozumieć asembler" Jeff Dunteman
else sprecyzuj pytanie ;)

07.10.2005
22:49
smile
[18]

slowik [ NightInGale ]

Skull===>tak dla x86 na poczatku listopada zaczynaja sie cwiczenia z tego ... (I rok ....)
oka poszukam se najpierw na p2p pozniej moze na papierze ...

07.10.2005
23:28
[19]

KULL [ Gladiator ]

Regis --> znaczy sie kalkulator z wpisywanymi dzialaniami z linii komend ??

08.10.2005
19:59
[20]

Grzybiarz [ Badacz Ściółek ]

A ja mam takie pytanko :D

Mam takie równanie :)

AB (razy) AB = CAB
To jest akurat prosto w pamięci rozwiązać... bo:
25 * 25 = 625

Ale jak zrobić coś podobnego w c++ ? Ogólnie nie chodzi o to, żebyście to za mnie robili :D Ale żeby jakoś podpowiedzieli czego użyć :)

Z góry dzięki

08.10.2005
20:15
[21]

Romanujan [ Konstruktor Katapult ]

To zależy, jak chcesz to zrobić. Jeśli ma to po prostu działac, to ja zrobiłbym to tak:

1. Przeliczyć wszystkie zmiene-niewiadome, każdej zmienej przypisać pozycję w tablicy liczb całkowitych.
2. Wyzerować wspomniana tablicę.
3. Skonstruować petlę do-while, która będzie wykonywała:
3a. Sprawdzić, czy jeśli pod zmienne podstawimy cyfry z tablicy, to równanie będzie spełnione. Jeśli tak - mamy rozwiazanie, koniec programu (chociaż możemy też szukać innych rozwiązań).
3b. Niech i będzie indeksem pierwszej pozycji w tablicy.
3c. Jeśli pozycja i w tablicy jest mniejsza od 9, to zwiekszamy ja o jeden i wracamy do początku pętli (tzn. do 3a).
3d. Jeśli nie (tzn. pierwsza o indeksie i w tablicy to 9), to ustawiamy wartość w tablicy na 0, oraz zwiększamy i o 1.
3e. Jeśli i jest nadal prawidłowym indeksem tablicy, to wracamy do 3c. Jeśli nie - koniec programu, nie znaleziono rozwiązania.

To chyba najprostszy możliwy algorytm. Jak widzisz, najwięcej kłopotów bedzie ze sparsowaniem równania (polecam duet flex+bison).

Jeśli chcesz to zrobić sprytnie - no cóz, masz bardzo ciekawe zadanie :-)

08.10.2005
20:16
smile
[22]

Arxel [ Dj Arxel ]

hmm.. musialbym sie zastanowic :)
bo ostatnio zem sobie z nudow zrobil takie cos co podnosi kolejne liczby do kwadratu i ustalam do ktorej liiczbe.. czyli np.:
1x1=1
2x2=4
3x3=9
4x4=16
itd... :)
ale z tym twoim to musialbym pomyslec.. watpie zebym to dzisaij zrobil ale przynajmiej dzieki za zadanie mi czegos do pocwiczenia bo juz dawno w C++ nie siedzialem ;)

08.10.2005
20:32
[23]

Grzybiarz [ Badacz Ściółek ]

W sumie to ja dopiero zaczynam przygodę z c++ :D Więc dużo nie wiem :D
Wiem że żeby to w ogóle zaczać to abc muszą być cyframi 0 - 9
I tu mam dwa problemy... tj. Jak zdefiniować żeby zmienne ABC były własnie w tym zbiorze.


Czyli
( A*10 + B*1 )( A*10 + B*1 ) = C*100 + A*10 + B*1

Romanujan
Mógłbyś to jakoś łopatologiczniej wyjaśnić ?

08.10.2005
20:32
[24]

Esqualante [ Jyhad Baghadyr ]

slowik >>>>>> Jeżeli chodzi o asembler, to najlepszy (darmowy + pod linuxa + dobra składnia)jest nasm, i proponuję korzystać z jego dokumentacji. Chociaż pewnie i tak będziecie pisać w tasm'ie.... Co do książki, to przeczytałem "Jak pisać wirusy" Andrzeja Dudka - okropnie stara książka, ale ma jeden poważny plus: ponad połowa książki to tabelki, lista przerwań itd, na początek nauki trybu rzeczywistego przydaje się bardzo :). Poza tym nie czytałem książek, tylko pisząc programy można się nauczyć asemblera ;).

09.10.2005
20:59
[25]

Romanujan [ Konstruktor Katapult ]

Grzybiarz->Tu nie ma potrzeby definiowania, żeby zmienne były w jakimś zbiorze (zresztą - nie wiem, czy da się to jakoś elegancko zrobić). Po prostu trzeba posprawdzać wszystkie możliwości - najpierw sprawdzamy, czy A = 0, B = 0, C = 0 jest prawidłowym rozwiązaniem, potem A = 1, B = 0, C = 0, itd, w końcu A = 9, B = 0, C = 0, następnie A = 0, B = 1, C = 0, itd. aż do A = 9, B = 9, C = 9. To, co ja opisywałem to była recepta na program, który rozwiązuje takie zadanka w ogólności (tzn. program pyta się użytkownika o wyrażenie, ten je wpisuje, program podaje wszystkie rozwiązania) - jeśli chcesz rozwiązać tylko to jedno zadanie, to możesz to zrobić w potrójnej pętli, np. tak:

for(int A = 0; A <=9; A++) for(int B = 0; B <=9; B++) for(int C = 0; C <= 9; C++) if((A * 10 + B) * (A * 10 + B) == C * 100 + A * 10 + B) cout << "A = " << A << " B = " << B << " C = " << C << endl;

Ta trochę przydługa instrukcja powinna wypisać wszystkie możliwe rozwiązania. Potrzebny będzie, zdaje się, #include <iostream>.

09.10.2005
21:52
[26]

fanlegii79 [ Konsul ]

Romanujan -> A moze byc gora 3, a C moze byc dowolne i nas zupelnie nie interesuje. Ty wykonasz 1000 obliczen zamiast okolo 30!!!!

09.10.2005
22:46
[27]

Grzybiarz [ Badacz Ściółek ]

Romanujan -> No właśnie coś takiego zrobiłem tyle że... nic się nie wyświetla... znaczy nie podaje żadnego wyniku... tak, jakby nic nie znalazł. Nie wiem już sam jak to zrobić.

09.10.2005
22:47
[28]

Grzybiarz [ Badacz Ściółek ]

A nie sorry mój błąd :D Już wszystko działa. :) Wielkie tnx :)

11.10.2005
09:00
smile
[29]

KULL [ Gladiator ]

Powiem Wam, ze calkiem inaczej sie czlowiek uczy jak slucha wykladow na temat programowania, niz siedzi tylko przed ksiazka i kompem. A jeszcze jak wykladowca ciska zartami i zrozumiale tlumaczy .... mam teraz fajne wyklady o WinAPI, podaje stronke z foliami i przykladami, moze sie komus przyda.

11.10.2005
10:41
[30]

KULL [ Gladiator ]

kurcze, nie moge znalezc na dysku finalnej wersji programu: 14. Przelicznik dat. Program powinien wyliczać dzień tygodnia na podstawie dowolnej daty w latach 1-2100 n.e.

Wkleilem go kiedys w jednym ze starszych watkow, ale nie ma ich w archiwum forum :/,
ma moze ktos ten moj program w wersji ostatecznej ?? help.

11.10.2005
12:38
[31]

Qbaa [ Senator ]

KULL
przeszukaj jeszcze raz, to są działające linki

https://forumarchiwum.gry-online.pl/S043archiwum.asp?ID=3847852 cz5
https://forumarchiwum.gry-online.pl/S043archiwum.asp?ID=3620101 cz4
https://forumarchiwum.gry-online.pl/S043archiwum.asp?ID=3228514 cz3
http://forumarchiwum.gry-online.pl/S043archiwum.asp?ID=3124999 cz2
http://forumarchiwum.gry-online.pl/S043archiwum.asp?ID=3073834 (pseudo ;))cz1

11.10.2005
19:30
smile
[32]

KULL [ Gladiator ]

Qbaa ---> te dzialaj, dzieki.

BTW: Musialem brac temat:
1. Zliczanie i sortowanie słów ze standardowego wejścia

gdzie mam wczytywać te slowa najlepiej aby je latwo mozna bylo sortowac ? Na stringach da sie to zrobic ?

11.10.2005
20:21
smile
[33]

KULL [ Gladiator ]

ok, poprzedniego pytania nie bylo :). mam programik, z tym, ze nie wiem na jakies zasadzie on dziala. Znaczy sie, w jaki sposob wczytuje te wyrazy? Z klawiatury? Ale jak dac mu do zrozumienia, ze juz tyle wystarczy ile wpisalem ??




--------------------------------------------
// Zliczanie i sortowanie słów ze standardowego wejscia.

#include <iostream>
#include <string>

// po to, zebysmy nie musieli pisac std.cout, a tylko cout
using namespace std;

// strukturka z wyrazami
struct word ‹
char *str;
›;

// klasa Words
class Words

public:
Words(); // konstruktor
~Words(); // destruktor
void add(char *slowo); // dodaje slowo
void sort(); // sortuj slowa
void print(); // drukuj slowa
protected:
int count; // ilosc slow
struct word **wordarray;// tablica slow
›;

// konstruktor klasy Words
Words::Words()

count = 0;
wordarray = NULL;


// destruktor klasy Words
Words::~Words()

delete [] wordarray; // usunmy allocowana pamiec
count = 0;


// funkcja porownujaca dwa wyrazy, na potrzeby qsort()
int compare(const void *a, const void *b) ‹
struct word * const *one = (struct word* const*)a;
struct word * const *two = (struct word* const*)b;

return strcmp((*one)->str, (*two)->str);


// sortuj wyrazy za pomoca funkcji qsort()
void Words::sort()

qsort(wordarray, count, sizeof(*wordarray), compare);


// dodaj wyraz
void Words::add(char *slowo)

// poszerzmy nasza tablice slow
wordarray = (struct word **)realloc(wordarray, (count+1)*sizeof(struct word *));
// zaallokujmy pamiec dla nastepnego wskaznika
wordarray[count] = new struct word;
// skopiujmy wyraz
wordarray[count]->str = strdup(slowo);
// i zwiekszmy licznik wyrazow o jeden
count++;


// wydrukuj na ekran wszystkie slowa
void Words::print()

int i;

for (i = 0; i < count; i++) ‹
cout << wordarray->str << endl;



// funkcja glowna
int main(int arch, char **argv)

char line[256];
Words *words = new Words();

cout << "Wczytuje wyrazy ze standardowego wejscia..." << endl;
while (cin >> line)
words->add(line);

cout << "Wyrazy przed sortowaniem:" << endl;
words->print();

words->sort();

cout << "Wyrazy po sortowaniu:" << endl;
words->print();
getchar();
delete words;

return 0;

11.10.2005
22:07
[34]

aka [ Chorąży ]

while (cin >> line)
words->add(line);

ta pętla chodzi tak długo dopóki na wejściu nie bedzie znaku EOF ktory otrzymujesz poprzez Ctrl-Z

a jeśli mozesz użyć STL to program może miec postać:
#include <list>
#include <iostream>
#include <string>

int main()

using namespace std;
list <string> c1;
list <string>::iterator c1_Iter;
string word;

while (cin >> word) ‹
c1.push_back(word);

c1.sort();
for (c1_Iter = c1.begin(); c1_Iter != c1.end(); ++c1_Iter) ‹
cout << *c1_Iter << endl;

system("pause");

12.10.2005
12:38
[35]

KULL [ Gladiator ]

aka --> na pewno Ctrl+Z ?? prgram nie dziala poprawnie po tym. Ktos mi mowil jeszcze ze pod uniksami/linuksami to dziala ctrl+d. Ale mam wina :).


12.10.2005
14:36
[36]

aka [ Chorąży ]

Między wyrazem poprzedającym a wcisnieęciem Ctrl+Z postaw spacje lub enter i po enter. Wtedy działa.

12.10.2005
15:44
smile
[37]

KULL [ Gladiator ]

aka ---> dziala, dziala, dziala !! Wielkie Dzieki.

teraz sie pomecze jak zrobic, aby wczytywalo z pliku, zapisywalo do pliku i zliczalo wyrazy.

Wypowiedź została zmodyfikowana przez jej autora [2005-10-12 15:52:39]

12.10.2005
20:45
[38]

Kicab [ ]

Mam prosty programik ktory oblicza pola. Chodzi mi o to zeby po wybraniu i obliczeniu pola wróciło do poczatku programu (do wyboru jakie pole ma obliczyc).




PROGRAM:


#include<cstdlib>
#include<iostream>
using namespace std;

int main(int argc, char*argv[])

float x,y,pole;
int decyzja;


cout<<"Pole jakiej figury chcesz obliczyć?Podaj numer figury."<<endl;
cout<<"1-prostokata\n2-trojkata\n3-koła\n";

cin>>decyzja;


switch(decyzja)

case 1:
cout<<"Podaj długosc bokow:\n";
cin>>x>>y;
pole=x*y;
break;

case 2:
cout<<"Podaj długosc podstawy i wysokosc:\n";
cin>>x>>y;
pole=0.5*x*y;
break;

case 3:
cout<<"Podaj promien:\n";
cin>>x;
pole=3.14*x*x;
break;

default:
cout<<"Koniec programu\n";
pole=0;


cout<<"Pole figury wynosi:"<<endl;
cout<<pole<<endl;

system("Pause");
return EXIT_SUCCESS;



Prosze o pomoc.

12.10.2005
21:07
[39]

Qbaa [ Senator ]

sam to pisałeś? ja znam tylko pascala i ma on coś takiego jak procedury i funkcje, C musi mieć coś podobnego. doucz się ;)

12.10.2005
22:53
[40]

zurg [ Centurion ]

Wystarczy cały program wziaść w pętle do-while i już
Kończy po wpisaniu wartości różnej od 1,2 lub 3

Qbaa--> Nie przesadzaj. Program nie jest na tyle skomplikowany żeby wprowadzaj dodatkowe funkcje/procedury (choć można). Widać że chłopak dopiero się uczy.



#include<cstdlib>
#include<iostream>
using namespace std;

int main(int argc, char*argv[])

float x,y,pole;
int decyzja;

do


cout<<"Pole jakiej figury chcesz obliczyć?Podaj numer figury."<<endl;
cout<<"1-prostokata\n2-trojkata\n3-koła\n";

cin>>decyzja;


switch(decyzja)

case 1:
cout<<"Podaj długosc bokow:\n";
cin>>x>>y;
pole=x*y;
break;

case 2:
cout<<"Podaj długosc podstawy i wysokosc:\n";
cin>>x>>y;
pole=0.5*x*y;
break;

case 3:
cout<<"Podaj promien:\n";
cin>>x;
pole=3.14*x*x;
break;

default:
cout<<"Koniec programu\n";
pole=0;


cout<<"Pole figury wynosi:"<<endl;
cout<<pole<<endl;

›while(decyzja>0 && decyzja<4);

system("Pause");
return EXIT_SUCCESS;

13.10.2005
00:24
[41]

Qbaa [ Senator ]

spoko, dlatego że się uczy poleciłem się douczyć, tymbardziej że w pascalu dać coś jako procedurkę to nic trudnego :)
nie wiem jak to wygląda w C

a o pętelce nie pomyślałem, mój błąd :)

13.10.2005
00:51
smile
[42]

zurg [ Centurion ]

Qbaa --> W C jest praktycznie tak samo - deklarujesz i wywołujesz. A jak się przyjrzysz pętli to zauważysz że umieściłem ją średnio szczęśliwie. Przy wpisaniu np.7 (czyli próbie zakończenia) wypisze:

"Koniec programu\n"
"Pole figury wynosi: 0"
i zakończy

co nie będzie wyglądać najlepiej. Ale niech sam dojdzie co trzeba zmienić (możliwości jest kilka) - wiem złośliwa ale piekielnie skuteczna metoda nauczania.

13.10.2005
11:16
[43]

Kicab [ ]

zurg << wielkie DZIENKI o to mi chodzilo. Dopiero zaczynam zabawe z C++ wiec sorrki jesli zadałem za banalne pytanie.

14.10.2005
17:48
smile
[44]

KULL [ Gladiator ]

jak przepisac zawartosc stringa (jakis wyraz) do tablicy??

char line[256];
string a;

// nadanie wartosci tablicy i stringowi

i nie dziala mi:

line[256]=a;


Bo problem polega na tym, ze chce wczytac z pliku wyrazy do tablicy, ale nie dziala mi :/


char line[256];
while (getline(in, line))


a jak chce to obejsc tak o: (tez nie dziala) :(



char line[256];
string a;

while (getline(in, a))
line[256] = a;




Wypowiedź została zmodyfikowana przez jej autora [2005-10-14 17:52:54]

14.10.2005
18:00
[45]

KULL [ Gladiator ]

Oj ja glupi, chyba zrobilem :).
i chyba dziala


-----------------------------------------------------


ifstream in("a.txt"); //Otwarcie pliku do odczytu
string a;


char line[256];


Words *words = new Words();


cout << "Wczytuje wyrazy ze standardowego wejscia..." << endl;
while (in >> line)

words->add(line);

15.10.2005
18:08
smile
[46]

KULL [ Gladiator ]

a jak wyglada sprawa z JAVA z jej standardami?? Java 2 - jak kupie ksiazke o javie w tej wersji to to bedzie dobry zakup, czy lepiej szukac czegos nowszego ??

15.10.2005
18:43
[47]

Sir Skull [ Market Square Hero ]

Najnowsza wersja Javy to 1.5 a.k.a. 5.0. W książce powinno być napisane do której wersji się odnosi.

15.10.2005
18:50
[48]

KULL [ Gladiator ]

chodzi mi o ta ksiazke:

Java 2. Podstawy
Autorzy: Cay Horstmann, Gary Cornell
Tłumaczenie: Maciej Gorywoda
Tytuł oryginału: Core Java 2 Volume 1 Fundamentals

15.10.2005
19:01
smile
[49]

Sir Skull [ Market Square Hero ]

"Obszerny przewodnik po języku Java -- zaktualizowany dla wersji JDK 1.3" ;)
Do nauki Javy ta książka będzie dobra, miałem ją w rękach jakiś czas temu. Jednak bardziej polecałbym dokumentację na stronie Sun'a. Przede wszystkim dlatego, że jest za darmo. Podstaw Javy nauczysz się szybko i do książki już więcej nie zajrzysz. Będzie tylko kurz zbierać :) Znasz jakiś obiektowy język programowania, to kolejnego obiektowego nauczysz się w kilka dni. Kwestia poznania różnic w składni i możliwości języka. Szkoda pieniędzy na książki, lepiej zainwestować w jakąś grę ;)

15.10.2005
19:01
smile
[50]

zurg [ Centurion ]

Właściwa nazwa: Core Java
Masz w info książki że dotyczy Javy 1.3.
Swoją drogą jedna z najlepszych książek do Javy do wykorzystania poraktycznego (łatwo programować mając ją pod ręką), jak dla mnie "Thinking in Java" zawierała za dużo teorii.
Jedynym problemem jest przeznaczenie jej dla Javy 1.3. Sprawdź czy nie ma/nie jest planowane wydanie nowszej wersji. Co do przydatności - cały mój semestr usiłuje właśnie gdzieś tanio dostać tę książkę. Ja już ten przedniot zaliczyłem;)

15.10.2005
19:04
[51]

KULL [ Gladiator ]

ok, dzieki za rady

Wypowiedź została zmodyfikowana przez jej autora [2005-10-15 19:04:35]

15.10.2005
20:11
smile
[52]

fifalk [ fifalkowiec ]

skoro KULL reklamowal.... :-)

jak w c++ wydobyc date systemowa? tzn chodzi mi o prosty przykladzik typu - odczyt daty i jej wyswietlenie na ekran :-)

15.10.2005
20:17
[53]

KULL [ Gladiator ]

fifalk -->

cout << __TIME__ ;
cout << __DATE__;

15.10.2005
22:53
smile
[54]

fifalk [ fifalkowiec ]

tego sie obawialem ;-)

potrzebuje przechwycic aktualna date pod zmienne:
int rok, int miesiac, int dzien

15.10.2005
23:12
smile
[55]

Sir Skull [ Market Square Hero ]

fifalk --> Wykorzystaj funkcję char *_strdate(char *datestr).

16.10.2005
09:00
[56]

fifalk [ fifalkowiec ]

dzieki :) to jeszcze 1 drobnostka - takie cos:
char dzisiaj [9];
_strdate(dzisiaj);
cout<<"jest "<<dzisiaj;

wyswietla mi:
10/16/05

potrzebuje rok w formacie RRRR - jak pobierac 2 poczatkowe cyfry (oczywiscie odpada reczne dodanie "20", bo musi byc "uniwersalnie" ;) )?

16.10.2005
10:22
smile
[57]

fifalk [ fifalkowiec ]

dobra, niewazne. wzialem inna funkcje :-)

21.10.2005
20:23
[58]

devmode [ Centurion ]

Jak pobrac dzieki "cin >>" ciag znakow skladajacy sie jedynie z liter? Kiedy ustawiam "char funkcja;" to na wyjsciu wyswietla mi tylko pierwsza literke tego co wpisalem, a przy "int funkcja" wywala "37879712". Co robic? Niby powinno dzialac z "char".

Kod programu:

#include <iostream.h>

main()

char imie ; // zaloze sie ze to tutaj jest problem (inna stala?)
cout << "Podaj imie\n" ;
cin >> imie ; //wczytujemy imie np. "Alfons"
cout << imie ; //wyswietlamy imie - zamiast "Alfons" wyswietla "A"

21.10.2005
20:24
[59]

Narmo [ nikt ]

char - jeden znak
string - ciąg znaków

21.10.2005
20:27
smile
[60]

devmode [ Centurion ]

Wg DevC++ stala "string" nie istnieje.

21.10.2005
20:28
smile
[61]

Narmo [ nikt ]

W Delphi procedury do liczenia znaków w imieniu i nazwisku wyglądały by tak:

procedure dane;
begin
write('Podaj imie osoby 1: ');
readln(imie);
write('Podaj nazwisko osoby 1: ');
readln(nazwisko);
end;

procedure dlugosc;
begin
dlugosc_im:=length(imie);
dlugosc_nazw:=length(nazwisko);
end;


Chociaż nie wiem, czy to komuś pomoże :p

21.10.2005
20:29
[62]

devmode [ Centurion ]

Ah - co jesli chce odwzorowac identycznie ciag danych, tzn. jak >wymieszac< dane (litery, cyfry + znaki specjalne) w jednym ciagu? Oczywiscie chce go wczytac z zewnatrz.

21.10.2005
20:37
[63]

Sir Skull [ Market Square Hero ]

devmode --> Poczytaj o wskaźnikach. Przydadzą się ;)

21.10.2005
20:42
smile
[64]

devmode [ Centurion ]

Dzieki, dam znac jak postepy.

21.10.2005
20:53
smile
[65]

Sir Skull [ Market Square Hero ]

devmode --> Wystarczy dopisać jeden znaczek w Twoim programie. Nie będę jednak zabierał Ci zabawy ;) Sam zgadnij gdzie ;p

21.10.2005
20:55
smile
[66]

devmode [ Centurion ]

Jeden znaczek? To sie nazywa optymalizacja kodu. A ja tu siedze nad wskaznikami opartymi o tablice.

22.10.2005
10:17
smile
[67]

fifalk [ fifalkowiec ]

to teraz takie 2 problemy:

1)
w parametrze metody mam przekazywana tablice int. powinienem z niej korzystac jedynie w przypadku, gdy jest to 25-elementowa tablica CYFR. ma ktos pomysl na jakis szybki sposob - jak to sprawdzic?

jedyne co mi przyszlo do glowy, to petla 0-25 i po kolei sprawdzanie wartosci tablicy czy sa 0-9... ale jakies takie malo efektywne mi sie to wydaje :-)

2)
prosta rzecz, a nie pamietam jak to sie robilo...
mam 2 zmienne tablicowe a i b. potrzebuje zdublowac to co jest w "a" do "b". jak to zrobic? :-) moze byc zwykle a[] lub wskaznikowo - obojetne mi :-]

22.10.2005
10:55
[68]

pecet007 [ ]

fifalk
2) chodzi o to? memcpy(b, a , sizeof(a));

22.10.2005
12:53
[69]

fanlegii79 [ Konsul ]

No chyba w mniej niz 25 operacjach zegara nie da rady tego zrobic.
Petla 0-25 i sprawdzasz czy liczba mniejsza od 10.

22.10.2005
12:54
[70]

fanlegii79 [ Konsul ]

szybkie palce, dla intow trzeba sprawdzic czy wieksze od 0. Chyba ze uzyjesz unsigned int, czy cos.

22.10.2005
14:05
smile
[71]

hacker18 [ Pretorianin ]

jak robic aplikacje okienkowe w c++? bo juz usunolem sobie wszystkie pliki z dysku (napisalem wirusa i hehe) i teraz bym chcial program w oknie. a nigdzie o tym nie ma tutoriali. tylko petle i inne.

22.10.2005
14:10
[72]

Esqualante [ Jyhad Baghadyr ]

Poszukaj kursy Visual C++, w necie jest tego duuużo.

22.10.2005
16:31
[73]

fanlegii79 [ Konsul ]

Najlatwiej w jakims srodowisku, ja ostatnio zrobilem kilka w C# w sharpdevelop i mi sie podobalo.

22.10.2005
16:52
[74]

severok [ spamer ]

dlugosc stringow mozna tak sprawdzic....

#include <iostream>

using namespace std;

int main()

string str = "napis";
cout << str.length() << endl;
return 0;


/////

wiecej mozna sie dowiedziec czytajac dokumentacje STL...

23.10.2005
13:52
[75]

KULL [ Gladiator ]

Pytanie, co odpowiedziec nie potrafie na nie :/

ofstream out("a.txt");
out << d;
out.close();


to nie wystarczy aby zapisac stringa do pliku ??
nic mi w pliku nie zapisuje.


--------- edit ---------

ok, niewazne, zaczelo dzialac. Ten DevC++ jest %&^&*. raz dziala poprawnie, raz nie :/

Wypowiedź została zmodyfikowana przez jej autora [2005-10-23 14:04:22]

23.10.2005
14:15
[76]

fifalk [ fifalkowiec ]

ok, dzieki.

teraz cos innego :-)

sprintf(str, "[%g]", liczba);

potrzebuje, zeby zapisal "liczba" (typu double) w formie 2 miejsc po przecinku :-)

23.10.2005
14:18
smile
[77]

Esqualante [ Jyhad Baghadyr ]

fifalk >>>> czytaj dokumentację ;P

wyświetlenie liczby z dokładnością dwóch znaków po przecinku: %.2d (albo %.2Ld albo %.2g zależnie od potrzeb)

23.10.2005
14:18
smile
[78]

Sir Skull [ Market Square Hero ]

KULL --> Coś musiałeś zmienić w programie. Nie ma opcji, że raz działa a innym razem nie działa ;p

Te 3 linijki wystarczają, ale dobrze by było również sprawdzać czy udało się otworzyć plik zanim zaczniesz do niego zapisywać.

23.10.2005
14:30
[79]

fifalk [ fifalkowiec ]

Esqualante --> no wlasnie nie dziala :-/ liczba=2. %.2g wyswietla mi "2"

odrazu druga rzecz:

double proc;
sscanf(s,"%d/%d/%d-%d/%d/%d:[%g]",&pr,&pm,&pd,&kr,&km,&kd,&proc)

wczytuje mi pod proc smieci....

ciag jest taki: 2003/03/02-2004/04/12:[2]

23.10.2005
14:46
[80]

Esqualante [ Jyhad Baghadyr ]

fifald >>> w sprintf użyj %lf zamiast %g a w sprintf zrób %.2g. U mnie działa :)

23.10.2005
14:46
[81]

Esqualante [ Jyhad Baghadyr ]

[edit]

Jeszcze raz ;)

W sscanf użyj %lf zamiast %g a w sprintf zrób %.2g. U mnie działa :)

23.10.2005
14:54
[82]

fifalk [ fifalkowiec ]

dzieki :-) zawsze uzywalem cout'ow i gubie sie w tych milionach % ;-)

ps. %.2g nietsety nie dziala :-/ nie wiem czym to jest spowodowane. dokladny kod:
char *trans::pokaz(void)

sprintf(str, "%s:[%.2g]",nazwa, wysokosc); //wysokosc ma wartosc 2
return(str);

23.10.2005
15:02
[83]

Esqualante [ Jyhad Baghadyr ]

To spróbuj jeszcze "%.2lf". W czym kompilujesz?

23.10.2005
22:40
smile
[84]

hugo [ v4 ]

Potrzebuję pomocy przy pewnym programiku, otóż mam polecone określanie elementów tablicy przy użyciu polecenia RAND, podstawiającego losowo wybrane liczby pod konkretne elementy tablicy.

Z funkcją RAND sobie poradziłem, ma ona losować liczby z przedziału (-100, +100):

int i,n;
double A[100],x,a=200.0/RAND_MAX;
for (i=0;i<n;i++)
x=a*rand()-100;
A=x;

I to działa wyśmienicie.
Natomiast kolejnym warunkiem działania programu jest zaokrąglenie wartości generowanych z dokładnością do 0.01
i tu nie wiem jak to wykonać.

24.10.2005
09:06
[85]

hotDog [ Outsider ]

a może funkcja printf(); ?

24.10.2005
10:48
[86]

fanlegii79 [ Konsul ]

Hugo -> Nie wiem jakiego kompilatora używasz ale powinna być jakaś funkcja round.

24.10.2005
12:16
[87]

fifalk [ fifalkowiec ]

Esqualante --> .net

24.10.2005
17:37
[88]

Maevius [ Czarownik Budyniowy ]

Czy mozecie mi zdradzic najprostszy sposob na narysowanie linii w c++ ? (winapi, 2D)

24.10.2005
17:55
[89]

Sir Skull [ Market Square Hero ]

Maevius --> Bool winapi LineTo(HDC hdc, int xend, int yend)

24.10.2005
23:42
smile
[90]

Bremen [ The Dude ]

Witam, ja mam taka prosbe tutaj do ekspertow :P (nie wiem czy pytanie sie to jzu pojawilo ale ciezko jest mi sprawdzic). A mianowicie chodzi mi o to ze mam takie zadanie (podobno banalne :P) :

Liczba 100 ma byc dzielona przez wielokrotnosci 3.

Z tego co mi mowili to zajmuje to b.malo linijek, ma byc napisane w C :)...jakby ktos byl tak mily to bylbym b. wdzieczny :)

25.10.2005
00:23
[91]

Esqualante [ Jyhad Baghadyr ]

hugo >>>>>
Można zrobić tak (ale to nie jest ładne :P)

a = ((int) (a * 100)) / (float) 100;

(czyli pomożenie x100, rzutowanie na inta (obcięcie wartości po przecinku) i podzielenie przez 100, ale przez floata, aby wynik był floatem)

Jeżeli już nie chcesz operować na tych wartościach tylko je wyświetlić, to skorzystaj z printfa tak jak pisałem trochę wyżej ;)

fifalk >>>>>
Akurat nie mam .neta, to nie potrafię pomóc :(

Bremen >>>>>>
Fajnie, ale o co chodzi?

Takie dzielenie robi się 1 forem:

int i;
for (i = 3; i < 100; i += 3)
printf("%d ",100 / i);

Co program ma robić? Jakie przyjmuje dane? Co ma wyświetlać?

25.10.2005
00:27
[92]

Bremen [ The Dude ]

Esqualante --> a nie wiem, pewnie chodzi jedynie o kod :)

25.10.2005
00:42
[93]

Esqualante [ Jyhad Baghadyr ]

To jak nie wiesz, czego chcesz, to jak chcesz, aby ktoś inny wiedział, w czym ma Tobie pomóc?

25.10.2005
13:53
[94]

Maevius [ Czarownik Budyniowy ]

Potrzebuje na gwalt pliku naglowkowego glaux.h (opengl) dla dev c++ .. whatever.

Czy ktos z Was wie gdzie znalezc takie cudo ?

25.10.2005
13:57
[95]

Maevius [ Czarownik Budyniowy ]

Mam!

26.10.2005
16:57
smile
[96]

KULL [ Gladiator ]

hej.

moj problem dotyczy polecenia cin.

Pierwszy problem z jakim sobie juz poradzilem, polegal na tym, ze w petli widnialo: cin >>a; i po ktoryms tam razie uruchomienia petli program nie widzial (omijal) owo cin. Wystarczylo wpisac cin.clear();.

teraz zastanaiwam sie i nie moge nigdzie znalezc, jak wymoc na programie, aby przyjmowal (wczytywal) w owym cin tylko cyfry. W zwyklym C, bylo scanf() i w nawiasie parametry, ale w Cpp nie wiem i nie moge znalezc w necie i ksiazkach jak to zrobic. Co prawda moge probowac z petlami, ale moze da sie to zrobic bezposrednio na cin.


31.10.2005
14:03
smile
[97]

Dexter666 [ aka Harnaś, aka eiP ]

cześć! nie chce zakladac nowego wątka, w tytule pisze, ze programowanie w c i nie tylko, a ja mam problem w delphi :P
Chodzi o to,ze wprowadzam jakis liczby i gdy nacisne pewien guziczek ma mi wyskoczyc w Labelach najmniejsza i najwieksza liczba jaka wprowadizlem... jezeli chodzi o max to umiem zrobic i dziala ale mam problem z najmniejsza liczbą :/
w maxymalnej mam tak:
if strtoint(edit1.Text) > strtoint(label5.Caption) then (label5.Caption:=edit1.Text);
a gdy robie na ten wzor min to nie wychodzi... help

31.10.2005
14:42
[98]

surox [ Centurion ]

@Dexter666 a zmieniłeś znak > na < ?

31.10.2005
14:47
[99]

Dexter666 [ aka Harnaś, aka eiP ]

naturalnie, ze tak...
tutaj problem jest dziwny i za cholere nei wiem jak to zrobic.

31.10.2005
15:19
[100]

surox [ Centurion ]

No to sprawdź, czy używasz odpowiednich nazw komponentów (Edit1, Label5). Nic innego nie przychodzi mi do głowy. :)

03.11.2005
12:01
[101]

TyfusPL [ Junior ]

Potrzebuje pomocy w programowaniu c++
Chce do macierzy dodac wektor lub przesunac wiersz macierzy o kilka pol tak by zawartosc wiersza "zawijala sie".
Prosze o jakies podpowiedzi.

06.11.2005
10:25
smile
[102]

hugo [ v4 ]

Mam takie oto banalny problem...:

Mam tablicę wskaźników z 3 tekstami i muszę je posortować alfabetycznie przy użyciu finkcji stricmp.

Próbowałem się z tym jakoś uporać, porównując każdą słowo z każdym, ale niestety nie zadziałało tak jakbym sobie tego życzył... :/

06.11.2005
10:58
[103]

Regis [ ]

Ja tam byl porownywal po jednym znaku i na tej podstawie ustalal kolejnosc

06.11.2005
14:53
[104]

hotDog [ Outsider ]

Drzewo? :-)

06.11.2005
18:02
[105]

wishram [ Konsul ]

Czy da się w C++ zrobić coś takiego:
Mam w notatniku, excelu itp. 4 liczby. Mam je pobrać z tego pliku i dalej wykonywać na nich dzialania.
Podejrzewam że trzeba je jakoś przekonwertować z kodu ascii, ale jak je pobrać tego kompletnie nie wiem. To ma się dziać jakoś w pamięci.

Będę wdzięczny za pomoc.

06.11.2005
18:14
[106]

Regis [ ]

Z pliku tekstowego pobierasz przez scanf i potem robisz z nimi co chcesz.

A jesli chcesz pobierac cyfry z plikow excela, to powodzenia... Strukture tych plikow chociaz znasz? Bo z plikami txt nie maja one wiele wspolnego raczej

06.11.2005
18:15
[107]

Regis [ ]

aha - scanf tylko jesli przekierujesz standardowe wejscie na plik. Jak nie, to fscanf

06.11.2005
18:57
[108]

moneo [ Nikon Sevast ]

czesc, probuje wlasnie przerzucac sie z javy na c++ i w zwiazku z tym mam pytania:

1. czy w c++ mozna uzywac tablic o niezdefiniowanym rozmiarze, do ktorych moznaby dorzucac lub odejmowac elementy w trakcie dzialania programu?

2. jesli tak, to jak sprawdzac aktualna ilosc elementow w tablicy?

szukam odpowiedzi w tutorialach ale poki co jakos sie nie natknalem. w sumie od biedy nie potrzebowalbym ponumerowanej tablicy tylko np. setow (o ile jest cos takiego w c++)..
dziekuje z gory za pomoc

06.11.2005
19:04
[109]

pecet007 [ ]

maneo -- biblioteka vector posiada takie coś nie są do co prawda całkiem tablice, ale coś lepszego, pozwala właśnie na dodawianie elementów do takiej zmiennej i ich pobierenie, no i można oczywiście sprawdzic ile tam jest elementów

06.11.2005
19:16
[110]

pecet007 [ ]

przykładowy kod (testowany w VC7)
--

#include <stdio.h>
#include <iostream>
#include <vector>

using namespace std;

int main()

vector<int> a;

a.insert(a.end(), 123);
a.insert(a.end(), 456);
a.insert(a.end(), 789);

cout << a[1] ; // wyświetli 456
cout << "\n" << a.size(); // wyświetli 3

system("pause");



06.11.2005
19:17
[111]

pecet007 [ ]

niestety gol trochę pozmieniał kod, ale chyba widać o co chodzi

06.11.2005
19:41
smile
[112]

moneo [ Nikon Sevast ]

super, wielkie dzieki, chyba wlasnie o to mi chodzilo.

rozumiem, ze jesli zdefiniuje tablice takich struktur:
vector<int> dane[9][9];
to potem odwoluje sie do poszczegolnych komorek przez
dane[0][0][0]
a metody poszczegolnych struktur wywoluje przez
dane[0][0].insert(dane[0][0].end(),123);

09.11.2005
16:26
[113]

wishram [ Konsul ]

Regis - - > a zarzucisz jakimś przykładowym kodem, nie znam tej instrukcji.

13.11.2005
14:08
smile
[114]

fifalk [ fifalkowiec ]

jak w pliku tekstowym przesunac kursor "do tylu"? np.
mam taki tekst w pliku
aabbcc

wczytalem sobie 4 znaki, chce cofnac kursor o 2 pola do tylu i ponownie wczytac 2 ostatnie. czyli zebym dostal

aabbaa.


(to tylko przyklad zastosowania - potrzebuje po protsu jezdzic kursorem "do tylu" :-) )

13.11.2005
15:43
[115]

fanlegii79 [ Konsul ]

fseek-iem
Dwie pozycje do tylu to bedzie
fseek(file,-2, 1)
gdzie file deskrytor, -2 offset, 1 tryb zachowania wzglednego do aktualnej pozycji.

13.11.2005
20:03
[116]

GSi [ Pretorianin ]

Potrzebuje pomocy
Ściagnałem compilator borland c++ 5.5 i nie wiem jak go uruchomić:P czytałem plik readme i na stronce ale i tak mi sie nie odpala:/

13.11.2005
20:08
smile
[117]

fifalk [ fifalkowiec ]

dzieki :-) sry ze nie napisalem wczesniej, ale juz nieaktualnie bylo - jakies chwilowe zacmienie mialem ;-)


teraz taki problem:
robie funkcje porownojaca podany tekst do okreslonego wzorca.
test="aaaa?kk*ppp"
mam sprawdzic czy pasuje do wzorca "aaaajkkooooppp"

zasady sa takie - ? zatsepuje dowolny znak, * zastepuje dowolny ciag znakow. ktos ma pomysl jak sie do tego zabrac? jakich funkcji uzyc? nic mi nie przychodiz do glowy :-(

13.11.2005
20:10
[118]

GSi [ Pretorianin ]

Sorry za zamieszanie juz nie wazne:D

13.11.2005
21:00
smile
[119]

fifalk [ fifalkowiec ]

odrazu drugie pytanie - mam funkcje:
char *funkcja(void);

potrzebuje zrobic sobie wskaznik na fukcnje. robilem cos takiego:
typedef char*(*wskaznik)(void);

ale przy probie przypisania
wskaznik moja_f=funkcja;

dostaje blad :-(

13.11.2005
21:41
smile
[120]

fifalk [ fifalkowiec ]

up, bo dosc pilne... szczegolnie ta druga sprawa...

14.11.2005
00:04
[121]

hotDog [ Outsider ]

Cześć, mam pytanie.

Czy można w C++ na etapie kompilacji dodać do pliku jakąs bibliotekę *.dll?

Chodzi mi konkretnie o glut32.dll, która nie w każdym komputerze znajduje się w folderze windows/system32 a wymagana jest przy aplikacjach OpenGL i GLUT.

Czy może wiecie jak obejść ten problem? Po prostu mój skompilowany program wymaga tej biblioteki w windows/system32.. a chciałbym tak zrobić, żeby uruchamiał się nawet bez niej.


fifalk --> wkleiłem ten Twój kod do mojego Dev'a i się skompilowało...

14.11.2005
00:08
smile
[122]

hotDog [ Outsider ]

BTW znacie jakieś naprawdę fajne kursy/tutki do OpenGL powiedzmy na etapie początkującego? :-)

Wiem, że istnieją google.pl ale chodzi mi o jakieś perełki.. schowane gdzieś głęboko.. np. jakieś stronki akademickie... ;-)

acha i o NeHe wiem ;-)

19.11.2005
21:30
smile
[123]

fifalk [ fifalkowiec ]

hotDog --> eh, uroki pisania w .net :-(

a dzisiaj takie proste (chyba) zadanko mam dla Was :-)
do pliku txtowego zapisuje sobie jakas liczbe (nie znam jej dl. tzn nie wiem czy jest 20 czy 2000000). wiem, ze jest typu double. musze wczytac ja z pliku textowego pod zmienna typu double. jak to zrobic? :-)

19.11.2005
22:30
smile
[124]

fifalk [ fifalkowiec ]

do gory? :-)

19.11.2005
23:01
smile
[125]

hotDog [ Outsider ]

hmm... a samo std::cout << nie pomoże? On kończy wczytywanie gdy napotka znak spacji, więc wczyta całą liczbę :-)

jeszcze jest chyba get() do pobierania określonej długości znaków czy bitów nawet, nie pamiętam. Bodajże używało się sizeof() aby poznać długość np. typu double. Może to Cię nakieruje jakoś :-)



A ja też mam pytanko (chyba proste).

Mam string i muszę na jego koniec dokleić pewną liczbę, a jest ona typu float.

Nie wiecie jak to zrobić?

strcat() przyjmuje tylko dwa typy const char* i nie mogę wpaść na pomysł jak to obejść.

ehh.. szkoda, że c++ to nie php...

19.11.2005
23:16
[126]

Kubol [ Konsul ]

hotDog --> Wystarczy, że biblioteka będzie w tym samym katalogu, co .exe

Windows nie szuka bibliotek jedynie w katalogach system, system32. Każdy katalog będący
na ścieżce (zmienna środowiskowa PATH) jest przeszukwinay, katalog bieżący programu również.

Mój pierwszy (i jak na razie ostani) programi w GLu, może się komuś przyda. Polecam looknąć do readme, bo nie chcialo mi sie klawiszologii na konsole wypisywać ;-).

19.11.2005
23:26
[127]

Kubol [ Konsul ]

hotDog --> co do manipulacji stringami, jest taka klasa, stringstream, tobie potrzebny jest ostringstream. Looknij sobie tutaj -->

20.11.2005
10:46
smile
[128]

fifalk [ fifalkowiec ]

hotDog --> no wlasnie wszystko byloby pieknie gdybym mial to tylko na couta wyslac. ale ja musze wczytac pod zmienna

20.11.2005
15:23
smile
[129]

fifalk [ fifalkowiec ]

glupi jestem :-) jasne, ze << dziala - sry moj blad :-)

a teraz podobny problem:
mam w pliku zapisane cyfry w nastepujacy sposob:
1234567890

wiem ze jest ich 10, potrzebuje sobie to wczytac pod
int numer[10];

tutaj manewr z plik>>numer nie zadziala, bo wczyta mi caly ciag jako jedna liczbe. z kolei
numer=plik.get();
nie daje oczekiwanego rezultatu - zamiast "1" podaje mi kod asci, czyli w moim przypadku "49".

wiec:
jak zamienic kod ascii liczby (char) na ta liczbe (int)
albo jak inaczej wczytywac po 1 cyfrze?

20.11.2005
15:27
smile
[130]

fifalk [ fifalkowiec ]

sry za spam, ale zawsze tak jest ze najprostsze rozwiazania sa najtrudniejsze do wymyslenia :-)
rozw.: atoi().

21.11.2005
19:40
smile
[131]

milo112 [ Legionista ]

Witam mam problem z napisaniem programu, dopiero się ucze programować , mam taki program do napisania że ma podać ile liczb(czyli np. 3 231 12dc ma wyswietlić w tym ciągu są 2 liczby) jest w podanym ciągu
Nie wiem dlaczego wywala dwa błedy i nie chce się skompilować :(
Program wygląda tak :

#include <stdio.h>
#include <conio.h>

int licz ( char ciag )

int liczb = 0; //ilosc liczb w ciągu
int cyfra = 0; //0- to nie jest cyfra(liczba), 1 - to jest cyfra(liczba)

int dlugosc = ciag.length();

for (int i=0; i<dlugosc; i++)

if (ciag >= '0' && ciag <= '9' && cyfra != -1)
cyfra = 1;
else
if (ciag != ' ')
cyfra = -1;

if (ciag == ' ' || i == dlugosc - 1)

if (cyfra == 1)
liczb++;

cyfra = 0;






int main()

char string[256];

printf( "Podaj lancuch: " );
scanf( "%[^\n]", string );
printf( "W tym ciągu jest %d liczb\n", licz ( string ));
getch();
return 0;



Czy ktoś mógłby żucić na to okiem i powiedziec w czym tkwi mój błąd ??
Byłbym wdzieczny i zobowiązany !!!

23.11.2005
10:00
[132]

Maevius [ Czarownik Budyniowy ]

Co jest zlego w takiej definicji funkcji ?

int suma(int a, int b)

return a + b;



wedlug deva, a function-definition is not allowed here before '‹' token.

23.11.2005
10:02
[133]

Maevius [ Czarownik Budyniowy ]

uah, nevermind, pozdrawiam

25.11.2005
22:01
[134]

diabelek1 [ szczęśliwy ]

Przypuszczam, ze takie pytanie juz sie przewinelo tutaj, ale w takim wypadku to mysle, ze dostane szybsza odpowiedz :).

Otoz pisze skrypty w PHP i czuje sie w tym nie zle. Nie mam problemow, z nawet troszke bardzoej rozinietymi stronami, z obsluga sql'a itp. Nie bawilem sie w programowanie (a raczej skryptowanie :) ) obiektowe. Znam tez pascala (do kolejke/stosow/sortowanie itp wlacznie). Zamierzam poduczyc sie teraz c++, jestem studentem informatyki I roku i mysle, ze bedze mi to przydatne, a lepiej zaczac teraz a nie jak juz bede tego wymagac :). Mam do Was pytanie - jaka ksiake polecacie, taka na moim poziomie, ktora moze mi pomoc w nauce??

Przegladalem oferte helionu i spodobaly mi sie dwie:
https://helion.pl/ksiazki/thicpp.htm
oraz
https://helion.pl/ksiazki/cppdk.htm

Co o nich myslicie??

25.11.2005
22:09
[135]

Regis [ ]

Jak chcesz pocwiczyc obiektowe, a znasz php, to zajmij sie PHP5. A co do C++ - Thinking in C++, albo Symfonia C++ a potem Pasja C++.

Swoja droga ciekawe studia informatyczne, jesli piszesz ze "lepiej zaczac teraz a nie jak juz beda tego wymagac" - to jeszcze nie wymagaja? :) A na informatyce bez c++ w zasadzie sie nie obejdziesz :P

25.11.2005
22:19
[136]

diabelek1 [ szczęśliwy ]

Na razie tluczemy pascala... c++ bedze z tego co sie orietuje od drugiego semestru.. wiec chce byc przygotowany na to :)

25.11.2005
22:22
smile
[137]

Regis [ ]

jezzzu... pascala? a po kiego? :D

25.11.2005
22:42
[138]

diabelek1 [ szczęśliwy ]

A mi sie pytasz...

najlepsze jest to, ze kumpel na automatyce i robotyce jedze c++, ale bardziej podstawowo... Za to drugi kumpel jedze c++ mniej wiecej na takim stopniu zaawansowani jak my Pascala... :|

25.11.2005
22:43
[139]

diabelek1 [ szczęśliwy ]

Sory z drugi post.

"Za to drugi kumpel..." = "Za to drugi kumpel, ktory jest na telekomunie,"

26.11.2005
09:49
[140]

fanlegii79 [ Konsul ]

Regis -> Ja na infie na UW w c++ napisalem moze ze 100 lini kodu. Programowania obiektowego uczyli w smalltalk-u.

26.11.2005
09:53
[141]

fanlegii79 [ Konsul ]

Regis -> dr Diks mawial ze uczymy sie pascala, a nie c , bo nie mozna malpie dawac brzytwy. Pascal-a człowiek sie uczy żeby nabrać dobrych nawykow nie martwiąc się o jakiejś wskażniki alokacje itd. Jak już się zna troche algorytmów i umie się ładnie je kodowac można zacząć uczyć się języków gdzie można stosować różne tricki.

26.11.2005
16:46
smile
[142]

KULL [ Gladiator ]

Mam testy do przygoowania sie na kolo z infy, nie jestem wszystkiego pewny, wiekszosci nie wiem, napisze tutaj kilka pytan, moze ktos mi odpowie, moze nawet ktos lubi takie zagadki :).

1. Czym jest sekcja krytyczna? Kiedy należy stosować?

2. Utworz dynamiczna tablice mogaca przechowywac napisy zlozone ze 123 znakow.

3. Ile bitow zajmuje adres IP (uzywany jest protpkol v.4.)?

4. Czy program w C skompilowany jako aplikacja Win32 w celu wykonania jakiejkolwiek operacji moze utworzyc i jednoczesnie obslugiwac wiecej niz jedno okno?

5.Okno w sysyemie Windows to zmienna bedaca: (obiekte/ liczba/wskaznikiem /uchwytem/struktura) ??

6. Ile konstruktrow, a ile destruktorow moze zawierac klasa w C++ i w Javie?

7. sekcja krytyczna - co to jest i kiedy nalezy stosowac?

8.Czym sie rozni watek od procesu?

9.Co oznacza pojecie "wywlaszczenie" w progra,mowaniu wspolbieznym?

,,, na razie to tyle :).

26.11.2005
17:44
[143]

surox [ Centurion ]

2. jeśli dobrze rozumiem: char *tablica = new char[123];
5. chyba obiektem, ale głowy nie dam
6. konstruktory - W C++ i Javie nie ma ograniczenia, ale muszą się różnić listą argumentów
destruktory - W Javie nie trzeba ich stosować, W C++ chyba jeden - po co więcej?
7. nie wiem, ale to jest to samo pytanie, co nr 1 ;)
8. proces składa się z wątku, wątek jest częścią procesu? :)

26.11.2005
17:45
[144]

fifalk [ fifalkowiec ]

6. c++ - 1 destruktor, konstruktorow dowolna ilosc.
reszty nie wiem :-)

z ciekawosci - co to za szkola (i ktora klasa), w ktorej sie uczysz?

26.11.2005
17:47
smile
[145]

fifalk [ fifalkowiec ]

aa lol, napisales "kolo". juz myslalem, ze to mnie na studiach ucza rzeczy, ktore inni maja w szkole :-)

26.11.2005
18:49
smile
[146]

fifalk [ fifalkowiec ]

sry za 3 posty z rzedu...
ale wymiekam. prosta sprawa, zawsze dzialalo mi bez problemu, a teraz nie wiem gdzie jest blad...
mam zapisane informacje w pliku txt w taki sposob: "3abc 5abcde"
czyli liczba-ciag o dlugosci "liczba". mam kod:

plik.open(fn);
char *kl;
char d;
d=plik.get(); //sprawdzam dl slowa
dl=atoi(&d); //zamieniam sobie char na inta
if (!plik.eof())
kl=new char[dl+1];
plik.getline(kl,dl);//teoretycznie wczytuje interesujace mnie slowo

tymczasem w debugerze wyglada to tak, jakby kursor w otwartym pliku wcale sie nie przesuwal. w rezultacie dl jest dobrze odczytywana, a slowo nie jest wczytywane (w podgladzie kl ma wartosc "" po wykonaniu ostatniej linijki).

27.11.2005
20:04
[147]

Maevius [ Czarownik Budyniowy ]

LINK : fatal error LNK1104: cannot open file 'glut32.lib'

W jaki sposob do projektu w vs 2005 dodac ta bibloteke, .lib ?

28.11.2005
09:59
smile
[148]

hugo [ v4 ]

Eh wymiękłem...

Z tym programem nie daję już rady... bardzo proszę o pomoc

oto treść zadania:

Zainicjuj tablicę z nazwami dni tygodnia. Wczytaj datę w postaci dd.mm.rrrr (dzień, miesiąc rok) do zmiennych d, m, r, a następnie wyznacz dzień tygodnia i wyprowadź tę datę oraz nazwę dnia tygodnia. Powyższą czynność powtarzaj tak długo, jak długo podawane daty są poprawne. Kalendarz gregoriański wprowadzono 15.10.1582 r. Program nie powinien akceptować daty wcześniejszej ani przekraczającej rok 2999. W tym czasie lata przestępne to te, które są podzielne przez 400 lub podzielne przez 4, ale nie przez 100.
Uwzględnij, że po roku zwykłym dzień tygodnia przesuwa się o 1, a po przestępnym o2 – nie musisz wtedy mnożyć numeru roku przez 365 i zmieścisz się w zakresie liczb typu int. Zainicjuj tablicę z liczbami dni w każdym miesiącu. Po wczytaniu daty zmodyfikuj liczbę dni lutego, a następnie sprawdź poprawność tej daty. Do 12-elementowej tablicy wpisz liczby dni pomiędzy 1 stycznia, a pierwszym dniem kolejnych miesięcy (dla stycznia będzie to zero, a dla lutego 31). Tablica ta ułatwi określenie, którego dnia roku dotyczy podana data. Jeśli do tego dodasz numer roku oraz liczbę lat przestępnych, które go poprzedzają (licząc od roku 1 wg zasad obowiązujących dzisiaj), to reszta z dzielenia tej sumy przez siedem wyznaczy dzień tygodnia.


A oto kawałek programu który ma byc przerobiony (dokładniej uzupełniony):

28.11.2005
10:04
[149]

Arxel [ Dj Arxel ]

to ja mam takie pytanie dlaczego w kazdym innym kompilatorze trza wpisywac rozne oznaczenia?
u siebie robie (dokladnie to robilem bo juz dawno sie w c++ nie bawielem...) i np. jak robilem na podstawie symfoni c++ to kurde musialem sie dodawac rozne onaczenia ktorych niebylo w ksiazce...
i jak w skzole beidzemy robic C++ to pewnie kompilator bedzie inny i tez bede musial uczyc sie nowych oznacznikow... :/ czemu tak kurde jest

28.11.2005
10:06
[150]

hugo [ v4 ]

Arxel -=> podaj przykład tych oznaczeń...

28.11.2005
11:33
[151]

Arxel [ Dj Arxel ]

heh zbytnio nie pamietam:P
no ale np. w symfoni niebylo napisane zeby dodawac while(1)
i musialem sie dowiedziec (oczywiscie stad od was:D) bo mi po skompilowaniu i uruchomieniu wchodzilo i po chwili sie wylaczalo..
tzn juz dokladnie niepamietam ale cos jeszcze bylo... :)
no ale jka przegladalem inne projekty np. kompilowane w borlandzie to tez sie troche roznily od tych moich.. np dawniej sie spotkalem z czyms takim ze po <iostream.h> cos jeszcze bylo i mi w DEVC++ wywalilo ze cos jestr wlasnie po tej komendzie i caly projekt zadzialal dopieor wtedy kiedy to usunalem :)
a niby caly projekt mial dzialac... czyli to wszystko zalezy od programu w jakim dzialamy czy w koncu nie? :/

28.11.2005
21:35
[152]

hugo [ v4 ]

Do tego zeby program nie wylaczal ci sie zaraz po zakonczeniu sluży komenda "getch();" ktróra zatrymuje program do czasu wcisniecia dowolnego klawisza.

Ja natomiast mam nowy problem (z tym poprzednim jakoś się uporałem), czy ktoś mi może wyjaśnić dlaczego to nie działa (kompilator MV CPP 6.00):

#include <stdio.h>
#include <conio.h>
#include <string.h>
#define MAX 1000


double tablica[MAX];
int N;

void czytaj(FILE *f)‹
fscanf(f,"%d",&N);
for(int i=0;i<N;i++ )
fscanf(f,"%lf",tablica+i);


void wypisz(FILE *f) ‹
/*for(int i=0;i<N;i++)
printf("Dane : %s\n", tablica+i);*/



int main()

char nazwa[100];
FILE *we;
printf("Podaj nazwe pliku: ");
scanf("%99s",nazwa);
printf("\n%s",&nazwa);
we=fopen(nazwa,"rt");
if (we==NULL)

printf("Brak pliku!\n");
return 0;

czytaj(we);
wypisz(stdout);
fclose(we);
getch();
return 0;



Wyskakuje mi jakiś fatalny błąd gdy program odnajduje plik o podanej nazwie i próbuje go otworzyć... i nie mam pojęcia czemu.... ;|

03.12.2005
12:32
smile
[153]

fifalk [ fifalkowiec ]

taka sprawa:
mam klase:

class moja_klasa

public:
moja_klasa(const char*n);
...
private:
char *nazwa;
›;

konstruktorem przydzielam sobie pamiec na nazwe i kopiuje do niej podany ciag znakow:
moja_klasa::moja_klasa(const char*n)

nazwa=new char[strlen(n)];
strcpy(nazwa,n);


pozniej w kilku miejscach potrzebuje zwolnic przydzielona pamiec i przydzielic ja na nowo - wiecje lub mniej:

moja_klasa::moja_funkcja(int nowy_rozmiar)

delete []nazwa; //tutaj dostaje blad przy wykonywaniu programu
nazwa=new char [nowy_rozmiar];


ktos moze pomoc, czemu nie moge zwolnic pamieci?

04.12.2005
14:56
smile
[154]

fifalk [ fifalkowiec ]

up?

uproszczony problem - przy takim konstruktorze jak napisalem powyzej destruktor postaci
moja_klasa~moja_klasa()

delete []nazwa; //probowalem tez "delete nazwa;"


nie dziala....

04.12.2005
18:24
smile
[155]

aka [ Chorąży ]

Fifalk zmień w konstruktorze
nazwa=new char[strlen(n)+1];
i powinno działać dobrze.

04.12.2005
19:07
[156]

Kubol [ Konsul ]

hugo --> pewnie już wiesz ;-), ale jakby co to:

char nazwa[100];
printf("\n%s",&nazwa);

Nazwa to wskaźnik sam w sobie, więc nie &nazwa, ale nazwa w printfie i będzie oki.
Pewnie printf przeszedl w poszukiwaniu nulla do jakiejś strzeżonej pamięci ;-)

04.12.2005
19:45
smile
[157]

fifalk [ fifalkowiec ]

Aka --> niestety nie dziala :-(
wogole to jest jakies poryte - w normalych funkcjach (globalnych) nie ma z tym zadnego problemu - przekopiowalem sobie kod i dziala. natomiast w klasach pojawiaja sie takie wlasnie problemy :-/
jakies pomysly?

04.12.2005
21:21
[158]

Kubol [ Konsul ]

fifalk --> jaki dokładnie dostajesz błąd ? możesz przekelić ?

04.12.2005
21:54
[159]

fifalk [ fifalkowiec ]

w beduggerze wyskakuje dokladnie w miejscu wykonywania delete -->

04.12.2005
22:05
[160]

Kubol [ Konsul ]

fifalk -->

To się może dziać z 2 powodów:

1. Zwalniasz pamięć 2x, napisz sobie printfa.
2. (bardziej prawdopodobne) Piszesz gdzieś po nie swojej pamięci, debugger to wykrywa. Upewnij sie, że alokujesz strlen +1 (pamiętaj o miejscu na '\0' ). Spróbuj skompilować w trybie release. Jeśli błąd się nie powtórzy, to znaczy, że nadpisałeś niewielką część swojej pamięci. Jeśli wyleci access violation, znaczy, że coś jest super skopane ;-).

04.12.2005
22:08
[161]

fifalk [ fifalkowiec ]

uzywam tego w wiekszym programie, wiec myslalem, ze moze gdzies cos zmieniam przez przypadek i dlatego to nie dziala. napisalem na szybko klase i program. nie dziala :-(((
oto calosc:

#include "klasa.h"

using namespace std;

void main()

klasa a("kkk");



plik klasa.h:
#include <iostream>

class klasa

public:
klasa(char *c="");
~klasa(void);
private:
char *nazwa;
›;

klasa::klasa(char *c)

nazwa=new char[strlen(c)];
strcpy(nazwa,c);

klasa::~klasa(void)

delete []nazwa;

04.12.2005
22:09
smile
[162]

fifalk [ fifalkowiec ]

za pozno wkleilem - zaraz sprawdze to +1, bo znowu o tym zpaomnialem

04.12.2005
22:09
[163]

Kubol [ Konsul ]

fifalk --> strlen(..) + 1

04.12.2005
22:16
[164]

fifalk [ fifalkowiec ]

wielkie dzieki :-)

faktycznie. ale ja glupi jestem...
swoja droga to bez sensu, ze przy wpisywaniu blad nie wystepuje, tylko przy kasowaniu :-)

a jeszcze przy okazji - w takie sytuacji, gdy mam jakis ciag znakow jako char *ciag musze pisac []delete (jak dla tablicy) czy wystarczy samo delete?

ps. jeszcze przy konstruktorze kopiujacym cos mi nie hula z tym delete, ale zaraz jeszcze raz dokladnie wsyztsko sprawdze.

04.12.2005
22:23
[165]

Kubol [ Konsul ]

fifalk --> zgodnie ze standardem powinno być delete[], chociaż skoro free jest jedno dla tablic i obiektów, a większość implementacji delete pewnie opiera się na free, nie sądzę, żeby robiło to różnicę w praktyce. Niemniej jak jest delete[], to trzeba tego używać.

Błąd, który dostałeś nie ma nic wspólnego z C++ a z debuggerem. W trybie debug często alokuje się tzw. guardy. Ty chcesz alokować np. 4bajty, new alokuje Ci 12, przy czym 4 pierwsze i 4 ostanie są wypełniane jakąś fajną wartością (np. 0xdeadbeef ;-) ). Następnie przy dealokoacji jest sprawdzane, czy te bajty zawierają to, co powinny, jeśli nie, to znaczy, że nadpisałeś pamięć (tzw. high end/ low end memory corruption, w zależności od tego, czy się nie zgadza na dole, czy na górze) i wywala się błąd.

W twoim programie nadpisałeś 0rem 1 komórkę ponad to, co zaalokowałeś, stąd ten komunikat.

04.12.2005
22:33
smile
[166]

fifalk [ fifalkowiec ]

dzieki za wyjasnienie, teraz rozumiem.
gdy za pierwszym razem poprawialem to "+1" musialem zpaomniec o jakims miejscu (w programie w wielu miejscach zmieniam wartosci tego ciagu) i stad na poczatku to rozwiazanie "nie dzialalo". na szczescie wszystko juz hula :-)

raz jeszcze dzieki dla Ciebie i Aka :-)

04.12.2005
23:08
[167]

hugo [ v4 ]

czy ktoś moze wie, jak w tym prostym programiku (czytającym dane z pliku tekstowego) wstawić funkcję zliczającą ilość danych w pliku?

Dane w pliku są zawarte w ten sposób:
100
200
300
123
412

itd.
W tym przypadku jest 5 pozycji, jak zmusić program to policzenia ile tych pozycji jest? Wypisać je potrafię, ale policzyc nie... :|


#include<stdio.h>


double f[100];
int N;

void czytaj(FILE *pFile)‹
for(int i=0;i<10;i++)
fscanf (pFile, "%lf", &f);
›;
int main ()‹
char nazwa[100];
FILE * pFile;

printf("Podaj nazwe pliku: ");
scanf("%s",nazwa);
pFile = fopen (nazwa,"r");
if (pFile==NULL) ‹
printf("Brak pliku!\n");
return 0;


czytaj(pFile);
fclose (pFile);
for (int i=0;i<10;i++)
printf ("Zmienna A[%d] = %lf \n",i,f);
return 0;

04.12.2005
23:22
[168]

hugo [ v4 ]

Do tego potrzebuję jeszcze, aby program utworzył automatycznie tylu tablicę zmiennych, która pomieści je wszystkie (czli w w/w przypadku powinna to być tablica double f[5]; (w przypadku 10 zmiennych double f[10]; itd. itp.)

05.12.2005
08:27
[169]

Kubol [ Konsul ]

hugo -->

Sprawa jest problematyczna. W ogólnym przypadku nie da się tego dobrze zrobić nie wczystując wszystkich. Mozna pobrać długość pliku w bajtach a nastepnie obliczyć ile tam może być rekodrów - w twoim przypadku size/5 (a na linuxie size/4) - i tu się pojawia problem z przenośnością programu.
Zakładając jednak postać nowych linii (na windzie 2 bajty) można to zrobić.
Tu pojawia się kolejny problem - różne systemy różnie obsługują operacje na plikach. Zobacz, czy masz w swoim środowisku funkcję "fstat". Jeśli tak, to powinny być jej 2 wersje. Jedna bierze ścieżkę do pliku. Druga bierze inta, który jest idkiem pliku. Można go otrzymać używając funkcji "fileno".

06.12.2005
13:19
smile
[170]

Sephion [ One Winged Angel ]

Czy wie ktos moze w jaki sposob za pomoca swojej aplikacji [c++] moge wywolac otworzenie pliku w systemie przez domyslna aplikache powiazana z rozszerzeniem?

07.12.2005
15:27
[171]

Maevius [ Czarownik Budyniowy ]

Czy moglibyscie mi poradzic jakas dobra ksiazke do WinAPI ? Okazalo sie, ze na zaliczenie oprocz projektu w OpenGL ktory skonczylem, musze dopisac rasteryzacje kola w 2D czy inne czary zwiazane z fibonaccim i okręgami ... UCH :(

07.12.2005
16:10
smile
[172]

Didier z Rivii [ life 4 sound ]

mam w programie taki fragment:

**********
while (1) <
c = getopt (argc, argv, "uf:");
if (c == -1)
break;
switch (c) <

case 'u':
printf ("opcja u\n");
break;

case 'f':
fclose(plik);
plik=fopen(optarg, "r");
if((plik=fopen(optarg, "r"))==NULL)<
printf("Brak pliku do otwarcia\n"); exit(2); >
break;
default:
printf ("?? getopt zwrocilo kod znaku 0%o ??\n", c);
>
>

*********
przy wywolaniu programu w taki spsoob: "./a.out -f tekst.html" wartosc zmeinnej optarg jest rowna "tekst.html" i wszystko jest dobrze, ale ja chce zeby jednoczesnie dzialala tez tak opcja wywolania -u czyli zeby bylo mozliwe wywolanie "./a.out -f tekst.html -u *.pl" i zeby jedna ze zmiennych (tak jak poprzednio optarg miala wartosc "tekst.html", a drugga wartosc "*.pl".
Moje pytanie jest wlasnie jak funkcja getopt nazywa zmienne z ktorymi wywolany zostal program gdy jest ich wiecej niz jedna, bo gdy jedna to wlasnie "optarg"

09.12.2005
23:19
smile
[173]

KULL [ Gladiator ]

troche OffTopic: znacie jakies fajne stronki z gotowymi kodami programow w JAVA ?? Moze jakies kody programow opisane w formie tutoriali??

12.12.2005
10:29
[174]

milo112 [ Legionista ]

Wiatam mam takie pytanko czy jest możliwość uruchomienia w windowsie takiego programu :

Napisz program tworzący kopie pliku zamieniający wszystkie małe litery na wielkie. Nazwy starego i nowego pliku podane są jako parametry

Pod linuxem uruchamiamy go: ./program stary.txt nowy.txt

A pod winodwsem ?? Może w wierszu poleceń ??
Ponieważ jest kłopotliwe przełanaczanie z windowsa do linuxa gdzie niestety nie mam iternetu.

Używam kompilatora DEV-C++ 4.9.9.0

Proszę o pomoc
I jeżeli macie sugestie co do tego jak napisać ten program to byłbym wdzienczny.

12.12.2005
10:32
[175]

Regis [ ]

powinno dzialac, jesli program jest w C/C++ i nie korzysta z funkcji linuksowych, bo sposob przyjmowania parametrow uruchomieniowych jest okreslany przez sam program, a nie system. Z linii polecen wpisz:

program.exe stary.txt nowy.txt

i powinno dzialac

12.12.2005
10:56
[176]

milo112 [ Legionista ]

Ok rzeczywiscie działa poprawnie, dzieki. A masz może jakieś sugestie jak napisać ten program ?

12.12.2005
11:04
[177]

Sir Skull [ Market Square Hero ]

milo112 -> Przejdź się po pliku i sprawdzaj po kolei wielkość liter. Potem zapisz do nowego pliku.

12.12.2005
11:34
[178]

milo112 [ Legionista ]

Sir Skull -> Ok dzieki, posiedze nad tym jak bede miał problemy to napisze..

12.12.2005
13:09
[179]

jackowsky [ JVC ]

Witam.

Mam zadeklarowaną tablicę dwuwymiarową np.

int tablica [100] [100]

chcę ją, w celu pewnej obróbki, przekazać jako argument do funkcji.

Jak powinna wyglądać deklaracja takiej funkcji, a jak odwołanie się wewnątrz funkcji do wartości konkretnego elementu z tablicy.

12.12.2005
14:05
[180]

milo112 [ Legionista ]

Np. wypisanie macierzy :

void printMatrix( int matrix[100][100] )

int i, j;

for ( j = 0; j < 100; ++j ) ‹
for ( i = 0; i < 100; ++i )
printf( "\t%d", matrix[j] );
printf( "\n" );


Czy o to chodziło ?

12.12.2005
14:22
[181]

jackowsky [ JVC ]

Nie do końca o to chodziło, ale dzięki za chęci. W C nie można przekazać do funkcji tablicy przez wartość.

12.12.2005
14:59
smile
[182]

milo112 [ Legionista ]

Mam problem musze napisać program, operujący na plikach, niestety dopiero się ucze i w tych operacjach nie jestem zbyt dobry czy ktoś pomoże??
Program ma tworzyć kopie pliku zamieniający wszystkie małe litery na wielkie. Nazwy starego i nowego pliku podane są jako parametry czyli : p1.exe stary.txt nowy.txt

Do tej pory stworzyłem coś takiego to jakby szkielet (ale nie wiem jak dalej z tym ruszyć) :

#include <stdio.h>

int main(int argc, char *argv[])

FILE *plik;



/*otwarcie pliku do odczytu*/
plik = fopen(argv[1], "r");

/* sprawdzenie czy zostal prawidlowo otwarty */
if (!plik)

printf("Blad otwarcia pliku");
return 0;


char znak;
/* dopoki program nie dotrze do konca pliku ma robić.. */
while ( !feof(plik) )

/* odczytuj znak z pliku */
fscanf(plik, "%c", &znak);
plik = fopen(argv[1], "wb+");
if (znak = 'a' && znak = 'z')

znak=
fwrite(/* Tutaj niestety nie wiem jak dokłanie powinno wygl.*/);

else
/* fwrite(); */


/* zamkam plik */
fclose(plik);
return 0;



Jeżeli wiecie jak to zrobić proszę o pomoc !!

12.12.2005
16:22
[183]

aka [ Chorąży ]

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])

FILE *plikin, *plikout;


/*otwarcie pliku do odczytu*/
plikin = fopen(argv[1], "r");
plikout = fopen(argv[2], "w");

/* sprawdzenie czy zostal prawidlowo otwarty */
if (!plikin)

printf("Blad otwarcia pliku");
return 0;


char znak;
/* dopoki program nie dotrze do konca pliku ma robić.. */
while ( !feof(plikin) )

/* odczytuj znak z pliku */
fscanf(plikin, "%c", &znak);

fprintf(plikout, "%c", toupper(znak));



/* zamkam plik */
fclose(plikin);
fclose(plikout);
return 0;

12.12.2005
16:39
[184]

milo112 [ Legionista ]

aka -> Wielkie dzieki :)) ale mam jeszcze problem nie chce się skompilować czepia sie tej funkcji toupper(znak), wyświetla taki komunikat : 'toupper' undecerated(first use this function)

Ja własnie też nie wiem o co chodzi z tą funkją ?? Co ona robi ?

12.12.2005
17:14
[185]

Sir Skull [ Market Square Hero ]

milo112 --> zainkluduj ctype.h. Funkcja toupper właśnie zmienia wielkość znaku.

12.12.2005
18:14
[186]

milo112 [ Legionista ]

Sir Skull --> dzieki za wytlumaczenie ale nie rozumiem jeszcze tylko jedenj zeczy tutaj : plikout = fopen(argv[2], "w"); <-- Dlaczego jest argv[2] ??

12.12.2005
18:26
[187]

Sir Skull [ Market Square Hero ]

milo112 --> argv to wskaźnik na tablicę argumentów twojego programu.
argv[0] - nazwa programu
argv[1] - pierwszy argument
argv[2] - drugi argument
itd.

Przy okazji mógłbyś sprawdzać ilość argumentów z jakimi jest uruchamiany Twój program. argc = liczbie elementów argv[].

12.12.2005
19:21
[188]

milo112 [ Legionista ]

To wlasnie wiem ze drugi argument, tylko dlaczego zaczynamy od drugiego a nie od pierwszego ?

12.12.2005
19:36
smile
[189]

Sir Skull [ Market Square Hero ]

Nie rozumiem gdzie widzisz problem. Mówimy o programie aka z 16:22 ? Tam wyraźnie pisze:
plikin = fopen(argv[1], "r");
plikout = fopen(argv[2], "w");


Weź jeszcze zapytaj dlaczego nie ma argv[0] to się załamię ;) Wiesz co to tablica, prawda ?

12.12.2005
19:43
[190]

milo112 [ Legionista ]

a juz rozumiem heh slowo tablica mnie naprowadziło na prawidłowy tok myślenia :)) Dzieki !!!

13.12.2005
18:36
smile
[191]

milo112 [ Legionista ]

Witam mam problem co do programu zamieniającego małe litery na duże, poniważ zmieniłem go tak aby nie kożystał z funkcji tylko działał na zasadzie if .... i kodu znaków, wszstko byłoby ok tylko problem tkwi w tym że ostatni znak wypisuje 2 razy i nie wiem dlaczego :( może ktoś wskaże mi błąd ?
Program ma tworzyć kopie pliku zamieniający wszystkie małe litery na wielkie. Nazwy starego i nowego pliku podane są jako parametry czyli : p1.exe stary.txt nowy.txt

Wygląda tak :

#include <stdio.h>

int main(int argc, char *argv[])

FILE *plikin, *plikout;


/*otwarcie pliku do odczytu*/
plikin = fopen(argv[1], "r");
plikout = fopen(argv[2], "w");

/* sprawdzenie czy zostal prawidlowo otwarty */
if (!plikin)

printf("Blad otwarcia pliku");
return 0;


char znak;
/* dopoki program nie dotrze do konca pliku ma robić.. */
while (!feof(plikin))

/* odczytuj znak z pliku */
fscanf(plikin, "%c", &znak);
if(znak>='a' && znak<='z')

znak=znak-32;
fprintf(plikout, "%c",znak);

else

fprintf(plikout, "%c",znak);



/* zamykam plik */
fclose(plikin);
fclose(plikout);
return 0;

13.12.2005
19:57
[192]

Pirix [ ! KB ! Góry górą ]

Witam!

Mam nadzieje, że znajdzie się ktoś znający się na WinAPI.
Mam taki problem:
Musze napisać program, który rysuje przekątne prostokąta, a następnie podczas kolejnego obsłużenia WM_PAINT rysuje przekątne unieważnionego fragmentu okna. Z pierwszą częścią nie mam problemu, natomiast problem mam z druga części. Obsługa WM_PAINT wygląda u mnie obecnie tak:

case WM_PAINT:
HDC hdc;
PAINTSTRUCT ps;
hdc = BeginPaint (hwnd, &ps);
RECT rect;

GetClientRect (hwnd, &rect);
LineTo (hdc, rect.right, rect.bottom);
MoveToEx (hdc, rect.left + 600, rect.top, NULL);
LineTo (hdc, rect.right - 600, rect.bottom);


EndPaint (hwnd, &ps);
return 0;

No i właśnie - co muszę dopisać, aby rysowane były przekątne unieważnionych prostokątów?

13.12.2005
22:28
smile
[193]

aka [ Chorąży ]

milo112:
Nieznacznie zmodyfikowana pętla i jest ok.

while (fscanf(plikin, "%c", &znak) != EOF)

/* odczytuj znak z pliku */

if(znak>='a' && znak<='z')

znak=znak-32;
fprintf(plikout, "%c",znak);

else

fprintf(plikout, "%c",znak);



Pirix:
Nie bardzo rozumiem te pojęcia:
-unieważnionego fragmentu okna
-unieważnionych prostokątów
Napisz to jaśniej.

14.12.2005
09:36
[194]

Pirix [ ! KB ! Góry górą ]

Unieważniony fragment okna jest to fragment, który został np. zasłonięty przez inne okno. System windows przybliża ten fragment prostokątem i to jest właśnie ten unieważniony prostokąt.

14.12.2005
09:38
[195]

Pirix [ ! KB ! Góry górą ]

[edit]
Po odsłonięciu ten fragment trzeba odrysować. I w związku z tym odrysowaniem mam problem, ponieważ obecnie odrysowywane od początku jest całe okno, a ja mam narysować przekątne tylko w tym unieważnionym prostokącie.
[/edit]

14.12.2005
12:05
[196]

aka [ Chorąży ]

Struktura PAINTSTRUCT ma pole:
rcPaint
Specifies a RECT structure that specifies the upper left and lower right corners of the rectangle in which the painting is requested, in device units relative to the upper-left corner of the client area.

Możesz spróbować zamiast tego: GetClientRect (hWnd, &rect);
prostego przypisania: rect = ps.rcPaint;
albo zastąpic wywołania rect na ps.rcPaint.
I oczywiście musisz poprawić rysowanie prostopadłej linii na bardziej uniwersalne.

14.12.2005
13:30
[197]

Pirix [ ! KB ! Góry górą ]

Wielkie dzięki:) Kombinowałem z użyciem pola rcPaint, ale na takie proste podstawienie nie wpadłem. Zaczyna robić program to co powinnien.

16.12.2005
23:33
smile
[198]

fifalk [ fifalkowiec ]

taka sprawa.

mam klasy

class klasa

public:
klasa(int wartosc);
private:
const int stala;


zeby wpisac "wartosc" do zmiennej "stala", musze to zrobic na liscie inicjacyjnej. ale jak przypisac "wartosc" do tej zmiennej, jesli wczesniej musze sprawdzic prosty warunek - np. czy jest wartosc jest z przedzialu [3,7]?

31.12.2005
16:53
smile
[199]

KULL [ Gladiator ]

W nowym roku nowy watek bedzie bo ten juz troche za duzy :).

Szczesliwego Nowego Roku wszystkim Programistom :D

02.01.2006
18:31
smile
[200]

Sn33p3r [ Luca Brasi ]

Witam mam problem nie bylem na 2 zajeciach z programowania w C i dzsiaj się dowiedziałem, że mam na jutro wysłać jako zadanie program, dotyczy on list jednkowierunkowych a ja za bardzo nie wiem o co chodzi, nie zdążyłem jeszcze do tego usiąść. Zadanko wygląda tak :
Napisz program który wczyta ze standardowego wyjścia dwa ciągi liczb całkowitych o dowolnej długości i umieści je w dwóch odrębnych listach jednokierunkowych. Napisz funkcje, która porówna zawartość obu list i stwierdzi, czy są one identyczne, czy też nie. Dwie listy są identyczne, jeżeli przechowują identyczne ciągi wartości. Wynik porównania wyprowadź na standardowe wyjście.

Jeżeli ktoś wie jak to zrobić to byłbym bardzo wdzięczny !!!

Z góry dzięki !!!

02.01.2006
18:50
[201]

Sir Skull [ Market Square Hero ]

Kull --> Dawaj nową część wątku ;)

Sn33p3r --> Chcesz żeby ktoś za ciebie napisał program? Jeśli pytasz jak to zrobić, to odpowiedź brzmi - poprawnie.
Sprecyzuj pytanie.

02.01.2006
20:37
smile
[202]

Sn33p3r [ Luca Brasi ]

no wiem jak napisać normalnie program porównujący te ciągi ale nie wiem o co chodzi z tymi listami jednkierunkowymi, bo to wlasnie opuscilem na zjeciach :(

02.01.2006
20:46
[203]

rats [ Legionista ]

Sir Skull---->Sn33p3r sie grzecznie zapytal. a Ty musiales go zjechac?Prosil tylko o pomoc!
Sn33p3r--->Zaraz sie odezwe do Ciebie na gadu i pokombinujemy-lubie nowe wyzwania:)

02.01.2006
20:49
[204]

Sir Skull [ Market Square Hero ]

Lista jednokierunkowa to struktura danych, w której każdy element przechowuje jakieś dane i wskażnik na następny element. Ostatni element wskazuje na null'a.

struct lista ‹
typ dane;
...
struct lista *next;


Wpisz w google "lista jednokierunkowa" - jest tego naprawdę mnóstwo.

03.01.2006
20:52
[205]

Pirix [ ! KB ! Góry górą ]

Ja wracam ponownie z pytaniem o WinAPI. Jak skrzyżować ze sobą dwa pędzle wzorkowe(typu hatch)? Powiedzmy, że chce poziome linie na pionowych liniach ale w różnych kolorach. Tzn. pionowe mają być innego koloru niż poziome.

03.01.2006
21:14
[206]

Sir Skull [ Market Square Hero ]

Nie wiem do czego chcesz to użyć, ale może spróbuj stworzyć własny pędzel z bitmapy.
CreatePatternBrush() - więcej na msdn ;)

03.01.2006
21:19
[207]

Pirix [ ! KB ! Góry górą ]

Sir Skull--->niestety nie mogę z tego skorzystać. Programn na zajęcia piszę i własne bitmapy odpadają. Tak już dawno bym to zrobił. Podobno da się to zrobić bez tworzenia własnej bitmaby.

04.01.2006
12:40
[208]

Maevius [ Czarownik Budyniowy ]

Czy moglby ktos podac mi linki do materialow o WinAPI? Bede bardziej niz wdzieczny. Musze napisac rasteryzacje kola algorytmem Bressenhama... Uch.

Dzieki za pomoc!

04.01.2006
12:45
smile
[209]

Sir Skull [ Market Square Hero ]

Maevius --> Tego szukasz? ;)

04.01.2006
12:51
[210]

moniushco [ Konsul ]

W temacie jest nie tylko w c++ więc zwracam się o pomoc!!
nie bede pisł dwa razy tego samego więc wale linka;)

04.01.2006
13:07
[211]

Maevius [ Czarownik Budyniowy ]

Sir Skull -> dokladnie :) dzieki wielkie:)

a mozesz masz pod reka jakis tutorial winapi ? niektorych rzeczy nie rozumiem w tym kodzie

04.01.2006
13:11
[212]

Maevius [ Czarownik Budyniowy ]

Dev C++ wywala mase bledow. Czepia sie do deklaracji.

04.01.2006
13:11
[213]

Sir Skull [ Market Square Hero ]

Najlepsza jest biblia Petzolda. Poza tym całkiem ciekawie jest na https://www.functionx.com/win32/ i na https://www.winprog.org/tutorial/

04.01.2006
13:28
[214]

Sir Skull [ Market Square Hero ]

Maevius --> W Microsoft Visual C++ 6.0 0 problemów. Działa poprawnie.

04.01.2006
13:30
[215]

Maevius [ Czarownik Budyniowy ]

Sir Skull -> Wiesz moze dlaczego wywala bledy typu "error C2065: 'staticTCHAR' : undeclared identifier" ? Probowalem skompilowac ten kod, jest kolo 20 podobnych bledow.

04.01.2006
13:30
[216]

Maevius [ Czarownik Budyniowy ]

Wlasnie ciag bledow wywalilo mi pod VS 2005 :)

04.01.2006
13:41
[217]

Sir Skull [ Market Square Hero ]

Sprawdziłem pod Dev-C++ 4.9.8.0 - żadnych błędów. Lekko zmodyfikowałem go, ale błędów nie ma ;) Wyślę ci zaraz na mejla.

04.01.2006
13:45
smile
[218]

Maevius [ Czarownik Budyniowy ]

Sir Skull - dzieki

04.01.2006
13:53
smile
[219]

moniushco [ Konsul ]

łudziłem się że mi ktoś pomoże cóż takie są wątki tematyczne

04.01.2006
13:56
[220]

Sir Skull [ Market Square Hero ]

moniushco --> Co się tak oburzasz? Może po prostu nikt nie wie? Minęła ledwie 1h od kiedy napisałeś o swoim problemie. Nie wszyscy siedzą na GOLu i czekają aż wpadniesz tu z jakimś problemem.

05.01.2006
23:01
smile
[221]

KULL [ Gladiator ]

nowy watek - zapraszam :)

https://forumarchiwum.gry-online.pl/S043archiwum.asp?ID=4598146&N=1

© 2000-2021 GRY-OnLine S.A.