Skip to content

Commit 0655e2a

Browse files
committed
dodělání příkladů, úprava README.MD atd.
1 parent ea67957 commit 0655e2a

File tree

60 files changed

+343
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

60 files changed

+343
-0
lines changed

README.md

Lines changed: 40 additions & 0 deletions

cvičení/0 poznámka.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
jeslti váš způsob je jiný než to řeším já, neznamená to že je to špatně
2+
protože všechno v programování má hodně způsobů na vyřešení
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
<!DOCTYPE html>
2+
<html lang="en">
3+
<head>
4+
<meta charset="UTF-8">
5+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
6+
<title>Document</title>
7+
</head>
8+
<body>
9+
<p> počet kliknutí: <span id="text">0 </span></p>
10+
<button onclick="pocet()"> klikej </button>
11+
<script src="vypracování.js"></script>
12+
</body>
13+
</html>
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
var kliknutiPocet = 0 //musíme založit nějakou hodnotu, která začně na 0 aby jsme mohli klikat
2+
3+
function pocet(){
4+
kliknutiPocet++; //musíme tu hodnotu zvěši protože jsme klikli
5+
document.getElementById("text").textContent = kliknutiPocet; //nastavujeme ten text na počet klknutí neboli tu hodnotu
6+
7+
/*
8+
šlo by udělat i kdyby to bylo jenom takto, protože by se ta hodnota prvně zvětšila a pak by se vypsala
9+
10+
document.getElementById("text").textContent = ++kliknutiPocet;
11+
*/
12+
}
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Udělej "hru" kde při každém kliknutí na tlačítko se přičte +1 a vypíše se do nějakého textu na stránce
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
<!DOCTYPE html>
2+
<html lang="en">
3+
<head>
4+
<meta charset="UTF-8">
5+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
6+
<title>Document</title>
7+
</head>
8+
<body>
9+
10+
<button onclick="barvy()" id="tlacitko" style="color: black;"> ahoj já jsem text </button>
11+
12+
<script src="vypracování.js"></script>
13+
</body>
14+
</html>
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
function barvy(){
2+
let element = document.getElementById("tlacitko").style.color //uložíme barvu našeho tlačítka do proměnné "element"
3+
if (element == "black"){ //když je barva černá, tak se předělá na červenou.. ostatní dělají to stejné jenom s jinými barvy
4+
zmena("red")
5+
}
6+
else if (element == "red"){
7+
zmena("green")
8+
}
9+
else if (element == "green"){
10+
zmena("blue")
11+
}
12+
else if (element == "blue"){
13+
zmena("black")
14+
}
15+
}
16+
17+
function zmena(barva){ //funkce, která přijímá brarvu na kterou se má změnit, je to jenom abstrakce aby se psalo méně řádků, mohlo by tam být vždycky jenom getElementById...
18+
document.getElementById("tlacitko").style.color = barva
19+
}
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
udělej text / tlačítko, který začne jako černé barvy a po každé co na něho klikneme tak se změní na jinou barvu
2+
3+
změní se jako:
4+
černá -> červená -> zelená -> modrá -> černá
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
<!DOCTYPE html>
2+
<html lang="en">
3+
<head>
4+
<meta charset="UTF-8">
5+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
6+
<title>Document</title>
7+
</head>
8+
<body>
9+
<input type="text" id="vstup">
10+
<button type="submit" onclick="main()"> ověřit email </button>
11+
<p> email je: <span id="valid"> nevalidní </span></p>
12+
13+
<!--
14+
nemůžeme použít formulář, s tím jak je dělaný JS, protože pak by to
15+
nefungovalo kvůli toho že odeslání formuláře obnoví stránku
16+
-->
17+
18+
<script src="vypracování.js"></script>
19+
</body>
20+
</html>
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
function main(){// funkce se sputí po kliknutí na tlačítko
2+
const regEx = /^\w+@\w+\.\w+$/ /*způsob jak hledat emaily s tím co
3+
jsem vysvětloval -- není to perfektní ale k tomu by byly potřeba věci
4+
co nejsou vysvětlené v tom dokumentu, takže na velkou část emailů to
5+
funguje*/
6+
let text = document.getElementById("vstup").value // uloží hodnotu do text proměnné
7+
if (text.match(regEx)){ //když ho najde tak to vrátí něco jiného než null proto to funguje jako true
8+
document.getElementById("valid").textContent = "validní" //změní text na validní
9+
}
10+
else{ //a když to je null tak to jde sem
11+
document.getElementById("valid").textContent = "nevalidní" //změní text na nevalidní
12+
}
13+
}

