» »

Vislice

Vislice

prognoob ::

Imam problem z vislicami v c++.

Pri nakljućnem izboru besed iz datoteke mi vedno vzame le zadnjo besedo.

prosim za pomoč!!

moj program:
http://download.yousendit.com/B552C2EE7...

ERGY ::

Zgodovina sprememb…

  • spremenilo: ERGY ()

prognoob ::

http://pastebin.com/m889d45e <- opcija naključno

http://pastebin.com/m68261504 <- glavni program

VASkO ::

kaksne randome pa dobivas?

Roadkill ::

Nisem ravno C++ znalec ampak probaj uporabit srand.

Drugač pa poglej katere vrednosti ti zavzema "random".
Ü

VASkO ::

z branjem z uporabo >> iz datoteke prides do konca fajla (eof) in potem ti drugo zanko enostavno preskoci

edit:
tudi ce datoteko znova odpres, ne resetiras eof bita (moras dodati file.clear()). pa iste datoteke ne rabis 2x odpirat:

// preberi število vrstic v datoteki
while (!file.eof())
{
file >> beseda;
file_rows++;
}
file.clear();
file.seekg(0,fstream::beg);
// izberi naključno število med 1 in številom vrstic v datoteki
int random = rand()%(file_rows-1)+1;
// poišči besedo v prej naključno izbrani datoteki
for (int x=0;!file.eof() ; x++)
{
file >> beseda;
if (random == x)
break;
}
file.close();

Zgodovina sprememb…

  • spremenil: VASkO ()

Jean-Paul ::

VASkOva rešitev dela, ampak je počasna. Svetujem, da prebereš najprej vse besede v neko podatkovno strukturo (npr. std::vector<std::string>), ki ima dostop do poljubnega elementa v O(1).

http://www.cppreference.com/cppvector/p...

edit: No, predpostavil sem, da boš naključno izbiro besede ponovil večkrat. Če ne, je VASkOva rešitev več kot dobra.

Zgodovina sprememb…

VASkO ::

to je avtorjeva resitev s popravkom, da deluje. ma ko delas neke vecje I/O operacije pa je itak terba v racun vzet se performance algoritma. za vislice pa ni frke :)


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Linux wireless

Oddelek: Operacijski sistemi
131083 (572) AlienRR
»

Ubuntu 9.04 & ati mobility radeon

Oddelek: Operacijski sistemi
5920 (872) roba87
»

[c++]file read problem

Oddelek: Programiranje
151514 (1249) 'FireSTORM'
»

VB6 - ne zaključi proces programa - pomoč !!!

Oddelek: Programiranje
131314 (1155) Mavrik
»

Kako v VB prebereš določeno vrstico v txt file?

Oddelek: Programiranje
6800 (696) pro2c

Več podobnih tem