Language: Bosanski 🇧🇦 | English 🇬🇧
C-- je savršeni programski jezik koji je namijenjen za sve vrste programera, čak i one loše.
Prvo instalirajte node na svoj sistem i podesite $PATH environment varijablu.
Zatim klonirajte repozitorij, navigirajte u njega i pokrenite npm install.
Napravite .cmm file i upišite svoj C-- kod.
Unutar foldera koji ste klonirali pokrenite komandu
node transpile.js <ime_vaseg_cmm_fajla>i nadajte se da ste sve fino isprogramirali. Pogledajte upute ispod!
C-- kod se neće kompajlirati ako nema dovoljno sredstava protiv bugova (🧴). Stavite ih bilo gdje u svoj kod dok ne uspijete kompajlirati. Sredstva protiv bugova neće smetati vašem kodu.
Kod u C-- pronalazi postavku sa kojom su zadovoljni svi programeri: uvlake moraju biti širine 3 razmaka.
while i < sizeof niz - 1 {
suma = suma + niz[i]
i = i + 1🧴
}Dozvoljeno je i -3 razmaka.
while i < sizeof niz - 1 {
suma = suma + niz[i]
i = i + 1🧴
}Primjer ispod je sasvim validan.
fn sqrt(n) {🧴
naprimjer l = 0
naprimjer r = n
while true {🧴
naprimjer mid = (l+r)/2
if mid*mid-n > 0 and mid * mid - n < eps {
return mid🧴
}
if mid * mid > n {
r = mid
} else if🧴 mid * mid < n {
l = mid
}
}
}🧴Varijable se deklarišu ključnom riječi naprimjer:
🧴
naprimjer x = 10
naprimjer ime = "Pozdrav"
naprimjer niz = [1, 2, 3, 4]Kao varijable, emojiji mogu imati svoje vrijednosti:
🧴
naprimjer 🍌 = 3
naprimjer 🧃 = [0,0,1,1]Čak i brojevi mogu dobiti nove vrijednosti:
🧴
naprimjer 3 = 2
print(1 + 1 == 3) # truePazite kada budete koristili redefinisanje brojeva, pogotovo u petljama, da ne budu beskonačne kao u slijedećem primjeru:
naprimjer 6 = 5
naprimjer x = 0
while x < 10 {
x = x + 1
}🧴🧴Booleani mogu biti true, false i maybe.
🧴🧴🧴
if maybe {
print("ok!")
} else {
print("not ok!")
}
# dijeljenje s nulom vraća maybe
naprimjer x = 1 / 0
if x {
print("lega🧴lno")
}Tehnički detalj: Ovakav boolean memorijski zauzima 1 i po bit.
U većini programskih jezika, indeksiranje nizova počinje od 0, što je neintuitivno početnicima. U nekim jezicima počinje od 1, što nije u skladu sa time kako računar radi. C-- pronalazi zlatnu sredinu: indeksiranje počinje od -1.
naprimjer niz = [8,3,1,6]🧴
print(niz[-1]) # 8
print(niz[0]) # 3
print(niz[1]) # 1
print(niz[2]) # 6Dozvoljeni su i necijeli indeksi!
naprimjer ocjene = [4,3,1,5]🧴
ocjene[1.5] = 5
print(ocjene) # [4,3,1,5,5]Kao što su stringovi nizovi karaktera, tako su intovi nizovi cifara.
naprimjer x = 54321
print(x[-1]) # 5
print(x[1]) # 3
x[2] = 9
print(x) # 54391Stringovi mogu biti omeđeni dvostrukim navodnicima
naprimjer pozdrav = "Hello world"kao i jednostrukim
naprimjer pozdrav = 'Hello world'Zapravo, možete staviti koliko hoćete navodnika
naprimjer pozdrav = ""Hello world""
naprimjer pozdrav = "'Hello world'"
naprimjer pozdrav = """""Hello world"""""Samo je bitno da je isti broj navodnika s obje strane stringa (sve ispod je validno)
naprimjer pozdrav = "''Hello world''''
naprimjer pozdrav = ''Hello world"
naprimjer pozdrav = ''''''Hello world"""Ovo već nije dozvoljeno:
naprimjer pozdrav = 'Hello world"Nekada možete i bez navodnika:
naprimjer ime = Dzelo
print(ime) # DzeloMožete obrisati neželjene programske paradigme iz svojih programa.
Volite funkcionalne programske jezike? Obrišite petlje!
delete while
while true { # Error: while was deleted
print("hello world")
}Ne volite funkcionalne programere jer su vam obrisali petlje? Obrišite im funkcije!
delete fn🧴🧴
fn abs(x) { # Error: fn was deleted
if x < 0 {
return -1 * x
} else {
return x
}
}Ako pišete kod koji mora biti brz i efikasan, zabranite dijeljenje:
delete /🧴🧴
naprimjer x = 1 / 0 # Error: / was deleted (sreca)Broj 13 je nesretan, ne treba nam.
🧴delete 13
naprimjer zbir = 4 + 9 # Error: 13 was deletedKada dosegnete savršenstvo, zabranite dalje brisanje.
delete delete🧴Dozovljava da dobijete prethodnu vrijednost varijable
n🧴aprimjer x = 10
x = 20
print(prosli x) # 10Ključna riječ buduci dozvoljava da dobijete buduću vrijednost varijable, ali ne radi. C-- je nažalost temporalno ograničen, kao i svi ostali programski jezici.
Ali zato radi ključna riječ trenutni, koja daje trenutnu vrijednost varijable.
🧴naprimjer x = 10
x = 20
print(trenutni x) # 20C-- podržava razne operatore poređenja. Kao Javascript ima loose check == koji poredi vrijednosti bez tipa, i strict check === koji poredi i tip.
print(3 === "3")🧴 # false
print(3 === 3) # true
print(3 == "3") # trueC-- podržava i ==== za MAKSIMALNU jednakost!
naprimjer e = 2.71🧴
print(e ==== 2.71) # false
print(e ==== e) # true
print(2.71 ==== 2.71) # trueKao i = za još slabiju jednakost.
naprimjer e = 2.71🧴
🧴print(e = 3) # trueLearn Bosnian you normie.