pekfos |
» 2013-05-14 22:00:22 pewnie to śmiałe posunięcie |
Śmiałe, to jest stwierdzenie, że ten kod działa. 0 a to nie jest równe tekst[x] gdyż jest tam jakaś litera a raczej liczba(kod ASCII) na pewno różna od zera |
A skąd wiesz? |
|
Monika90 |
» 2013-05-14 23:18:54 2. Skoro dev c++ nie obsluguje języka programowania c++, to jaki z niego użytek? |
std::string _string1 _string2; _string1[ i ] == _string2;
Niestety to nie jest C++, nie można porównywać std::stringa ze znakiem. Natomiast nazwy, które zaczynają się od podkreślenia i małej litery są dopuszczalne pod warunkiem, że nie są w globalnej przestrzeni nazw. |
|
withelm |
» 2013-05-14 23:33:02 ehh, wrescie glos rozsadku :D "Niestety to nie jest C++, nie można porównywać std::stringa ze znakiem."
No ale po koleji (: 1. NHFL: w funkcji int szukanyWyraz( string tekst, string wyraz ), w drugiej petli for brakuje dwoch bardzo waznych warunkow. Ktore powoduja bledy poprawnosciowe. Dla takiego wejscia "aaabbbabababbbabaababbbababa aba" Twoj program wypisuje 10, a nie 6. Kompiluje pod GCC 4.8.0 z flaga -O2. Btw, jednak radze poprawic algorytm wyszukiwania poniewaz on jest strasznie wolny. Hint: KMP (:
2. Bajt: "1. Rzeczywiście nie skompilowałem tego kodu. Dobry programista nie potrzebuje komputera do obmyślenia architektury programu. Sam tworzy go w głowie, więc jeśli w kodzie jest literówka to tylko dlatego, że spieszylem się pisząc go do posta." - Milo mi, ze taki programista jest tutaj i udziela nam rad. D: "2. Skoro dev c++ nie obsluguje języka programowania c++, to jaki z niego użytek?" - No Panie, przeciez Dev to IDE. Pod niego mozna podpiac kazdy kompilator (GCC, MinGW). Zgadzam sie, Dev jest brzydki i ble, ale do "programow jedno plikowych", mozna go uzywac. No chyba, ze sie szaleje (: A do Trzeciego pkt nic nie powiem bo sie z nim zgadzam.
3. Ehh Monika90, zabralas mi argumet :(. |
|
pekfos |
» 2013-05-15 15:25:59 Natomiast nazwy, które zaczynają się od podkreślenia i małej litery są dopuszczalne pod warunkiem, że nie są w globalnej przestrzeni nazw. |
Globalne nazwy zaczynające się do podkreślenia są zarezerwowane, a nie niedopuszczalne. |
|
Bajt |
» 2013-05-15 15:31:57 @withelm Odnosząc się do twego posta: sugerowałem, że każdy programista powinien najpierw zaplanować swój kod w głowie. Przynajmniej ja tak robię. Trudno jest pisać kod "na żywo", skoro nie znasz jego koncepcji. @Monika90 Zgadzam się z Tobą w 100%. Rzeczywiście, kod nie jest poprawny. Drugim argumentem powinna być zmienna typu char. Tak wiec, przyznaję, masz rację. |
|
NHFL Temat założony przez niniejszego użytkownika |
» 2013-05-15 16:11:18 @Bajt miałem na myśli nazwy zmiennych trochę sie zagalopowałem ;) @pekfos przy tekście z zerami działał program niepoprawnie ale instrukcja break; w drugiej pętli w warunku if rozwiązała ten problem if( wyraz[ y ] == 0 ) { ileRazy++; break; }
@withelm trochę zmieniłem kod i dodałem if( y != 0 ) x += y - 1; w pierwszej pętli teraz działa wszystko jak należy dziękuje Panowie i Panie ;) |
|
1 « 2 » |