Raptile Opublikowano 4 Maja 2007 Opublikowano 4 Maja 2007 w rozndziale drugim są ćwiczenia. mam problem z ćwiczeniem 3 i 4 (strona 93). nie wiem jak je zrobić... . czy mógłby ktoś mi napisać te programy?? @edit No przecież w tytule jest napisane: Liczenie słów thinkin in C++
kryniak Opublikowano 4 Maja 2007 Opublikowano 4 Maja 2007 #include <iostream> #include <string> string tekst = "Hello World!"; using namespace std; int main() { cout << tekst << "\nJego dlugosc to: " << tekst.size(); system("pause>NUL"); return 0; } Jest kupa książek o c++ może byś powiedział jaka to. Nie będziemy przecież ci wróżyć.
Raptile Opublikowano 4 Maja 2007 Autor Opublikowano 4 Maja 2007 No przecież w tytule jest napisane: Liczenie słów thinkin in C++ no dobra już coś zrobiłem ale jak uruchamiam program to ustawiłem że jak wpiszesz 1 to będzie dla kwadratu a jak 2 to dla koła ale to i tak nie działa :( dlaczego? #include <iostream> using namespace std; int main() { int i; cout << "figura: kwadrat znając bok = 1, koło znając promień = 2" << endl; cin >> i; if( i = '1' ) { cout << "wybrałeś kwadrat" << endl; cout << "podaj długość boku a" << endl; cin >> i; cout << "pole kwadratu = " << i * i << endl; } if( i = '2' ); { cout << "wybrałeś koło" << endl; cout << "podaj długość promienia" << endl; cin >> i; cout << "pole koła = " << i * i * 3.14 << endl; } } Może mi ktoś powiedzieć gdzie robię błędy i mi je poprawić??
kryniak Opublikowano 4 Maja 2007 Opublikowano 4 Maja 2007 Chłe, chłe... #include <iostream> using namespace std; int main() { int i,dane; cout << "1. Oblicz pole kwadratu\n2. Oblicz pole kola\nWybierz liczbe: "; cin >> i; switch (i) { case 1: cout << "Podaj dlugosc boku: "; cin >> dane; cout << "Pole kwadratu: " << dane*dane; break; case 2: cout << "Podaj promien: "; cin >> dane; cout << "Pole kola: " << dane*dane*3.14; break; default: cout << "Podano zla liczbe!"; break; } system("pause>NUL"); return 0; }
blackmaul Opublikowano 4 Maja 2007 Opublikowano 4 Maja 2007 Nie if( i = '1' ) Tylko if (i==1) Bo przecież to nie char, tylko int.
Raptile Opublikowano 4 Maja 2007 Autor Opublikowano 4 Maja 2007 a oky dzieki wszystkim @EDIT mam jeszcze jeden problem. chcę żeby program liczył ilość słów w pliku oddzielonych odstępamie więc robie takie coś: #include <iostream> #include <fstream> #include <string> #include <vector> using namespace std; int main() { ifstream in("code.txt"); cout << "razmiar = " << in.size() << endl; } i mi wyskakuje błąd: > line 9: 'struct std::ifstream' has not member name 'size' o co chodzi? może mi ktoś to poprawić??
Raptile Opublikowano 7 Maja 2007 Autor Opublikowano 7 Maja 2007 Sorka za 2 posty ale dlaczego nikt nie chce mi pomóc?? przecież jesteście od pomocy no nie?! a ja o nią proszę! no pls odpowiedzcie...
Tymon Opublikowano 7 Maja 2007 Opublikowano 7 Maja 2007 Nie mamy takiego obowiązku mój drogi. A do zliczania słów: #include <iostream> #include <string> using namespace std; int main() { string str; int pos, count; str = "tekst tekst tekst ma 6 slow"; pos = 0; str += " "; while( pos < str.size() ) { count += 1; pos = str.find( " ", pos + 1 ); } cout << str << "\n slow = " << count << endl; return true; } A ładowanie pliku do stringa napisz sobie sam. <_<
Filar Społeczności Ranmus Opublikowano 7 Maja 2007 Filar Społeczności Opublikowano 7 Maja 2007 Sorka za 2 posty ale dlaczego nikt nie chce mi pomóc?? przecież jesteście od pomocy no nie?! a ja o nią proszę! no pls odpowiedzcie... Słuchaj, kompilator wywalił konkretną informację co robisz źle. Bierzesz się za programowanie nie znając języka angielskiego? Chyba trzeba dopisać do regulaminu, że nie jesteśmy tłumaczami na zawołanie.
Raptile Opublikowano 7 Maja 2007 Autor Opublikowano 7 Maja 2007 A ładowanie pliku do stringa napisz sobie sam. <_< no właśnie ale ja nie wiem jak to zrobic...:/ string plik = ifstream("plik.txt") ?? znam angielski ale z tego co tam jest napisane (juz po przetlumaczeniu) to nic nie rozumiem... ['struct std::ifstream' has not member name 'size'] = ['budowa std::ifstream' nie pamieta nazwy 'size']
Vardi Opublikowano 7 Maja 2007 Opublikowano 7 Maja 2007 Przykład: #include <iostream> #include <fstream> #include <conio.h> #include <string> using namespace std; int main() { string tekst; ifstream plik; plik.open("plik.txt"); plik >> tekst; plik.close(); cout << "Zawartosc pliku: " << tekst; getch(); return 0; }
Marmot Opublikowano 7 Maja 2007 Opublikowano 7 Maja 2007 @Raptile: Member to członek, remember to pamiętać.
Raptile Opublikowano 7 Maja 2007 Autor Opublikowano 7 Maja 2007 @Raptile: Member to członek, remember to pamiętać. a no tak :) dzieki Vardi a '.close()' to jest zamkniecie pliku tak? tzn zeby system juz nie pamietal o plik.open() i zeby nie zuzywalo niepotrzebnie panieci tak??
Vardi Opublikowano 7 Maja 2007 Opublikowano 7 Maja 2007 Sprawdź co się będzie działo jak nie zamkniesz to się dowiesz.
Raptile Opublikowano 8 Maja 2007 Autor Opublikowano 8 Maja 2007 vardi zrobiłem tak jak podałeś i wszystko jest ok ale czy to oby napewno liczy słowa? bo mi się pokazało takie coś: 0x22fed4 co to znacza??
Vardi Opublikowano 8 Maja 2007 Opublikowano 8 Maja 2007 (edytowane) vardi zrobiłem tak jak podałeś i wszystko jest ok ale czy to oby napewno liczy słowa? bo mi się pokazało takie coś: 0x22fed4 co to znacza?? Nie liczy słów tylko dałem Ci przykład jak wczytać plik do zmiennej string. Pokazało Ci się "takie coś", ponieważ zapewne chcesz wyświetlić bezpośrednio plik, a powinieneś wyświetlić zmienną string - popraw to bo zrobiłeś błąd. EDIT: Ok połączyłem swój przykład z Tymona przykładem i masz liczenie słów z pliku. #include <iostream> #include <fstream> #include <string> #include <conio.h> using namespace std; int main() { string str; char bufor[256]; int pos, count; ifstream plik; plik.open("plik.txt"); plik.getline(bufor,sizeof(bufor)); plik.close(); str = bufor; pos = 0; str += " "; while(pos<str.size()) { count += 1; pos = str.find(" ",pos+1); } cout << str << "\n slow = " << count-1 << endl; getch(); return 0; } Edytowane 8 Maja 2007 przez Vardi
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się