No vidíte dal jsem tu špatný kus kódu, měl jsem to tak že jsem měl otevřen soubor a až pak zkusil test na jestli je, neni otevřen. I když je to možná v tenhle moment zbytečné, potřebuji tedy jen otevřít soubor, což by nebyl zas takový problém. Ale problém nastane v ten moment když mám (zadané hodnoty jsou vždycky tak že jedna je na jednom řádku) vkládat do stromu.. Tak dál nevím jak udělat abych ten txt přečetl a vkládall postupně hodnotu po hodnotě do toho stromu. Jak správně číst po hodnotě a odkázat na insert aby to vkládal.
Příspěvky odeslané z IP adresy 91.187.57.–
No jako, načist soubor vypsat, nebo zapsat do souboru to sem zvládnul. Ale zasekl jsem se u toho otevření txt jak postupně ty čísla mám vkládat do stromu, zkoušel jsem všechno možné, a při vypsání toho stromu mi to místo těch hodnot vyhodilo, uplně něco jiného. Tak už fakt nevim..
Zdravím, mám takový problém. Mám napsaný kód pro binární strom, vše funguje pokud použiju metodu Insert a vkládám do stromu po jedné hodnotě. Já bych, ale potřeboval, aby se při spuštění příkazové řádky nabídla možnost zadat název souboru třeba strom.txt, to jsem nějak zvládnul a snad to jde dobře, ale mám problém stím že nevím jak udělat to aby se z tohoto souboru hodnoty které v něm jsou (na každém řádku jedna hodnota) vkládaly postupně do mého stromu pomocí Insert.
(jestli první zvolit ifstream.open, otevřít soubor a pak nějak read, a postupně to pročítat? potřebuju jen typ int, bude se jednat jen o čísla)
tohle mám na zvolení názvu a otevření:
char nazev[256];
cout << "Zadejte jmeno souboru: ";
cin >> nazev;
ifstream soubor(nazev);
if(!soubor.is_open())
{
cout << "Soubor nelze otevrit!! Zkontrolujte cestu k souboru!!" << endl;
system("pause");
}
if(soubor.is_open())
{
cout << "Soubor otevren.\n\n" << endl;
soubor.open(nazev, ios::in);
}
volání metody Insert a její řešení:
BinarySearchTree tree;
tree.Insert(10);
void BinarySearchTree::Insert(int Key)
{
InsertRec(mRoot, Key);
}
Myslím že by to mohlo stačit, Insert v těle volá InsertRec, který se stará o vkládání atd.
Tak snad někdo pomůže a ukáže jak na to.
Předem díky za odpovědi, moc by mi to pomohlo.
To Nrigo :
Díky za rady, nad tím sem uvažoval načíst z jineho souboru, vyzkoušim to, ale ještě sem tohle nedělal tak musim přijit co a jak udělat.
Zdravím,
Mám napsaný program v C++, asi je můj dotaz trochu hloupý, ale přece se zeptám.
Můj dotaz směřuje k tomuto, mám pole které obsahuje 1229 prvků (prvočísla od 2 do 10 000), tak vznikne sakra dlouhý řádek, zkoušel jsem i zalomit na obrazovku tak aby šla vidět všechna prvočísla, ale je ztoho velký odstavec čísel a dělá to kod nepřehledným.
Pracuji ve VisualStudiu 2010.
Nejde nějak udělat že by pole bylo jako by zabaleno a rozevřel by se jeho obsah pro zobrazení jen když chci ??
Jako když mužu zbalit funkci a poté ji zase zobrazit. (Nebo nějáký návrh jak jnak to udělat ?)
(zkoušel jsem si udělat jen funkci, která obsahovala toto pole, ale nejde to udělat aby mi to pobral algoritmus v druhe funkci, neboť zde s polem pracuji a nejde mi v podminkach volat pole z jine funkce )
na ukazku sem dal jen par prvku.
void rozkladHodnoty (int hodnota)
{
int pole[1229] = {2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 101,..........}
}
Zdravím, už dlouho jen tak lehce čtu kolem různých programovacích jazyků v programování, a webdesignu. Na škole jsme dělali v delphi. Takže základy a něco co sem dělal doma v delphi umím. Nicméně jak píši už dlouho se rozhoduji do čeho se pustit, nevím čím by bylo dobré začít jakým jazykem v programování popřípadě doporučit nějákou literaturu. Mé znalosti, které sem získal jsou spíše nakloněny elektronice, správě systému a síťím jak tvorbě tak dalším věcem.
Byl bych rád kdyby tady někdo napsal nějáké rady, názory. Strašně rád bych se do něčeho pustil jen nevim co? potřebuji trochu nakopnout. Uvažoval sem o jazyku C ale jaké formě, nebo java.