cvičení/8. RegEx/email/zadání.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
udelěj regEx, který bude kontrovat vstup jestli by mohl být email a pak vypíše jestli je to možný email nebo ne
2+
3+
//pozn kontrola emailu aby byl 100% použitelný takže kontrolujeme jenom jestli by to mohl být email
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
<!DOCTYPE html>
2+
<html lang="en">
3+
<head>
4+
<meta charset="UTF-8">
5+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
6+
<title>Document</title>
7+
</head>
8+
<body>
9+
<input type="text" id="textForm">
10+
<button onclick="validaceData()"> klikni pro verifikaci </button>
11+
<p> toto datum je: <span id="validace"> nevalidní </span></p>
12+
<script src="vypracování.js"></script>
13+
</body>
14+
</html>
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
function validaceData(){
2+
const regEx = /\d{2}\.\d{2}\. \d{4}/
3+
var text = document.getElementById("textForm").value
4+
if (text.match(regEx)){
5+
document.getElementById("validace").textContent = "validní"
6+
}
7+
else{
8+
document.getElementById("validace").textContent = "nevalidní"
9+
}
10+
}
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
udělej regEx, který bude kontrovat jestli zadaný vstup je
2+
možné datum narození a vypíše to jestli je to dobrý nebo
3+
špatný vstup
4+
5+
/*pozn: neřešíme jestli přejde délku měsíce, dnů v měsíci atd.
6+
protože by to bylo složité až moct, řešíme jenom jestli je to
7+
datum ve formátu: 00-99.00-99. 1000 - 9999
8+
*/
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
<!DOCTYPE html>
2+
<html lang="en">
3+
<head>
4+
<meta charset="UTF-8">
5+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
6+
<title>Document</title>
7+
</head>
8+
<body>
9+
<input type="text" id="num1">
10+
<input type="text" id="num2">
11+
<select id="operace">
12+
<option value="plus"> + </option>
13+
<option value="minus"> - </option>
14+
<option value="krat"> * </option>
15+
<option value="deleni"> / </option>
16+
</select>
17+
<button onclick="pocitani()"> vypočítej</button>
18+
19+
<p> výsledek je: <span id="vysledek"> 0 </span></p>
20+
<script src="vypracování.js"></script>
21+
</body>
22+
</html>
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
class kalkulacka{
2+
static add(a,b){
3+
return a + b
4+
}
5+
static sub(a,b){
6+
return a - b
7+
}
8+
static multiply(a,b){
9+
return a * b
10+
}
11+
static devision(a,b){
12+
if (b == 0){
13+
return "nelze dělit nulou"
14+
}
15+
return a / b
16+
}
17+
}
18+
19+
function pocitani(){
20+
var operace = document.getElementById("operace").value;
21+
var num1 = Number(document.getElementById("num1").value);
22+
var num2 = Number(document.getElementById("num2").value);
23+
var result = 0;
24+
if (operace == "plus"){
25+
result = kalkulacka.add(num1, num2);
26+
}
27+
if (operace == "minus"){
28+
result = kalkulacka.sub(num1, num2);
29+
}
30+
if (operace == "krat"){
31+
result = kalkulacka.multiply(num1, num2);
32+
}
33+
if (operace == "deleni"){
34+
result = kalkulacka.devision(num1, num2);
35+
}
36+
37+
document.getElementById("vysledek").textContent = result;
38+
}
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
udělej třídu, která bude fungovat jako kalkulačka, uživate si vybere zda chce
2+
sčítat, odečítat, násobit nebo dělit (klidně přidej více) s tím že to celé
3+
se dělá pomocí třídy
4+
5+
/*pozn. je dobré tady využít statické metody ale není
6+
to nutné, já je v řešení používám*/
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
<!DOCTYPE html>
2+
<html lang="en">
3+
<head>
4+
<meta charset="UTF-8">
5+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
6+
<title>Document</title>
7+
</head>
8+
<body>
9+
<button onclick="hozeni()"> hoď kostkou </button>
10+
<p> výsledek kostky je: <span id="vysledek"> 0 </span></p>
11+
<script src="vypracování.js"></script>
12+
</body>
13+
</html>
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
class kostka {
2+
hod() {
3+
return Math.ceil(Math.random() * 6);
4+
}
5+
}
6+
7+
function hozeni(){
8+
var kost = new kostka();
9+
document.getElementById("vysledek").textContent = kost.hod()
10+
}
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
Udělej třídu, která umožní ti "hodit kostkou"
2+
3+
pozn. k tomuto je potřeba Math.random a Math.floor nebo Math.ceil. Math.random
4+
vrací číslo meti 0 až 1, Math.floor je zaokrouhlení dolů a Math.ceil
5+
zaokrouhlení nahoru
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
class osoba{ //základní třída osoba
2+
constructor(jmeno,vek){ //založení základního člověka
3+
this.jmeno = jmeno;
4+
this.vek = vek;
5+
}
6+
7+
vypisJmena(){ //základní metoda na vyýpis jména
8+
console.log("jmenuju se", this.jmeno, "a je mi", this.vek)
9+
}
10+
}
11+
12+
class student extends osoba{ //třída dědící z osoby, studden
13+
constructor(jmeno, vek, skola, rokStudia){ //tady je konstrukter kde využijeme i to z ososby ale přidáme nové věci
14+
super(jmeno, vek)
15+
this.skola = skola;
16+
this.rokStudia = rokStudia;
17+
}
18+
19+
vypisSkoly(){ //základní metoda na výpis školy a kolik let studuje
20+
console.log("studju na", this.skola, "a stuju už", this.rokStudia, "roky")
21+
}
22+
}
23+
24+
var osobaObj = new osoba("Petr", "54")
25+
osobaObj.vypisJmena() // vypíše: jmenuju se Petr a je mi 54
26+
27+
var studentObj = new student("karel", "24", "vysoká škola", 3)
28+
studentObj.vypisSkoly() // vypíše: studju na vysoká škola a stuju už 3 roky
29+
studentObj.vypisJmena() // vypíše: jmenuju se karel a je mi 24
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
udělej třídu osoba a z ní dědí studen, přidej jim základní metody a vlastnosti
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
class zvire{ //založení hlavní třídy ze které se dědí
2+
constructor(zvuk, zvire, jmeno){ // založení základních hodnot co potřebujeme
3+
this.zvuk = zvuk;
4+
this.zvire = zvire;
5+
this.jmeno = jmeno;
6+
}
7+
8+
vydejZvuk(){ //metoda, která vypíše co je to za zvíře a jaký dělá zvuk
9+
console.log(this.zvire, "dělá tento zvuk", this.zvuk)
10+
}
11+
12+
vypisJmeno(){ //metoda co vypíše jmén
13+
console.log("jmenuju se", this.jmeno)
14+
}
15+
}
16+
17+
class pes extends zvire{ //založení třídy pes, která dědí ze zvířete
18+
constructor(zvuk, jmeno, rasa){
19+
super(zvuk, "pes", jmeno) //vždycky v této třídě bude kočka, nemusíme nijak přijímat "zvíře" a proto tam dám natvrdo "pes"
20+
this.rasa = rasa
21+
}
22+
23+
vypisRasu(){ //bonusová metoda aby šlo ukázat že může mít další metody
24+
console.log("tento pes má rasu:", this.rasa)
25+
}
26+
}
27+
28+
class kocka extends zvire{ //založení třídy kocka, která dědědí ze zvířete
29+
constructor(zvuk, jmeno){
30+
super(zvuk, "kočka", jmeno) //vždycky v této třídě bude kočka, nemusíme nijak přijímat "zvíře" a proto tam dám natvrdo "kočka"
31+
}
32+
}
33+
34+
var pesObj = new pes("štěk", "žeryk", "Německý ovčák"); //založení objektu třídy pes
35+
pesObj.vypisJmeno(); //vypíše "jmenuju se žeryk"
36+
pesObj.vydejZvuk(); //vypíše "pes dělá tento zvuk štěk"
37+
pesObj.vypisRasu(); //vypíše "tento pes má rasu: Německý ovčák"
38+
39+
var kockaObj = new kocka("mňau", "micka"); //založení objektu třídy kočka
40+
kockaObj.vypisJmeno(); //vypíše "jmenuju se micka"
41+
kockaObj.vydejZvuk(); //vypíše "kočka dělá tento zvuk mňau"

0 commit comments

Comments
 (0)