Skocz do zawartości

Liczenie słów


Raptile

Rekomendowane odpowiedzi

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++

Odnośnik do komentarza
Udostępnij na innych stronach

#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ć.

Odnośnik do komentarza
Udostępnij na innych stronach

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ć??

Odnośnik do komentarza
Udostępnij na innych stronach

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;
}

Odnośnik do komentarza
Udostępnij na innych stronach

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ć??

Odnośnik do komentarza
Udostępnij na innych stronach

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. <_<

Odnośnik do komentarza
Udostępnij na innych stronach

  • Filar Społeczności
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.

Odnośnik do komentarza
Udostępnij na innych stronach

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']

Odnośnik do komentarza
Udostępnij na innych stronach

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;
}

Odnośnik do komentarza
Udostępnij na innych stronach

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 przez Vardi
Odnośnik do komentarza
Udostępnij na innych stronach

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ę
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...