<?xml version="1.0" encoding="utf-8"?>
<!-- generator="Joomla! - Open Source Content Management" -->
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>Programování I (19/20)</title>
		<description><![CDATA[]]></description>
		<link>https://lucie.zolta.cz/index.php/programovani-i</link>
		<lastBuildDate>Fri, 25 Jul 2025 09:40:55 +0000</lastBuildDate>
		<generator>Joomla! - Open Source Content Management</generator>
		<atom:link rel="self" type="application/rss+xml" href="https://lucie.zolta.cz/index.php/krouzky-vsechny/programovani-i?format=feed&amp;type=rss"/>
		<language>cs-cz</language>
		<item>
			<title>01 HTML</title>
			<link>https://lucie.zolta.cz/index.php/programovani-i/252-01-html</link>
			<guid isPermaLink="true">https://lucie.zolta.cz/index.php/programovani-i/252-01-html</guid>
			<description><![CDATA[<div class="feed-description"><p>HTML dokument je dokument, který má odkazy.</p>
<p>Odkazem rozumíme něco na co můžeme kliknout a pošle nás to někam jinam.</p>
<p><a href="https://lucie.zolta.cz/index.php?option=com_content&amp;view=article&amp;id=253&amp;catid=2">KLIKNI NA TENTO ODKAZ</a></p>
<p>HTML dokument si můžeme představit jako popsaný papír s obrázky a odkazy. Jediné co to umí je, podstrčit nám do ruky jiný papír. (<a title="Pomalu se to mění. HTML se tak jako všechno vyvíjí a HTML5 dnes toho už umí mnohem víc. My ale zůstaňme u představy starého jednoduchého HTML.">*</a>)</p>
<p><img src="https://lucie.zolta.cz/images/krprog/lekce1/prohlizece.jpg" border="0" alt="" style="float: right;" />HTML dokument se otevírá v internetových prohlížečích jako například Firefox, Chrome, či Internet Explorer.</p>
<h2>Vytvoření HTML dokumentu</h2>
<p><img src="https://lucie.zolta.cz/images/krprog/lekce1/klavesnice2.jpg" border="0" alt="" style="float: right;" />HTML dokument je soubor s koncovkou .html a obsahuje HTML tágy.</p>
<p>Tágy jsou značky ohraničené ostrými závorkami &lt;tag&gt;. Tyto závorky najdete vpravo dole vedle klávesy M (viz. obrázek vpravo). Na české klavesnici musíte podržet Alt (pod nimi), na anglické klávesnice Shift.</p>
<p>Každý HTML dokument by měl mít na začátku &lt;HTML&gt; tág a na konci &lt;/HTML&gt;, dále pak &lt;BODY&gt;&lt;/BODY&gt; a hlavičkové tágy. Jak vidíte na obrázku níže. Více o tom:</p>
<p><a href="https://www.jakpsatweb.cz/zaklady-html.html#0p">První HTML dokument (jakpsatweb.cz) - český manuál (trochu zastaralý)</a></p>
<p><a href="https://www.w3schools.com/html/default.asp">HTML Tutorial (w3schools.com) - anglický manuál (možnost vyzkoušet kod online)</a></p>
<p><img src="https://lucie.zolta.cz/images/krprog/lekce1/vytvoreni-html.jpg" border="0" width="100%" style="border: 0;" /></p>
<p>HTML tedy můžeme vytvořit v Notepadu (Poznámkovém bloku) či jiném textovém editoru jako například PSPad. Při ukládání souboru, nezapomeňte za název přidat .html. Případně ještě vypnout automatické přidání koncoky .txt, aby z toho nebyl pokus1.html.txt Tak jak to vidíte na obrázku.</p>
<p>Použitím dalších tágů, můžeme zvýrazdňovat text, nebo vytvořit odkazy.</p>
<p>&lt;b&gt;text který se zobrazí tučně&lt;/b&gt;</p>
<p>&lt;i&gt;nakloněný text&lt;/i&gt;</p>
<p>&lt;a href="http://e-skola.zolta.cz/"&gt;Odkaz na e-skolu&lt;/a&gt;</p>
<p>&lt;h1&gt;Nadpis&lt;h1&gt;</p>
<p>&lt;br&gt; Odsekne nový řádek</p>
<p>Přehled dalších tágů najdete <a href="https://www.jakpsatweb.cz/html/">zde (jakpsatweb.cz)</a>.</p>
<h2>Zobrazení HTML dokumentu</h2>
<p><img src="https://lucie.zolta.cz/images/krprog/lekce1/TotalComander.jpg" border="0" width="50%" style="border: 0px none; float: right;" /></p>
<p>Pokud se vám podařilo správně uložit soubor s koncovkou .html. Měli byste to vidět ve správci souboru, buďto na ikoně souboru, nebo v názvu (viz. obrázek vpravo)</p>
<p>Pak už stačí soubor (pokus1.html) jen spustit a otevře se v prohlížeči. V mém případě v Chromu (viz. obrázek dole). Jiný způsob je, že napíšeme URL adresu přímo do prohlížeče, kam zvykneme psát webové adresy. Na obrázku dole vidíte že URL cesta k mému dokumentu pokus1.html je D:/Lucka/krouzky/lekce1/pokus1.html.</p>
<p><img src="https://lucie.zolta.cz/images/krprog/lekce1/zobrazeni-html.jpg" border="0" width="100%" style="border: 0;" /></p></div>]]></description>
			<author>L.Zolta@seznam.cz (Super User)</author>
			<category>Kroužek programování I (2019/20)</category>
			<pubDate>Thu, 17 Oct 2019 06:02:39 +0000</pubDate>
		</item>
		<item>
			<title>02 Proměnná a komentáře</title>
			<link>https://lucie.zolta.cz/index.php/programovani-i/254-02-promenna-a-komentare</link>
			<guid isPermaLink="true">https://lucie.zolta.cz/index.php/programovani-i/254-02-promenna-a-komentare</guid>
			<description><![CDATA[<div class="feed-description"><p>V dnešní lekci začneme konečně programovat. Nejdříve si vysvětlíme co jsou to komentáře, které jsou nepostradatelným pomocníkem každého programátora. Ukážeme se výpisy z programu (ze skriptu). A nakousneme proměnné.</p>
<h2>Komentáře</h2>
<p>Komentáře jsou část zdrojového kódu, který počítač nevidí. Do komentářu si tedy můžeme psát různé poznámky, například význam příkazů apod.</p>
<p>Většina programovacích jazyků používá na označení komentářů dvě lomítka nebo lomítka s hvězdičkou:</p>
<pre><em><strong>//</strong> odsaď až nakonec řádků je to komentář a můžu si tu psát co chci</em>
<em><strong>/*</strong> mezi těmito znaky je komentář <strong>*/</strong></em> tohle už by komentář nebyl a program by chtěl tyto kecy vykonat.</pre>
<p>Aby to nebylo tak jednoduché, tak HTML má své vlastní komentáře a tím je toto:</p>
<pre><strong>&lt;!--</strong> komentář v HTML je schovaný v tomhle divném tágu s vykřičníkem a pomlčkami <strong>--&gt;<br /></strong></pre>
<p>Ukázky různých kódů s komentáři (obrázky):</p>
<p><a href="https://lucie.zolta.cz/images/krprog/lekce2/HTML-obrazek.jpg"><img src="https://lucie.zolta.cz/images/krprog/lekce2/HTML-obrazek.jpg" border="0" width="120" style="border: 0;" /> </a><a href="https://lucie.zolta.cz/images/krprog/lekce2/vypis-ze-skriptu.jpg"><img src="https://lucie.zolta.cz/images/krprog/lekce2/vypis-ze-skriptu.jpg" border="0" width="120" style="border: 0;" /></a> <a href="https://lucie.zolta.cz/images/krprog/lekce2/promenna1.jpg"><img src="https://lucie.zolta.cz/images/krprog/lekce2/promenna1.jpg" border="0" width="120" style="border: 0;" /></a>  <a href="https://lucie.zolta.cz/images/krprog/lekce2/promenna2.jpg"><img src="https://lucie.zolta.cz/images/krprog/lekce2/promenna2.jpg" border="0" width="120" style="border: 0;" /></a> <a href="https://lucie.zolta.cz/images/krprog/lekce2/matikaPlace.jpg"><img src="https://lucie.zolta.cz/images/krprog/lekce2/matikaPlace.jpg" border="0" width="120" style="border: 0;" /></a><a href="https://lucie.zolta.cz/images/krprog/lekce2/HTML-obrazek.jpg"></a></p>
<p><a href="https://lucie.zolta.cz/images/krprog/lekce2/zdrojaky/index.php">Zdojáky k obrazkům</a></p>
<p><a href="https://lucie.zolta.cz/images/krprog/lekce2/bomba/index.php">Zdroják k bombě</a></p>
<p> </p>
<h2>Příkaz</h2>
<p>Program je tvořen příkazy, které postupně vykonává. Příkazy jsou odděleny střdníky ; Mohou se tedy psát vedle sebe, ale pro lepší přehlednost se zvyknout psát pod sebe. </p>
<p>Na obrázcích výše jsou ukázky různých zdrojových kódů. Dokážeš z nich zjistit, co vykoná tento příkaz:</p>
<pre>document.write("Ahoj");<br /><br /></pre>
<p>Nevíš? Tak si zkus vytvořit JavaScriptový prográmek tímto příkazem ve svém HTML dokumentu. Programovou část musíme vyčlenit pomocí tágů</p>
<pre> &lt;SCRIPT&gt; .... zde je program ...&lt;/SCRIPT&gt;</pre>
<p>Mezi těmito tágy, používáme příkazy JavaScriptu, nikoli HTML tágy. Potřebujeme-li uvnitř scriptu použít html tág, nápříklad &lt;br&gt; pro odsazení nového řádku. Musíme jej vypsat jako text, příkazem pro výpis.</p>
<h3>První program</h3>
<p>Chceme-li zjistit co dělá výše uvedený příkaz JavaScriptu, napíšem jej mezi tágy &lt;script&gt;&lt;/script&gt;, které umístíme do těla HTML.</p>
<pre> 
&lt;html&gt;<br />    &lt;head&gt;&lt;title&gt;Muj 1. program&lt;/title&gt;&lt;/head&gt;<br /><br />    &lt;body&gt;         <br />          Pozor teď se stane program:&lt;br&gt;<br /><br />          &lt;script&gt;<br />                document.write("Ahoj");         <br />         &lt;/script&gt;<br /><br />   &lt;/body&gt;<br />&lt;/html&gt;<br />
</pre>
<h2 id="promenna">Proměnná</h2>
<p><img class="vpravo" src="https://lucie.zolta.cz/images/krprog/lekce2/promenna.png" border="0" width="200" style="border: 0; float: right;" />Takže už víme jak udělat výstup z programu. Vypisovat text, můžeme ale i bez programování jen v HTML, takže pouze s tímto příkazem si moc nezaprogramujeme. Co už HTML neumí, je vypisovat proměnné, respektive hodnotu proměnných.</p>
<p>Proměnná je něco jako hrníček s etiketou. Na etiketu si napíšeme název a do hrníčku můžeme něco strkat a vybírat (kamínky, vodu, papírky s textem). A stejně tak proměnná má nějaký název a můžeme do ní něco strkat (čísla, text, logické hodnoty - boolean).</p>
<p>Proměnnou jménem sklenka obsahující hodnotu 6 vytvoříme (deklarujeme) takto:</p>
<pre>var sklenka = 6;
</pre>
<p>A nyní vyíšeme sklenku již známým příkazem:</p>
<pre>document.write(sklenka);<br />document.write("&lt;br&gt;");<br />document.write("sklenka");<br />
</pre>
<p>Všiměte si rozdíl mezi prvním a třetím příkazem document.write. Zatímco první vypsal hodnotu promenne, třetí vypsal text v uvozovkách. A to je rozdíl mezi výpisem textu a výpisem proměnné. Chceme-li vypsat text, musíme jej vždy dát do uvozovek. Pokud tím textem je tag, jako v druhém příkazu a script je umístěn v html dokumentu, bude se tento text v důsledku chovat jako html tág. Tágy samy o sobě uvnitř scriptu nemají co dělat.</p>
<h3>K čemu proměnná</h3>
<p>S proměnnou můžeme dělat všelico. Máme-li v ní čísla můžeme provádět různé výpočty. Máme-li v ní text, můžeme jej různě spojovat, rozdělovat a jinak zpracovávat. Na zpracování a vyhodnocování textů jsou založeny všechny vyhledávače, sociální sítě, kontextové reklamy a v podstatě celý Internet.</p>
<hr />
<p>Na závěr si pojďme vyzkoušet sčítání proměnných:</p>
<pre>var kuk = 4;
var huhu = 12;
var plusik = kuk + huhu;

kuk = kuk + 1;
huhu = huhu + 2;
<br />document.write(kuk);<br />document.write(huhu);<br />document.write(plusik);
</pre>
<p>Víte proč tento program vypsal šílené číslo 51416? Protože jsme jednotlivé výpisy neoddělili ani novým řádkem ani mezerou. Všechny tři výpisy jsou tedy těsně za sebou. Nový řádek vypsat umíme. Místo tagu &lt;br&gt;, samozřejmě můžeme vypsat jiný oddělovač čárku nebo mezeru " ". Vložíme-li tyto výpisy mezi výpisy proměnných, výstup hned bude srozumitelnější.</p>
<pre>document.write(",");<br /><br /></pre>
<hr />
<p>Ještě zkusme, co se stane když sečtu dva texty.</p>
<pre>var osloveni = "Ahoj ";
var jmeno = "Lucka";
var pozdrav = osloveni + jmeno;

document.write(pozdrav);<br />
</pre>
<p>A nebo to můžeme nakombinovat rovnou:</p>
<pre><br />document.write("&lt;br&gt;Čago belo"+jmeno);
</pre>
<p>Operátor + má tedy pro text význam slepovače :)</p></div>]]></description>
			<author>L.Zolta@seznam.cz (Super User)</author>
			<category>Kroužek programování I (2019/20)</category>
			<pubDate>Thu, 17 Oct 2019 07:31:15 +0000</pubDate>
		</item>
		<item>
			<title>03 HTML a styly</title>
			<link>https://lucie.zolta.cz/index.php/programovani-i/255-03-html-a-styly</link>
			<guid isPermaLink="true">https://lucie.zolta.cz/index.php/programovani-i/255-03-html-a-styly</guid>
			<description><![CDATA[<div class="feed-description"><p>Samotný HTML dokument se nemusí skládat jen z HTML tágů. Může obsahovat části které používají jiný než HTML jazyk. Například programová části požívá příkazy JavaScriptu a je ohraničená tágy &lt;script&gt; &lt;/script&gt;. Podobně můžeme do HTML dokumentu umístit kaskádové styly, tedy část v které definujeme vzhled dokumentu. Ty umístíme mezi tágy &lt;style&gt;&lt;/style&gt;.</p>
<p>Tyto speciální tágy, fungují jako hranice - překročíme-li je, jsme v jiné zemi a musíme používat jiný jazyk (JavaScript, nebo CSS). Překročíme-li koncový tág &lt;/style&gt;, nebo &lt;/script&gt; zase jsme tuto zemi opustili a můžeme zase vesele používat jen HTML.</p>
<p><a href="https://lucie.zolta.cz/images/krprog/lekce3/mujWeb.html" target="_blank">MujWeb.html</a> - tuto šablonu můžeš využít jako základ k vytvoření vlastního webu.</p>
<h2>CSS - kaskádové styly</h2>
<p>Kaskádové styly slouží k nastylování (načačání) webu. Zatím co HTML samotné řeší jen obsahovou část, pomocí stylů dáváme webu vzhled. Můžeme tedy nastavit barvy textů, pozadí, velikost obrázku, odsazení, pozice, atd. atd.</p>
<p>Chceme-li nastylovat například velikost a barvu nadpisu &lt;h1&gt;, umstíme do hlavičky HTML dokumentu následující:</p>
<pre>&lt;HTML&gt;<br />   &lt;HEAD&gt;<br />        &lt;STYLE&gt;<br />               H1 { color: blue; font-size: 20px; }<br />        &lt;/STYLE&gt;<br />   &lt;HEAD&gt;<br />...</pre>
<p>Tímto se nám všechny nadpisy označené tágem &lt;h1&gt;, zobrazí modře a budou mít velikost 20pixel. Vzhled jednotlivých tágů tedy definujeme:</p>
<pre>název_tágu { název_vlastnosti : hodnota ; název_vlastnosti : hodnota; }</pre>
<p>vlastnosti jsou ve složených závorkách odděleny středníkem.</p>
<p>Více o kaskádových stylech najdete například tady: <a href="https://www.jakpsatweb.cz/css/" target="_blank">https://www.jakpsatweb.cz/css/</a>. Najdete tam mimo jiné <a href="https://www.jakpsatweb.cz/css/vlastnosti.html" target="_blank">seznam vlastností</a>, které můžete při stylování webu používat.</p>
<p>Pro rychlé vyzkoušení stylů, doporučují tento <a href="https://www.w3schools.com/css/tryit.asp?filename=trycss_default" target="_self">online editor css</a> - poměň hodnoty v kódu vlevo a klikni na zelené tlačítko Run (hodnoty css_vlastností jsou zvýrazněné modře).</p>
<p> </p></div>]]></description>
			<author>L.Zolta@seznam.cz (Super User)</author>
			<category>Kroužek programování I (2019/20)</category>
			<pubDate>Thu, 24 Oct 2019 07:19:07 +0000</pubDate>
		</item>
		<item>
			<title>04 Funkce a Události</title>
			<link>https://lucie.zolta.cz/index.php/programovani-i/256-funkce-a-udalosti</link>
			<guid isPermaLink="true">https://lucie.zolta.cz/index.php/programovani-i/256-funkce-a-udalosti</guid>
			<description><![CDATA[<div class="feed-description"><h3>Funkce</h3>
<p>Funkce je takový podprogram, který můžeme zavolat, kdykoli se nám zlíbí.</p>
<p>Př.1:</p>
<pre>var cislo1 = 4;
var cislo2 = 10;
var cislo3 = 0;
var text1 = "bububu";<br />
vypisPromenne();               // volání funkce jménem vypisPromenne<br />
cislo3 = cislo2 + cislo1;<br />
vypisPromenne();             // volání funkce jménem vypisPromenne

function vypisPromenne ()             // definice funkce vypisPromenne<br />{
     document.write("&lt;br&gt;cislo1 = "+cislo1);<br />     document.write("&lt;br&gt;cislo2 = "+cislo2);<br />     document.write("&lt;br&gt;cislo3 = "+cislo3);<br />     document.write("&lt;br&gt;text1 = "+text1);<br />    document.write("&lt;hr&gt;");<br />
} </pre>
<h3>Událost</h3>
<p>Událost je vlastnost html_tágu, která umožňuje propojit tág se skriptem (nejlépe zavoláním nějaké funkce). Událost je něco co provede uživatel. Například najede myší, či klikne na nějaký html objekt (obrázek, tlačítko, text,...).</p>
<p>Př.2:</p>
<pre> ...<br />&lt;img src="https://lucie.zolta.cz/obr/oblicej01.jpg" onClick="klik();" id="obrazek"&gt;<br />...<br /> &lt;SCRIPT&gt;<br />        function klik ()<br />        {<br />            document.getElementById("obrazek").src="https://lucie.zolta.cz/obr/oblice2.jpg";<br />        }<br />&lt;/SCRIPT&gt; </pre>
<p>V příkladu 2 jsme k obrázku definovali událost onClick (kliknutí myši). Klikneme-li myší na obrázek se zavolá funkce klik(), která je definovaná v části skriptu. Funkce klik() obsahuje jediný příkaz, který prohledá document, najde tág s id="obrazek" a tomuto tágu nastaví vlastnost src na oblicej2.jpg. Jinými slovy funkce klik, změní obrázek.</p>
<p>Seznam událostí: <a href="https://www.jakpsatweb.cz/javascript/udalosti.html" target="_blank">https://www.jakpsatweb.cz/javascript/udalosti.html</a></p>
<p><a href="https://lucie.zolta.cz/index.php?option=com_content&amp;view=article&amp;id=257&amp;catid=51&amp;Itemid=166">tlacitko.html</a></p>
<p><a href="https://lucie.zolta.cz/index.php?option=com_content&amp;view=article&amp;id=258&amp;catid=51&amp;Itemid=166">ksichty.html</a></p>
<p><a href="https://lucie.zolta.cz/images/krprog/lekce4/DSC06624.JPG" target="_blank">images/krprog/lekce4/DSC066??.JPG </a>, přičemž ?? = 24 - 52</p></div>]]></description>
			<author>L.Zolta@seznam.cz (Super User)</author>
			<category>Kroužek programování I (2019/20)</category>
			<pubDate>Thu, 31 Oct 2019 09:31:36 +0000</pubDate>
		</item>
		<item>
			<title>05 Webhosting a templaty</title>
			<link>https://lucie.zolta.cz/index.php/programovani-i/259-05-hosting</link>
			<guid isPermaLink="true">https://lucie.zolta.cz/index.php/programovani-i/259-05-hosting</guid>
			<description><![CDATA[<div class="feed-description"><p>Statické webovky si může udělat rychle a snadno s použitím již hotových šablon, které jednoduše přepíšeme.</p>
<h2>Jak najít webovou šablonu?</h2>
<p><iframe src="https://www.youtube.com/embed/oEfjcS36YB0" frameborder="0" width="560" height="315"></iframe></p>
<h2>Z čeho se skládá webovka (šblona)?</h2>
<p><iframe src="https://www.youtube.com/embed/0_SAyvYZik0" frameborder="0" width="560" height="315"></iframe></p>
<h2>Jak přepsat šablonu? </h2>
<p><iframe src="https://www.youtube.com/embed/LMmOYt7Yrc4" frameborder="0" width="560" height="315"></iframe></p>
<h2>Jak zprovoznit menu?</h2>
<p><iframe src="https://www.youtube.com/embed/r4xPkG2zWF0" frameborder="0" width="560" height="315"></iframe></p>
<p><strong> </strong></p>
<h2>Proč se nemohu dostat na svůj html dokument přes Internet?</h2>
<p>Ve škole na počítači jsme si do svých adresářů uložili, několik html dokumentů a pokusili jsme se k ním dostat doma. Zadali jsme stejnou URL adresu, která se nám zobrazila v prohlížeči ve škole...</p>
<p><img src="https://lucie.zolta.cz/images/krprog/lekce5/LocalURL2.png" border="0" width="100%" style="border: 0;" /></p>
<p>... ale nefunguje :( Proč?</p>
<p>Je to výborný nápad a fungovalo by to, kdyby byl disk Z: na serveru, který je připojený k Internetu. Pak bychom se na něj mohli dostat přes veřejnou adresu (například přes doménové jméno školy).</p>
<p><img src="https://lucie.zolta.cz/images/krprog/lekce5/LocalURL3b.png" border="0" width="100%" style="border: 0;" /></p>
<p>Protože nám však škola neposkytuje webhosting, pracujeme se soubory lokálně (odříznutě od světa). Mám-li něco uložené lokálně, mám to uložené pouze na svém počítači a mohu s tím zase pracovat jen na svém počítači. <strong>Chceme-li se dostat ke svým souborům doma máme několik možností:</strong></p>
<ol>
<li>Poslat si je na mejl v příloze a doma si je stáhnout a dál na nich pracovat lokálně</li>
<li>Přenést na flashce a doma na nich pracovat lokálně</li>
<li>Nahrát je na Internet, tedy využít nějakého webhostingu. Tím si vlastně vytvoříme své stránky, na které se dostaneme odkudkoli, kde je Internet.
<ul>
<li><a href="https://www.sweb.cz/" target="_blank">sweb.cz</a> - seznam nabízí hosting souborů zdarma na sweb.cz. Máte-li e-mail na seznamu, pak se tam přihlásíte jednoduše přihlašovacími údaji k e-mailu a hned můžete kopírovat své soubory.</li>
<li><a href="https://www.webzdarma.cz/" target="_blank">webzdarma.cz</a> - další možnost webhostingu zdarma.</li>
<li><a href="http://www.onebit.cz/?did=2240" target="_blank">onebit.cz</a> - placený webhosting. Webhostingy zdarma přidávají do stránek reklamy. Kdo se chce těmto reklamám vyhnout, musí si buď vytvořit vlastní server, nebo zaplatit webhostig. Já využívám webhostingu u <a href="http://www.onebit.cz/?did=2240" target="_blank">onebit.cz</a> s kterým mám dobré zkušenosti.</li>
</ul>
</li>
</ol>
<p><img src="https://lucie.zolta.cz/images/krprog/lekce5/LocalURL4.png" border="0" width="100%" style="border: 0;" /></p>
<p>Na hostingu můžeme mít mnoho html dokumentů. Aby prohlížeč věděl, který má spustit. Musíme ten první úvodní dokument nazvat <strong>index.html</strong>.</p>
<h2>Pěkný web snadno a rychle</h2>
<p>Rozhodneme-li se vytvořit si vlastní stránky, nemusíme začínat od píky (tedy od prázdného notepadu). V dnešní době existuje mnoho šablon, které můžeme využívat zdarma, ale pozor většinou jen pro soukromé účely! Je tedy dobré věnovat pozornost licenci. Zadáte-li do vyhledávače "free website template" (zdarma webové šablony), naleznete spoustu, spoustu odkazů. Např.:</p>
<p><a href="https://www.w3schools.com/w3css/w3css_templates.asp" target="_blank">https://www.w3schools.com/w3css/w3css_templates.asp</a></p>
<p><a href="https://freewebsitetemplates.com/" target="_blank">https://freewebsitetemplates.com/</a></p>
<p>Pak si stačí jen vybrat stránky které se vám líbí, stáhnout, přepsat texty, poměnit obrázky a finální webovky nahrát na nějaký webhosting.</p></div>]]></description>
			<author>L.Zolta@seznam.cz (Super User)</author>
			<category>Kroužek programování I (2019/20)</category>
			<pubDate>Thu, 07 Nov 2019 10:46:39 +0000</pubDate>
		</item>
		<item>
			<title>06 Datové typy (Ceasarová šifra)</title>
			<link>https://lucie.zolta.cz/index.php/programovani-i/260-06-funkce-s-parametrem-a-datove-typy</link>
			<guid isPermaLink="true">https://lucie.zolta.cz/index.php/programovani-i/260-06-funkce-s-parametrem-a-datove-typy</guid>
			<description><![CDATA[<div class="feed-description"><h2>Datové typy</h2>
<p><br />Aneb typy proměnných. Ačkoli se JavaScript tváří, že má jeden typ proměnné na všechno (na čísla i texty), není tomu tak. Na rozdíl od ostatních programovacích jazyků, si přetypopává proměnné podle potřeby (podle toho co tam zrovna cpeme).<br /><br />Základní typy dat s kterými pracujeme jsou:<br /><br />čísla (Numeric) = 1, 2, 3, 3.14, -5,...<br />řetězec (String) = "ahoj", " ", "Jakýkoli text dlouhý či krátky.",...<br />boolean (Boolean) = True, False, 0, 1.</p>
<h2><br /><br />Operace</h2>
<p><br />Nad čísly můžeme provádět základní matematické operace jako je:<br />+ sčítání<br />- odčítání<br />* násobení<br />/ dělení<br /><br /><br />Př.1:<br />        var prom1 = 12;<br />        var cislo = 4;<br /><br />        var vysled = prom1 + cislo;<br />        var rozd = prom1 - cislo;<br />        var nasobinek = prom1 * cislo;<br />        var delenak = prom1 / cislo;<br /><br />Asi vás nepřekvapí že proměnná vysled bude obsahovat 16, v proměnné rozd bude 8, atd.<br /><br />Řetězce můžeme rovněž sčítat. Plusko v tomto případě funguje jako lepidlo, které nám slepí dva řetězce do jednoho.<br /><br /></p>
<hr />
<p><br />Př.2:<br />        var pozdrav = "Ahoj";<br />        var jmeno = "Horymír";<br /><br />        var veta = pozdrav+jmeno;<br /><br />        document.write(veta);<br /><br />Mezera je to samé co písmeno, či jakýkoli jiný znak. Není-li v uvozovkách napsaná, nevypíše se. Víš jak upravit skript v př.2, aby se vypaslo "Ahoj Horymír!"?</p>
<p><strong>Problém s mícháním typů</strong></p>
<p>A tím se dostáváme k situaci, kdy nakombinujeme numerický typ proměnné se stringem (řetězcem, textem). Jinde by vám to neprošlo. Ale JavaScript to vyřeší jednoduše tak, že všechny proměnné typu Numeric, přetypuje pro účely sčítání na String (z 6 udělá "6") a pak to pospojuje jako řetězce. A tak se nám snadno stane, že 6+4=64</p>
<p><br />Př.3:<br /><br />            var cisilko = 6;<br />            var textik = "to je:";<br />            var mismas = textik+cisilko+4;<br /><br />            document.write(mismas);<br /><br />            document.write("&lt;br&gt;");<br />            document.write(cisilko+4);<br /><br />            document.write("&lt;br&gt;"+cisilko+4);<br /><br />V jednom řádku tedy nemůžeme mít operátor plus jako sčítání a zároveň jako slepování řetězců.<br /><br /></p>
<h2>Další operace, aneb JavaScriptovské funkce</h2>
<p>Kromě základních operací, které jsme si popsali výše, má JavaScript už předdefinované funkce, které můžeme využívat. Mimo jiné:</p>
<ul>
<li><a href="https://www.jakpsatweb.cz/javascript/objekt-math.html" target="_blank" title="JavaScript - Math">matematické funkce</a></li>
<li><a href="https://www.jakpsatweb.cz/javascript/objekt-string.html" target="_blank" title="JavaScript - metody pro práci s řetězcem">funkce pro práci s řetězcem</a></li>
</ul>
<p><img src="https://lucie.zolta.cz/images/krprog/lekce5/ascii.jpg" border="0" width="70%" style="border: 0; float: right;" /></p>
<p>Všechna data s kterými pracujeme jsou nakonec převedena na nuly a jedničky. Protože počítač (hardware) pracuje v binární soustavě (je signál/není signál). Takže jakýkoli znak ať už číslo, nebo písmeno se musí převést na číslo (ASCII kód), které se převede do binární soustavy a počítač jej pak může uložit, nebo s ním počítat. Jak to vypadá v praxi, vidíte vpravo v ASCII tabulkce.</p>
<p>A my si teď uděláme jednoduchý ASCII převodník. Využijeme k tomu příkaz</p>
<pre>String.fromCharCode(100);</pre>
<p>který převede ascii kód v závorce do znaku (v tomto případě na "d").</p>
<p>Naopak funkce charCodeAt() převádí znaky na číslo ascii kodu:</p>
<pre>var znak = "m";
znak.charCodeAt(0);</pre>
<p>Př. 5: Vytvoř ASCII převodník, který převede číslo na znak. Můžeš využít tuto univerzální šablonu:</p>
<p><a href="https://lucie.zolta.cz/index.php?option=com_content&amp;view=article&amp;id=262&amp;catid=51&amp;Itemid=166">Šablona - univerzální formulář - inout.html</a></p>
<p>Př.6: Vytvoř šifrovací program pro Galia Julia Ceasara.<img src="https://lucie.zolta.cz/images/krprog/lekce6/ceasar.png" border="0" width="200px" style="border: 0; float: right;" /></p>
<p>Známý římský vojevůdce Ceasar, šifroval vojenské zprávy jednoduchou šifrou, která dodnes po něm nese jméno. Princip této šifry je jednoduchý - posunout jednotlivé písmenka textu o několik pozic.</p>
<p>"cezar" -&gt; "dfabs"</p>
<p>Vytvoř program který převede zadané písmeno na zašifrované (posunute o několik znaku dopředu či dozadu).</p>
<p><a href="https://lucie.zolta.cz/index.php?option=com_content&amp;view=article&amp;id=262&amp;catid=51&amp;Itemid=166">Šablona - univerzální formulář - inout.html</a></p>
<p>Tip: využij ascii tabulku.</p></div>]]></description>
			<author>L.Zolta@seznam.cz (Super User)</author>
			<category>Kroužek programování I (2019/20)</category>
			<pubDate>Tue, 12 Nov 2019 10:46:00 +0000</pubDate>
		</item>
		<item>
			<title>07 Funkce s parametrem</title>
			<link>https://lucie.zolta.cz/index.php/programovani-i/261-07-funkce-s-parametrem</link>
			<guid isPermaLink="true">https://lucie.zolta.cz/index.php/programovani-i/261-07-funkce-s-parametrem</guid>
			<description><![CDATA[<div class="feed-description"><h2>Funkce s parametry</h2>
<p><br />Minule jsme si řekli, že funkce je jakýsi podprogram. Dnes si vysvětlíme funkci z pohledu matematiky a využijeme ony závorky, které jsme zatím nechávali prázdné. Funkce s parametrem je v podstatě to samé co matematická funkce. Tu si můžeme představit jako černou skříňku, do kteřé z jedne strany něco cpeme (x) a z druhé nám něco vypadává (y). V té černé skříňce se provede nějaký výpočet a vyplivne to výsledek.<br /><br />Př.4: Ukázka funkcí v matematice<br /><br />f(x) = y<br /><br />f(x) = x + 2;        // definice funkce v matematice<br /><br />f(1) = 1 + 2 = 3;    // funkce f(x) udělala z jedničky trojku...<br />f(2) = 4;        // ... z dvojky čtyřku<br />f(3) = 5;        // ... z trojky pětku<br /><br /><br /><br />Př.5: Funkce s parametrem v JavaScriptu<br /><br />    var hoho = mojeFunkcniFunkce(3);<br />    document.write(hoho);<br /><br />    function mojeFunkcniFunkce (vstupniPromenna)<br />    {<br />        var vysledek = vstupniPromenna + 2;    <br />        return vysledek;            //vyplivni vysledek z funkce<br />    }<br /><br /></p></div>]]></description>
			<author>L.Zolta@seznam.cz (Super User)</author>
			<category>Kroužek programování I (2019/20)</category>
			<pubDate>Wed, 13 Nov 2019 07:46:00 +0000</pubDate>
		</item>
		<item>
			<title>09 Podmínky</title>
			<link>https://lucie.zolta.cz/index.php/programovani-i/264-09-podminky</link>
			<guid isPermaLink="true">https://lucie.zolta.cz/index.php/programovani-i/264-09-podminky</guid>
			<description><![CDATA[<div class="feed-description"><p>Podmínka, neboli ify slouží k větvení programu.</p>
<p>Je-li podmínka splněná provede se tělo if{...}.</p>
<p>V opačném případě pak tělo else{...}, je-li definováno.</p>
<hr />
<p><span class="pr">Př.1:</span> Syntaxe podmínky v JavaScriptu, aneb jak se zapisuje if.</p>
<p class="pre">if (mojeCislo &gt; 5)</p>
<p class="pre">{</p>
<p class="pre">        alert("Podminka splnena.");</p>
<p class="pre">}</p>
<p class="pre">else</p>
<p class="pre">{</p>
<p class="pre">       alert("Proběhlo ELSE.");</p>
<p class="pre">}</p>
<p> </p>
<p>Bude-li mojeCislo=7, pak vyskočí okono s nápisem Podmínka splněna. Bude-li mojeCislo=4, pak se vykoná část else a vyskočí okno s nápisem Proběhlo ELSE.</p>
<hr />
<p>Př.2. Vyzkoušej si, zda umíš správně zapsat podmínku. Doplň kód v následujících příkladech tak, aby měla podmínka smysl.</p>
<p>a) <a href="https://www.w3schools.com/js/exercise_js.asp?filename=exercise_js_conditions1">příklad 1 </a></p>
<p>b) <a href="https://www.w3schools.com/js/exercise_js.asp?filename=exercise_js_conditions2">příklad 2</a></p>
<p>*své řešení si ověř kliknutím na zelené tlačítko</p>
<hr />
<p>V dávných dobách, kdy počítače ještě neměly žádnou grafiku existovaly textové hry. Scény se popisovaly a hráči si vybírali z několika možností. Vytvoř si takovouto hru:</p>
<p><a href="https://lucie.zolta.cz/programko/pohadka.html" target="_blank">pohadka.html</a></p>
<p>Zobrazíš-li si kód (ctrl+u) této pohádky, zjistíš že je v kódu jen hromada ifů ošetřujících jednotlivé situace.</p></div>]]></description>
			<author>L.Zolta@seznam.cz (Super User)</author>
			<category>Kroužek programování I (2019/20)</category>
			<pubDate>Thu, 05 Dec 2019 07:46:00 +0000</pubDate>
		</item>
		<item>
			<title>10 Shrnutí + odklizení sněhu 1</title>
			<link>https://lucie.zolta.cz/index.php/programovani-i/266-10-sumarum</link>
			<guid isPermaLink="true">https://lucie.zolta.cz/index.php/programovani-i/266-10-sumarum</guid>
			<description><![CDATA[<div class="feed-description"><p>Pojďme si všechno přehledně shrnout na jednom místě. Aneb kopírovací příručka.</p>
<p> </p>
<h2>HTML tágy</h2>
<p><input type="text" value="bubli bubli" />  <span class="pre"> &lt;input type="text" value="bubli bubli"&gt;</span></p>
<p><input type="button" value="ťuk" /><span class="pre"> &lt;input type="button" value="ťuk"&gt;</span></p>
<p><img src="http://www.misie.com.pl/nasza-stara-strona/kolekcjonerzy/images/js_logo.png" border="0" width="50" style="border: 0; float: left;" /></p>
<p> </p>
<p><span class="pre">&lt;img src="https://lucie.zolta.cz/js_logo.png"&gt;</span></p>
<p><span class="pre">&lt;p&gt;</span>odstavec<span class="pre">&lt;/p&gt;</span></p>
<p><span class="pre">&lt;span&gt;</span>kousek textu<span class="pre">&lt;/span&gt;</span></p>
<p><span class="pre">&lt;h1&gt;</span>nadpis<span class="pre">&lt;/h1&gt;</span></p>
<p><a href="https://www.jakpsatweb.cz/html/formulare.html">Seznam formulářových tágů (www.jakpsatweb.cz)</a></p>
<p><a href="https://www.jakpsatweb.cz/html/">Seznam HTML tágů (www.jakpsatweb.cz)</a></p>
<p> </p>
<h2>Propojení HTML části s programovou části (SCRIPT)</h2>
<p>Jak propojit viditelnou HTML část (&lt;body&gt;...&lt;/body&gt;) s programovou části (&lt;script&gt;&lt;/script&gt;) a vytvořit z webu program.</p>
<p><img src="https://lucie.zolta.cz/images/skola/propojeniHtmlJavaScript.jpg" border="0" alt="" /></p>
<h3>1. Události (HTML -&gt; SCRIPT)</h3>
<p>To co nás hodí z HTML do scriptu jsou události (events). Události se přiřazují jednotlivým html tágům podobně jako vlastnosti. Události obsahují část scriptu, ideálně když se jen zavolá nějaká funkce do scriptové části.</p>
<p><input onclick="value='baf'" type="button" value="ťuk" /><span class="pre"> &lt;input type="button" value="ťuk" onClick="baf()'"&gt;</span></p>
<p><input style="width: 150px;" onclick="style.background='red'" onmouseover="value='Co mi chceš udělat?!'" onmouseout="value='Uf';style.background='gray'" type="button" value="Uf" /></p>
<p><span class="pre">&lt;input type="button" value="Já tu nejsem" onClick="au()'" onMouseOver="bojim()" onMouseOut="uf()" id="ustrasenec"&gt;</span></p>
<p> </p>
<div class="zadani-prikladu">
<h6>Seznam některých událostí</h6>
<br />
<pre>onClick</pre>
kliknutí myší na prvek<br /><br />
<pre>onMouseOver</pre>
najetí myší nad prvek <br /><br />
<pre>onMouseOut</pre>
odjetí myši z prvku <br /><br />
<pre>onDblClick</pre>
dvojitý klik myší <br /><br />
<pre>onLoad</pre>
načtení stránky <br /><br />
<pre>onKeyPress</pre>
stisknutí klávesy<br /><br /> ... <a href="https://www.jakpsatweb.cz/javascript/udalosti.html">a další na jakpsatweb.cz</a></div>
<p>Oba tlačítka výše odchytávají události onClick. K té dojde po kliknutí na tlačítko. První tlačítko zavolá při této události funkci baf() a druhé volá funkci au(). Další události které můžeme použít vidíte u druhého tlačítka. Jejich význam vidíte v zeleném rámečku vpravo.</p>
<p>Př.1: Poznáš z chování ukázkových tlačítek (výše) jaké příkazy obsahuje funkce <span class="pre">uf()?</span></p>
<p class="pre"><input class="kontrola" onclick="style.background='red'" type="button" /> document.document.getElementById("idd").style.left = "300px";</p>
<p class="pre"><input class="kontrola" onclick="style.background='red'" type="button" /> document.document.getElementById("ustrasenec").style.background = "green";</p>
<p class="pre"><input class="kontrola" onclick="style.background='green'" type="button" /> document.document.getElementById("ustrasenec").value = "Uf";</p>
<p class="pre"><input class="kontrola" onclick="style.background='red'" type="button" /> document.document.getElementById("obrazek1").src = "logo-goole.jpg";</p>
<p class="pre"><input class="kontrola" onclick="style.background='red'" type="button" /> document.document.getElementById("ustrasenec").style.background = "red";</p>
<p class="pre"><input class="kontrola" onclick="style.background='red'" type="button" /> document.document.getElementById("ustrasenec").style.color = "red";</p>
<p class="pre"><input class="kontrola" onclick="style.background='red'" type="button" /> document.document.getElementById("ustrasenec").value = "Co mi chceš udělat?";</p>
<p class="pre"><input class="kontrola" onclick="style.background='green'" type="button" /> document.document.getElementById("ustrasenec").style.background = "gray";</p>
<h3> </h3>
<h3>2. Identifikátor id=""</h3>
<p>Ve skritpu potřebujeme pracovat zase s HTML prvky, takže se k ním potřebujeme nějak dostat. Abychom přesně určili (identifiovali) prvek s kterým chceme pracovat, musíme jej opatřit IDčkem.<strong> ID znamená jednoznačné identifikační číslo.</strong> Například jako ID člověka (občana) se používá rodné číslo. Nemohou (neměli by) existovat dva lidé se stejným rodným číslem. Pomocí inventárního čísla můžeme zase jednoznačně určit konkrétní stůl ve škole, jde tedy o ID nábytku.</p>
<p>V HTML a JavaSriptu můžeme použít jako ID nejen čísla, ale libovolný text. A to tak, že html tág opatříme vlastností id:</p>
<p><span class="pre">&lt;img src="https://lucie.zolta.cz/jehla.jpg" id="obrazek1"&gt;</span></p>
<p><span class="pre">&lt;input type="button" id="tlacitko"&gt;<br /></span></p>
<p><span class="pre">&lt;p id="skore"&gt;&lt;/p&gt;<br /></span></p>
<hr />
<p>Ve skriptu se pak k těmto prvkům (které jsou opatřeny vlastnosti id) dostaneme pomocí tohoto příkazu (defaultní funkce JavaScriptu):</p>
<p><span class="pre">document.getElementById("obrazek1"); </span></p>
<p>Tato funkce vrací objekt s daným id, v tomto případě tedy objekt obrázku. Můžeme mu tedy nastavovat vlastnosti typické pro obrázek jako třeba src. A to buďto rovnou, nebo si jej vložit do proměnné. To je výhodné, zejména chceme-li s tímto objektem pracovat více.</p>
<p><br /><span class="pre">document.getElementById("tlacitko").value = "Ťukni si";</span></p>
<p><span class="pre">var obr = document.getElementById("obrazek1"); <br /></span></p>
<p><span class="pre">obr.src = "nit.jpg";<br /></span></p>
<p><span class="pre">obr.style.width = "50px";<br /></span></p>
<hr />
<p><span class="pre">Př.2: Hra odklízení sněhu<br /></span></p>
<p><span class="pre"><a href="https://lucie.zolta.cz/programko/hra.html" target="_blank">hra.html</a><br /></span></p></div>]]></description>
			<author>L.Zolta@seznam.cz (Super User)</author>
			<category>Kroužek programování I (2019/20)</category>
			<pubDate>Thu, 05 Dec 2019 07:46:00 +0000</pubDate>
		</item>
		<item>
			<title>12 Formuláře + Robot</title>
			<link>https://lucie.zolta.cz/index.php/programovani-i/268-12-formulare-robot</link>
			<guid isPermaLink="true">https://lucie.zolta.cz/index.php/programovani-i/268-12-formulare-robot</guid>
			<description><![CDATA[<div class="feed-description"><p>Doposud jsme řešili obsluhu uživatelských akcí pomocí událostí. Tlačítku jsme nastavili onClick událost, která nás odkázala na funkci v skriptové části. Na podnět Toma si dnes představíme formuláře a vytvoříme si svůj vlastní "vyhledávač":</p>
<p>Vyhledej videa na téma: <input type="text" /><input onclick="alert('Ne,ne to TY si nákodíš vyhledávač :P Já ti nic hledat nebudu.\nJen ti jen prozradím, jak na to. Tak čti pěkně dál :)');" type="button" value="hledat" /></p>
<h2>Proč formuláře?</h2>
<p>Jak už jsem zmínila dříve, v rámci výuky bastlíme všechno dohromady - styly, skripty, html - vše v jednom dokumentu. Protože děláme "jednoduché" věci na několik málo řádku, je tento způsob přehledný. V praxi, kdy třeba jen styly jsou na sto řádků, bychom se v takovém zdrojáku uskrolovali k smrti. No a stejně jako můžeme styly vypreparovat do zvláštního souboru s koncovkou .css, můžeme i programovou část řešit zvlášť. Formuláře slouží k tomuto způsobu, kdy ve formuláři jen sesbíráme data a pošleme je na zpracování někam pryč.</p>
<h2>Jak na to?</h2>
<p>Všechny ovládací prvky (tlačítka, kolonky, zaškrtávátka,...), tedy tágy &lt;input&gt;, strčíme do formuláře.</p>
<pre>&lt;form <strong>action="https://www.youtube.com/"</strong>&gt;
    &lt;input type="text" <strong>name="tema"</strong>&gt;
    &lt;input <strong>type="submit"&gt;</strong><br />&lt;/form&gt;</pre>
<p>Každý formulář by měl mít tlačítko k odeslání &lt;input <strong>type="submit"</strong>&gt;, kterým dojde k odeslání formuláře.</p>
<p><strong>? Kam</strong> se formulář odešle určuje atribut formuláře <strong>action</strong>. V ukázce jsme zadali zadali, že chceme formulář odeslat ke zpracování na youtube.</p>
<p><strong>? Co</strong> vlastně posíláme na youtube?? Posíláme tam vyplněná data z našeho formuláře. Jednotlivé prvky formuláře proto musíme mít pojmenovány. Naše jediná kolonka z ukázky má jméno tema <strong>name="tema"</strong>. Je to v podstatě to samé jako id, které jsme používali dříve. Proč formuláře neumí pracovat s id, fakt netuším.</p>
<p><strong>? Jak </strong>se odešle formulář? Existují dvě metody k odeslání formuláře výchozí metoda <strong>get</strong>, která pošle data v URL adrese. V podstatě nastartuje stránky podobně jako odkaz, jen za otazník přilepí vyplněná data. Další metoda <strong>post</strong> se používá, nechceme-li aby byly odesílané data vidět.</p>
<h2>Jdeme zkoušet</h2>
<p>Vyzkoušej si formulář z ukázky výše, napiš do kolonky třeba "pes" a klikni na tlačítko. Nic zvláštního se nestalo. Jen se nastartoval jůtub. Ale přece jen se něco povedlo. Mrkni do url adresy. Na konci je ?tema=pes. Tedy název textboxu z tvého vyhledávače a vyplněná hodnota. Povedlo se ti tedy odeslat formulář na youtube. A kdyby youtube rozuměl tvému formuláři, určitě by ti vyhledal videa o psovi.</p>
<p><img src="https://lucie.zolta.cz/images/krprog/vyhledavac-U2b-link1.jpg" border="0" width="100%" style="border: 0;" /></p>
<p>Jenže youtube tvému formuláři nerozumí. Pojmenoval si svůj textbox jinak než ty. Když zjistíš jak, podaří se ti podstrčit mu svůj formulář tak, že mu bude rozumnět. Zadej nyní do standardního vyhledávače na youtubu třeba toho psa a podívej se, do URL adresy.</p>
<p><img src="https://lucie.zolta.cz/images/krprog/vyhledavac-U2b-link2.jpg" border="0" width="100%" style="border: 0;" /></p>
<p> Vidíš rozdíl?</p>
<p>1) Vyhledáváš-li přes youtube, jeho textbox se jmenuje search_query, nikoli tema jako u tebe</p>
<p>2) Vyhledáváš-li přes youtube, odešle se formulář na adresu https://www.youtube.com/results</p>
<p>Upravíš-li svůj vlastní vyhledávač, tak aby se formulář odeslal na správnou adresu a přejmenuješ li svou kolonku na stejné jméno jako má youtube, budeš mít svůj vlastní youtube-vyhledávač.</p>
<p>Podobně můžeš udělat vyhledávač na seznam, nebo google. Stačí jen odpozorovat, jaké názvy textboxů používají tyto vyhledávače a ty použít i ve svém.</p>
<p> </p>
<p>PS.: Tohle sice vypadá jako těžká frajeřina. Hele naprogramoval jsem google vyhledávač. Ale ve skutečnosti jen využíváš službu googlu. Vyhledávače samy o sobě, mají prográmky (roboty), kteří každý den procházejí Internet, projíždějí všechny odkazy, které najdou, zpracovávají text, ukládají jej do svých databází a pak vyhledávají ve svých vlastních datech. Jde o složitý proces, který nikomu nepoví, neboť je to jejich přísně tajné know how.</p>
<p> </p></div>]]></description>
			<author>L.Zolta@seznam.cz (Super User)</author>
			<category>Kroužek programování I (2019/20)</category>
			<pubDate>Thu, 09 Jan 2020 19:05:01 +0000</pubDate>
		</item>
	</channel>
</rss>
