Diskuze: VB - Aplikace se sekne
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.

Člen

Zobrazeno 14 zpráv z 14.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Už při spuštění tohoto kódu se to sekne, hned po zapnutí.
Hoď si na začátek metody break point a krokuj. Je nějaká
metoda/instrukce u které se to zasekne. Pak zjistíš ten problém kde
Zacyklí se ti to u prvního while. Ten kód je divný, proč to načítáš 2x?
Nejdřív zjistím, kolik tam mám slovíček a pak vygeneruji náhodné číslo. Když mám náhodné číslo, tak pak najdu řádek toho čísla a vypíšu ho.
Ano, a kde se to sekne?
brekpoint si tam dáš kliknutím na šedý pruh před zdrojovým kódem.
Tak jinak, posílám celý projekt
to se dělá tak, že si je načteš do slovníku, pak už manipuluješ jen se slovníkem. Slovníky jsou popsané myslím v tutorialu o OOP.
Ale možná se ten program posunul k tomu dalšímu While Not
nahoda1.EndOfStream()
Tam si tipnu že by se ten program neměl úplně seknout, ale v nějaký
poměrně dlouhý době proběhnout (možná roky, tisíciletí?). A to
proč.
Protože ty v tom kódu nehledáš řádek toho čísla jak tvrdíš,ale něco
dost děsivýho.
Máš hodnotu v cislo1 (na počátku je 0). Pak vygeneruješ náhodný číslo
do nahoda. Pak tam provádíš ten test cislo1 = nahoda. Pouze (a to pouze)
pokud se ty čísla rovnají tak přečteš řádek v ReadLine a tím se
posuneš v souboru o 1 řádek dál. Pak připočteš 1 do cislo1 a v cyklu zase
testuješ, jestli se rovná tomu náhodnýmu,než se posuneš dál v souboru.
Jestli je pocet trochu vyšší číslo, tak šance že se dostaneš na konec
souboru a tím ti to skončí v nějakým rozumným čase je asi jako vyhrát v
Sazce..
Takže, jestli bych ti poradil po tom
si dát prostě cyklus
*FOR i=1 TO nahoda
cizislovo = nahoda1.ReadLine
NEXT I *
jedu to jenom z hlavy, pokud máš správně ošetřený to náhodný číslo
aby nepřekorčilo počet slovíček, tak ani nepotřebuješ test na
EndOfStream
Zobrazeno 14 zpráv z 14.