Možná se ptáte, jestli můžete Kasiopeu řešit i v JavaScriptu. Samozřejme to možné je a abychom vám práci usnadnili, připravili jsme pro vás následující šablonu.
Stačí si vytvořit soubor s následujícím obsahem. Poté upravte funkci
main
tak, aby řešila zadanou úlohu (samozřejmně můžete vytvářet i
jiné funkce). Soubor otevřete libovolným webovým prohlížečem podporujícim
JavaScript. Následně tlačítkem „Browse“ (případne
„Procházet“ nebo jinak dle vaší lokalizace). Po kliknutí na
tlačítko „Spusti“ vám stránka nabídne soubor ke stažení. Tento
soubor stáhněte a odovzdejte na stránkach Kasiopei jako vaše řešení.
<html>
<meta charset="UTF-8">
<!-- source: https://www.html5rocks.com/en/tutorials/file/dndfiles/ -->
<!-- upravené pre http://kasiopea.matfyz.cz -->
<form>
<input type="file" id="files" name="file" />
<input type="button" value="Spusti" onclick="spusti();" />
</form>
<script>
var reader;
reader = new FileReader();
reader.onerror = function(e) { alert("Nastala chyba při čtení ze souboru.!"); };
reader.onload = function(e) { stahniText(main(reader.result)); }
function stahniText(text) {
var element = document.createElement('a');
element.setAttribute('href', 'data:text/plain;charset=utf-8,' + encodeURIComponent(text));
element.setAttribute('download', "out.txt");
element.style.display = 'none';
document.body.appendChild(element);
element.click();
document.body.removeChild(element);
}
function spusti() {
reader.readAsText(document.getElementById('files').files[0]);
}
function main(vstup) {
/////////////////////////
// SEM VLOZTE SVUJ KOD //
/////////////////////////
/*
INSTRUKCIE:
V premennej vstup je obsah vstupného súboru
Funkcia main by mala vratit cez return text (string), ktory chcete vo vystupnom subore
Tento html subor otvorte v svojom oblubenom prehliadaci a vo formulari zvolte
subor, ktory chcete pouzit ako vstupny. Ked stlacite tlacitko "Spusti" tak sa
precita a na jeho obsah sa zavola tato funkcia (main), ktorej vystup sa stiahne
ako out.txt (pozor, ak uz out.txt existuje tak to bude pravdepodobne nieco ako
"out (1).txt" alebo podobne). Tento subor mozete nahrat na stranku Kasiopei.
Príklad:
return vstup.split("\n").length;
// Takto vyzerajúca funkcia by spočítala počet riadkov súboru.
*/
}
</script>
</html>