• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed Z czytywanie wiersza z pliku txt.

Object Storage Arubacloud
0 głosów
244 wizyt
pytanie zadane 13 marca 2016 w C i C++ przez szymi666 Bywalec (2,020 p.)
zamknięte 13 marca 2016 przez szymi666

Witam dzisiaj o godzinie 5:00 wpadłem na pewien pomysł otóż pisze program który "rozmawia" z użytkownikiem i uczy się słów/zdań które wpisze użytkownik tekst ten zapisywany jest do pliku a potem odczytywany i wypisywany w konsoli.Napisałem już wszystko poza jedną rzeczą a mianowicie chodzi o to czy wie ktoś jak ten fragment kodu zmodyfikować tak aby program wyświetlał jedną linijkę narazie jakąś randomową.

	words2.open("words.txt");
    while(getline(words2,line))
	cout<<line<<endl;
	words2.close();

Z góry dzięki za odpowiedź,   

komentarz zamknięcia: Problem rozwiązany

2 odpowiedzi

+1 głos
odpowiedź 13 marca 2016 przez Aisekai Nałogowiec (42,190 p.)
wybrane 13 marca 2016 przez szymi666
 
Najlepsza
Możesz wrzucić wszystko do tablicy (albo vectora), a potem losowac liczbę będącą indeksem tablicy. I wyświetlasz ją
komentarz 13 marca 2016 przez szymi666 Bywalec (2,020 p.)

Czy mógłbyś naprowadzić mnie jak to mniej więcej zrobić szczególnie to"Możesz wrzucić wszystko do tablicy" wybacz za prośbę ale jestem mocno początkujący.

komentarz 13 marca 2016 przez Munvik Dyskutant (9,350 p.)

Domyślam się, że Aisekai chodzi o to żeby stworzyć tablicę stringów z rozmiarem ilości linii w pliku txt.

Nastepnie wrzucasz każdą linie do tablicy.

Nastepnie losujesz pseudolosową liczbę z zakresu rozmiar tablicy stringow
I wypisujesz określoną linijkę w zależności od losu. 

int los  = rand()%(liczba rozmiaru tablicy)
cout<<tablica[los];

 

komentarz 13 marca 2016 przez Aisekai Nałogowiec (42,190 p.)
Tak, o to mi chodziło
komentarz 13 marca 2016 przez Aisekai Nałogowiec (42,190 p.)
Tylko lepiej nie tablicę, a wektor. Bo żeby stworzyć tablicę musisz znać jej rozmiar
komentarz 13 marca 2016 przez szymi666 Bywalec (2,020 p.)

zrobiłem coś takiego jednak wyświetlają mi się pojedyncze litery a nie całe słowasad

	words2.open("words.txt");
    getline(words2,line);
    int los = rand()%(10);
    cout<<line[los];
	words2.close();

 

komentarz 13 marca 2016 przez Aisekai Nałogowiec (42,190 p.)
line to jest pewnie String, a nie tablica Stringow. Jeżeli line = "Dominika" To: line[0] = 'D', line[1] = 'o', etc.
komentarz 13 marca 2016 przez szymi666 Bywalec (2,020 p.)
W takim razie sugerujesz,że powinienem line zmienić na tablice stringów bo jeżeli tak to będzie trzeba to chyba jakoś ustalić ,że np. line[0]=wiersz jeden prawda?
komentarz 13 marca 2016 przez szymi666 Bywalec (2,020 p.)
Problem już rozwiązany serdecznie dziękuje za cierpliwość.
+1 głos
odpowiedź 13 marca 2016 przez Krawiec91 Pasjonat (19,600 p.)
Zapisuj dane do pliku w postaci binarnej, nie tekstowej. Potem będziesz mógł wczytać sobie z pliku, np. zdanie 10, bez konieczności wczytania dziewięciu poprzednich, co by było konieczne w przypadku pliku tekstowego.

Podobne pytania

0 głosów
1 odpowiedź 472 wizyt
pytanie zadane 20 czerwca 2015 w Java przez damianeqe Gaduła (4,380 p.)
+1 głos
2 odpowiedzi 177 wizyt
0 głosów
1 odpowiedź 367 wizyt
pytanie zadane 13 października 2017 w C i C++ przez plebaniahobbitanow Początkujący (470 p.)

92,576 zapytań

141,426 odpowiedzi

319,652 komentarzy

61,961 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...