jankafialka – úvodná stránka
Vitajte na mojej stránke! 🥰 Moje meno je Jana Fialová (preto jankafialka). Toto je priestor, kam ukladám svoje diela z oblasti matematiky a vytváram nové interaktívne webové aplikácie.
Čo tu nájdete
- Blog – kratšie príspevky na rôzne zväčša matematické témy,
- Losovanie – interaktívna aplikácia, v ktorej si môžete overiť, ako ste na tom so šťastím,
- Šifry – na tejto stránke nájdete vysvetlenie, ako fungujú najjednoduchšie šifry a môžete si zašifrovať aj odšifrovať svoje správy pomocou Cézarovej a Vigenèrovej šifry, na podstránke Frekvenčná analýza a substitučné šifry aj pomocou ľubovoľnej substitučnej šifry. Pre náročnejších predstavujem aj RSA šifru.
- Strom náhody – super aplikácia, v ktorej vytvárate fraktálny strom podľa vlastných kritérií,
- Všeličo z geometrie – zatiaľ nie úplne dotiahnuté nápady, už teraz ale stoja za pozretie,
- Záporné čísla inak – vymakaná stránka, na ktorej sa aj prvostupniar naučí pracovať so zápornými číslami. Na podstránke Hra – zachráň guľôčky sa zabaví každý.
- Na stránke Publikácie sa nachádza výber z mojich matematických článkov a učebnica geometrie.
Na väčšine z týchto stránok je možné zanechať verejný komentár. Ak chcete poslať komentár, pripomienku, či otázku priamo mne, píšte mail na dole uvedenú adresu.
Ako ochutnávku pridávam moju prvú interaktívnu animáciu:
Animácia pohybu dvoch planét
Animácia zobrazuje dve planéty a stopu, ktorú zanecháva bod v strede medzi týmito planétami. Tvar stopy je závislý na rýchlosti (a polomere obežnej dráhy) vnútornej planéty.
Sem vložte čas, za ktorý vnútorná planéta obehne centrálnu hviezdu. Musí to byť kladné číslo menšie ako jeden. Zadajte ho v tvare desatinného čísla.
Vyskúšajte aj iné zadania. Odporúčam 0.1, 0.3, 0.7 alebo 0.4. Vždy pred spustením nového zadania stlačte tlačidlo Zastav to!
var reqId;
function spusti(){
const rychlost = document.getElementById("rychlost"); let r=Number(rychlost.value);
if(isNaN(r) || r1){ alert("Prosím, zadajte číslo medzi nulou a jednotkou v tvare s desatinnou bodkou!");} else { const start1 = new Date(); const start = start1.getTime();
const canvas = document.getElementById("platno"); const sirka= Math.min(0.875*document.documentElement.clientWidth, document.documentElement.clientHeight); canvas.width= sirka; canvas.height= sirka; const ctx = canvas.getContext("2d"); const w = canvas.width; const h = canvas.height;
const rDuhy=0.1; let red, green, blue, farba;
//nehybne objekty ctx.fillStyle="black"; ctx.fillRect(0,0,w,h);
var R = Math.pow(r,2/3);
ctx.fillStyle="yellow"; ctx.beginPath(); ctx.arc(w/2,h/2,5,0,2*Math.PI, true); ctx.fill();
let xZem=0; let yZem=0; let xVenus=0; let yVenus=0; //pohyblive objekty function kresli(){ let cas1 = new Date(); let cas = cas1.getTime(); let t = cas-start;
//maze predchadzajucu Zem ctx.fillStyle="black"; ctx.beginPath(); ctx.arc(xZem,yZem, 5, 0, Math.PI*2); ctx.fill();
xZem = w/2+0.48*w*Math.cos(t*Math.PI/10000); yZem = h/2+0.48*w*Math.sin(t*Math.PI/10000);
ctx.fillStyle="#3CC8FF"; ctx.beginPath(); ctx.arc(xZem, yZem, 4, 0, Math.PI*2); ctx.fill(); //maze predchadzajucu venusu ctx.fillStyle="black"; ctx.beginPath(); ctx.arc(xVenus,yVenus, 3, 0,Math.PI*2); ctx.fill();
xVenus=w/2+0.48*w*R*Math.cos(t*Math.PI/(10000*r)); yVenus=h/2+0.48*w*R*Math.sin(t*Math.PI/(10000*r));
ctx.fillStyle="#ffafaf"; ctx.beginPath(); ctx.arc(xVenus, yVenus, 2, 0, Math.PI*2); ctx.fill();
//duhove sfarbenie let pom=(rDuhy*t)%1536; if(pom=256 && pom=512 && pom=768 && pom=1024 && pom1280){red=255;green=0;blue=1536-pom;}}}}}}
farba="rgb("+red+", "+green+", "+blue+")";
let x= (xZem+xVenus)/2; let y = (yZem+yVenus)/2; ctx.fillStyle=farba; ctx.beginPath(); ctx.arc(x,y,2,0,2*Math.PI); ctx.fill();
reqId=requestAnimationFrame(kresli);
}
reqId=requestAnimationFrame(kresli);
}}
function zastav(){
cancelAnimationFrame(reqId);
}
spusti();
const canvas = document.getElementById("platno");
const saveButton = document.getElementById('saveButton');
// Zaregistruj udalosť kliknutia na tlačidlo saveButton.addEventListener('click', () => { // Získaj URL reprezentáciu aktuálneho obrázka z canvas const dataURL = canvas.toDataURL();
// Vytvor odkaz na sťahovanie s názvom "canvas-obrazok.png" const link = document.createElement('a'); link.href = dataURL; link.download = 'canvas-obrazok.png';
// Kliknutím na odkaz automaticky stiahneš obrázok
link.click();
});
Prezradím vám tajomstvo: počet lístkov na výslednom obrázku sa dá vypočítať takto: prevedieme desatinné číslo na tvar zlomku v základnom tvare. Počet lístkov je potom rozdiel medzi čitateľom a menovateľom.
Jednu vec ešte môžete odpozorovať aj sami. Vyskúšajte viac zlomkov, ktoré majú rovnaký rozdiel medzi čitateľom a menovateľom. Ideálne 1/6, 2/7, 3/8, 4/9 – tieto sú náhodou všetky v základnom tvare. (Samozrejme, zadávajte v tvare desatinného čísla.) Ako čitateľ ovplyvňuje výsledný obrázok?