Malé cvičenie 1

Vypočítajte:

\[\frac{(40^2-4^3)}{15}\]

(40^2 - 4^3) / 15

\[\lvert 5^2 - 5^3 \rvert\]

abs(5^2 - 5^3)
[1] 100

\[\pi \times 5^2\]

pi * 5^2
[1] 78.53982

Text

Vety

slovo1 <- "Ekonometria"
slovo2 <- "je"
slovo3 <- "sranda"
veta<-paste(slovo1, slovo2, slovo3)

Prvá veta: Ekonometria je sranda
Druhá veta: sranda je Ekonometria

Logické úlohy

Jednoduché

3 < 7
[1] TRUE
10 > 20
[1] FALSE
5 == 5
[1] TRUE
8 != 10
[1] TRUE

Zložitejšie

a <- 2.5
b <- 3.2
c <- 4.9
a + b == b + a & a + b != a + c
[1] TRUE
(a < b & b < c) | (c == a + b)
[1] TRUE
!(a + c == b * 2)
[1] TRUE
(a^2 + b^2) == c^2
[1] FALSE

Moje riešenie

V tejto časti som sa rozhodol využiť prácu s textom a logické testovanie na vytvorenie malého programu, ktorý overí, či zadaný e-mail spĺňa základné pravidlá – teda či obsahuje zavináč (@), bodku (.), a nemá medzery.

Takto môžeme demonštrovať praktické použitie príkazov ako grepl(), nchar(), strsplit() a logických operátorov v kombinácii.

# Zadanie e-mailu
mail <- "student.fmuk@uniba.sk"

# Overenie základných podmienok
obsahuje_zavinac <- grepl("@", mail)
obsahuje_bodku <- grepl("\\.", mail)
bez_medzery <- !grepl(" ", mail)
dlzka_ok <- nchar(mail) >= 8 & nchar(mail) <= 40

# Zobrazenie výsledkov
obsahuje_zavinac
[1] TRUE
obsahuje_bodku
[1] TRUE
bez_medzery
[1] TRUE
dlzka_ok
[1] TRUE

Ak všetky tieto podmienky vrátia TRUE, môžeme napísať, že e-mail spĺňa základné pravidlá:

