Nevíte-li si rady s jakýmkoliv matematickým problémem, toto místo je pro vás jako dělané.
Nástěnka
❗22. 8. 2021 (L) Přecházíme zpět na doménu forum.matweb.cz!
❗04.11.2016 (Jel.) Čtete, prosím, před vložení dotazu, děkuji!
❗23.10.2013 (Jel.) Zkuste před zadáním dotazu použít některý z online-nástrojů, konzultovat použití můžete v sekci CAS.
Nejste přihlášen(a). Přihlásit
Komentář: Vypište čísla načtená na vstupu dvakrát po sobě (za použití spojových seznamů).Testovací kompiláto tam dosadí čísla z txt souboru který má 5MB - není možné použít pole Načtěte na standardním vstupu předem neznámý počet celých čísel (longint resp. long), každé číslo je na jiném řádku. Celý vstup vypište na standardní výstup dvakrát po sobě. Tedy například na vstup 100000 2 3 4 5 vypište: 100000 2 3 4 5 100000 2 3 4 5
Prosím uměl by někdo toto udělat pomocí spojových seznamů? Případně jestli by sem dal zdroják.
Offline
Offline
Zkus si přečíst třeba
http://vyuka.pavel-rimsky.cz/doctut/prm.html#id2521796
případně
http://www.mojeskola.cz/Vyuka/Php/Kurzy … scal33.php
je tam jak výuka tak i zdroje, myslím že se řešení z toho dá snadno poskládat...
Mimochodem, dle mého soukromého názoru, je opravdu příšerné, že vyučující pořád trápí studenty Pascalem. Např. právě spojový seznam je naprosto typická ukázka zkostnatělosti, která je dnes v drtivé většině případů úplně kontraproduktivní. Neobviňujte mě prosím hned z lenosti; zažil jsem v počátcích mé dřívější profese např. programování na stroji ISKRA, kde si člověk sám musel počítat i bytové délky sektorů na disku, o psaní vlastních hledacích, třídicích a řetězících rutin nemluvě. Co by tam člověk dal za nějaký pointer...! Ale to byl "pravěk" - a ze stejného pravěku je i Pascal (ač svého času velmi didaktický jazyk)... Jazyky nové generace drtivou většinu zde avízovaných problémů řeší doslova jen tak "mimochodem", intuitivně, aniž by zatěžovaly řešitele zbytečnými starostmi, a díky tomu ponechávají víc prostoru pro analytický a tvůrčí potenciál... :-)
Offline
tvůj problém je zřejmý - při každém přidávání čísla na konec seznamu ten seznam celej projíždíš od začátku na konec. pamatuj si, kde máš konec, a z kvadratický náročnosti bude lineární
a dovolil bych si pár dotazů:
1) k čemu slouží fce read_number, která dělá totéž, co zabudovaná fce readline?
2) k čemu máš ve fci Write_list proměnnou p, do který akorát překopíruješ proměnnou start?
Offline