Sąlygos
Posted: 2011 Jan 12 15:35
Taigi sąlygos yra naudojamos atlikti kažkokį loginį sprendimą, kuriuo paremtas visas programavimas. Mes pateikiame kažkokią sąlygą ir kompiuteris nusprendęs ar sąlyga teisinga ar ne, parenka nurodytą algoritmo dalį kuris bus vykdomas toliau.
Yra 3 tipų sąlygos:
If sąlyga
Dažniausiai sutinkama ir naudojama sąlyga. Jos aprašymas toks:
Šiai sąlygai priklauso ir žodelis else. Jis naudojamas jei sąlyga neteisinga, vykdyti kitą kodo dalį.
else taip pat gali turėti savo sąlygą ir jų gali būti aprašoma daug. Sąlyga tikrins else reikšmes tol, kol jas ras.
Else skaičius nėra ribojamas, bet jei turime patikrinti labai daug reikšmių, pvz kam lygus kintamasis a, tai tada naudosime switch
Switch sąlyga
Ši sąlyga naudojama, kai reikia rasti kažkurią vieną reikšmę ir paleisti jos algoritmą.
Aprašymas:
Sąlyga tikrina a kintamąjį ir lygina jo reikšmę su kiekvienu atveju. Jei reikšmė atitinka, paleidžiamas to atvejo algoritmas. Jei naudojamas default atvėjis, jis visada paleis savo algoritmą, bet tik tuo atveju, jei visi kiti atvejai (case (reikšmės) ) bus neteisingi.
Case gali būti ne tik lygus kažkokiam skaičiui, bet gali ir turėti apibrėžimą.
Kitaip sakant. Jei atvejyje randama reikšmė, tada naudojamas to atvejo algoritmas.
Tai apibrėžimo srities tikrinimas. Jei kintamajame a skaičius yra tarp atvejo apibrėžimo srities, tada jis bus iškviečiamas.
Tarkim a yra 5. case 1..55 yra visi skaičiai nuo 1 iki 55, tad 5 patenka į šią sritį ir šis atvejis bus iškviečiamas.
Paprastoji sąlyga
Tai yra pati paprasčiausia ir mažiausiai funkcijų turinti sąlyga, bet labai naudinga. Ji aprašoma taip:
Aprašymas gali būti kiek keistokas, bet paaiškinsiu.
(a>1) tai elementari sąlyga. Klausiama ar kintamajame esantis skaičius a didesnis už vienetą. Jei sąlyga teisinga, ir ji gražina tiesą, tada įvykdomas kodas, esantis prieš dvitaškį (:), jei netiesa, kodas esantis po dvitaškio. Ši sąlyga ypatinga tuo, kad ji naudojama ne atskirai nuo kodo, bet jame. Pvz:
Čia matome elementarią funkciją. Apie return dar nesimokėte, tai bus vėlesnėse pamokose, bet return, gražina kažkokią reikšmę, toje vietoje, kur funkcija iškviečiama. Bet apie tai vėliau.
Čia (a*b+20>100) yra sąlyga. Kompiuteris tikrina ar tai tiesa ar netiesa. Jei tiesa, tada į return perduodama (a+2), jei netiesa, tada perduodama (b+1).
Dar ši sąlyga yra nepamainomas pagalbininkas formatuojant tekstą.
Čia formatuojame tekstą hold kintamajame. Tekstai "Steam ID" arba "IP" bus įdėti pagal sąlygą. Tarkim is_user_steam[id] yra kintamasis, kur parašyta ar žaidėjas yra steamed ar non-steam. Jei is_user_steam[id] yra tiesa, tada įvykdoma tai, kas yra prieš dvitaškį (:), jei netiesa, po dvitaškio ("IP"). Tad pagal is_user_steam[id] bus parodomas reikiamas tekstas.
Šis gidas priklauso Amxmodx.lt forumui.
Bet koks šios informacijos platinimas be autoriaus sutikimo yra griežtai draudžiamas.
Yra 3 tipų sąlygos:
If sąlyga
Dažniausiai sutinkama ir naudojama sąlyga. Jos aprašymas toks:
Code: Select all
if(a>b) {// Jei sąlyga teisinga, šis kodas bus vykdomas. Jei ne, jis bus praleistas.}
Code: Select all
if(a>b) {// Jei teisinga vykdomas šis}else {// Jei sąlyga (a>b) neteisinga, vykdoma šis}
Code: Select all
if(a>b) {// Jei sąlyga teisinga, šis kodas bus vykdomas. Jei ne, jis bus praleistas.}else if(a*b==5) {// Jei (a*b==5) sąlyga teisinga, tai bus įvykdytas šis kodas. Jei neteisingas, tada pereinama prie kito else}else {// Jei visos prieš tai buvusios sąlygos neteisingos, įvykdoma ši.}
Switch sąlyga
Ši sąlyga naudojama, kai reikia rasti kažkurią vieną reikšmę ir paleisti jos algoritmą.
Aprašymas:
Code: Select all
switch(a) {case 1: {// Jei a=1, tai iškviečiamas šis atvejis.}case 3: {// Jei a=3 iškviečiamas šis atvejis.}default: {// Jei nė vienas atvejis nėra a reikšmė, tada iškviečiamas šis atvėjis}}
Case gali būti ne tik lygus kažkokiam skaičiui, bet gali ir turėti apibrėžimą.
Code: Select all
switch(a) {case 1, 6, 20, 55: {// Jei a lygus 1, 6, 20 arba 50, tada šis algoritmas bus iškviečiamas}case 2, 9, 14, 99: {// Jei a lygus 2, 9, 14 arba 99, tada šis algoritmas bus iškviečiamas}}
Code: Select all
switch(a) {case 1..55: {// Jei a lygus nuo 1 iki 55, tada šis algoritmas bus iškviečiamas}case 80..100: {// Jei a lygus nuo 80 iki 100, tada šis algoritmas bus iškviečiamas}}
Tarkim a yra 5. case 1..55 yra visi skaičiai nuo 1 iki 55, tad 5 patenka į šią sritį ir šis atvejis bus iškviečiamas.
Paprastoji sąlyga
Tai yra pati paprasčiausia ir mažiausiai funkcijų turinti sąlyga, bet labai naudinga. Ji aprašoma taip:
Code: Select all
(a>1) ? /*True*/ : /*False*/
(a>1) tai elementari sąlyga. Klausiama ar kintamajame esantis skaičius a didesnis už vienetą. Jei sąlyga teisinga, ir ji gražina tiesą, tada įvykdomas kodas, esantis prieš dvitaškį (:), jei netiesa, kodas esantis po dvitaškio. Ši sąlyga ypatinga tuo, kad ji naudojama ne atskirai nuo kodo, bet jame. Pvz:
Code: Select all
funkcija() {new a, ba = random_num(1, 5)b = random_num(6, 9) return (a*b+20>100) ? (a+2) : (b+1)}
Čia (a*b+20>100) yra sąlyga. Kompiuteris tikrina ar tai tiesa ar netiesa. Jei tiesa, tada į return perduodama (a+2), jei netiesa, tada perduodama (b+1).
Dar ši sąlyga yra nepamainomas pagalbininkas formatuojant tekstą.
Code: Select all
new hold[100],formatex(hold, charsmax(hold), "Jusu %s adresas yra xxx.xxx.xxx", (is_user_steam[id]) ? "Steam ID" : "IP")
Šis gidas priklauso Amxmodx.lt forumui.
Bet koks šios informacijos platinimas be autoriaus sutikimo yra griežtai draudžiamas.