if (obsahuje_zavinac & obsahuje_bodku & bez_medzery & dlzka_ok) {
  print("✅ E-mail spĺňa základné pravidlá.")
} else {
  print("❌ E-mail nespĺňa základné pravidlá.")
}
[1] "✅ E-mail spĺňa základné pravidlá."
LS0tCnRpdGxlOiAiRG9tw6FjYSDDumxvaGEgMiIKYXV0aG9yOiAiSWdvciBaZWxlbmF5ICA8YnI+CihzIHZ5dcW+aXTDrW0gQ2hhdEdQVCkiCmRhdGU6ICJTZXB0ZW1iZXIgMjAyNSIKb3V0cHV0OiAKICBodG1sX25vdGVib29rOgogICAgdG9jOiB0cnVlCiAgICB0b2NfZmxvYXQ6IHRydWUKICAgIHRoZW1lOiBjb3NtbwogICAgaGlnaGxpZ2h0OiBicmVlemVkYXJrCmVkaXRvcl9vcHRpb25zOiAKICBtYXJrZG93bjogCiAgICB3cmFwOiA3MgotLS0KCiMjIE1hbMOpIGN2acSNZW5pZSAxCgo+IFZ5cG/EjcOtdGFqdGU6CgokJFxmcmFjeyg0MF4yLTReMyl9ezE1fSQkCgpgYGB7cn0KKDQwXjIgLSA0XjMpIC8gMTUKYGBgCgokJFxsdmVydCA1XjIgLSA1XjMgXHJ2ZXJ0JCQKYGBge3J9CmFicyg1XjIgLSA1XjMpCmBgYAoKJCRccGkgXHRpbWVzIDVeMiQkCmBgYHtyfQpwaSAqIDVeMgpgYGAKCiMgVGV4dCAKCiMjIFZldHkKCmBgYHtyfQpzbG92bzEgPC0gIkVrb25vbWV0cmlhIgpzbG92bzIgPC0gImplIgpzbG92bzMgPC0gInNyYW5kYSIKdmV0YTE8LXBhc3RlKHNsb3ZvMSwgc2xvdm8yLCBzbG92bzMpCnZldGEyPC1wYXN0ZShzbG92bzMsIHNsb3ZvMiwgc2xvdm8xKQpgYGAKUHJ2w6EgdmV0YTogYHIgcGFzdGUoc2xvdm8xLCBzbG92bzIsIHNsb3ZvMylgICAKRHJ1aMOhIHZldGE6IGByIHBhc3RlKHNsb3ZvMywgc2xvdm8yLCBzbG92bzEpYAoKIyBMb2dpY2vDqSDDumxvaHkKIyMgSmVkbm9kdWNow6kKYGBge3J9CjMgPCA3CjEwID4gMjAKNSA9PSA1CjggIT0gMTAKYGBgCgojIyBabG/Fvml0ZWrFoWllCgpgYGB7cn0KYSA8LSAyLjUKYiA8LSAzLjIKYyA8LSA0LjkKYSArIGIgPT0gYiArIGEgJiBhICsgYiAhPSBhICsgYwooYSA8IGIgJiBiIDwgYykgfCAoYyA9PSBhICsgYikKIShhICsgYyA9PSBiICogMikKKGFeMiArIGJeMikgPT0gY14yCmBgYAoKIyMgTW9qZSByaWXFoWVuaWUKViB0ZWp0byDEjWFzdGkgc29tIHNhIHJvemhvZG9sIHZ5dcW+acWlIHByw6FjdSBzIHRleHRvbSBhIGxvZ2lja8OpIHRlc3RvdmFuaWUgbmEgdnl0dm9yZW5pZSBtYWzDqWhvIHByb2dyYW11LCBrdG9yw70gb3ZlcsOtLCDEjWkgemFkYW7DvSBlLW1haWwgc3DEusWIYSB6w6FrbGFkbsOpIHByYXZpZGzDoSDigJMgdGVkYSDEjWkgb2JzYWh1amUgemF2aW7DocSNIChAKSwgYm9ka3UgKC4pLCBhIG5lbcOhIG1lZHplcnkuCgpUYWt0byBtw7TFvmVtZSBkZW1vbsWhdHJvdmHFpSBwcmFrdGlja8OpIHBvdcW+aXRpZSBwcsOta2F6b3YgYWtvIGdyZXBsKCksIG5jaGFyKCksIHN0cnNwbGl0KCkgYSBsb2dpY2vDvWNoIG9wZXLDoXRvcm92IHYga29tYmluw6FjaWkuCgpgYGB7cn0KIyBaYWRhbmllIGUtbWFpbHUKbWFpbCA8LSAic3R1ZGVudC5mbXVrQHVuaWJhLnNrIgoKIyBPdmVyZW5pZSB6w6FrbGFkbsO9Y2ggcG9kbWllbm9rCm9ic2FodWplX3phdmluYWMgPC0gZ3JlcGwoIkAiLCBtYWlsKQpvYnNhaHVqZV9ib2RrdSA8LSBncmVwbCgiXFwuIiwgbWFpbCkKYmV6X21lZHplcnkgPC0gIWdyZXBsKCIgIiwgbWFpbCkKZGx6a2Ffb2sgPC0gbmNoYXIobWFpbCkgPj0gOCAmIG5jaGFyKG1haWwpIDw9IDQwCgojIFpvYnJhemVuaWUgdsO9c2xlZGtvdgpvYnNhaHVqZV96YXZpbmFjCm9ic2FodWplX2JvZGt1CmJlel9tZWR6ZXJ5CmRsemthX29rCmBgYAoKQWsgdsWhZXRreSB0aWV0byBwb2RtaWVua3kgdnLDoXRpYSBUUlVFLCBtw7TFvmVtZSBuYXDDrXNhxaUsIMW+ZSBlLW1haWwgc3DEusWIYSB6w6FrbGFkbsOpIHByYXZpZGzDoToKYGBge3J9CmlmIChvYnNhaHVqZV96YXZpbmFjICYgb2JzYWh1amVfYm9ka3UgJiBiZXpfbWVkemVyeSAmIGRsemthX29rKSB7CiAgcHJpbnQoIuKchSBFLW1haWwgc3DEusWIYSB6w6FrbGFkbsOpIHByYXZpZGzDoS4iKQp9IGVsc2UgewogIHByaW50KCLinYwgRS1tYWlsIG5lc3DEusWIYSB6w6FrbGFkbsOpIHByYXZpZGzDoS4iKQp9CmBgYAoKCg==