| 				
					| Offline |  
					|  |  
					|  |  Csatlakozott:2016.02.10. 12:46
 Hozzászólások:429
 Megköszönt másnak: 62 alkalommal
 Megköszönték neki: 157 alkalommal
 | 
				
					| Ciklusok(Nem női ciklus)
 A ciklusok ismétlődő tevékenységek megvalósítására szolgálnak.
 A ciklusoknak 2 fajtájuk van: Feltételes és Számlálós.
 
 1. Feltételes ciklusok
 A futások száma előre nem ismert.
 
 
 a) Elöltesztelő feltételes ciklusA feltételtől függően, lehetséges, hogy egyszer sem fut le a ciklus.
 
 
 while(/* Feltétel */){    //Kód}
 Példa 1:
 
 new i; //Deklarálunk egy i változót, amelynek az alap értéke 0.while(i < 1){//Amig (while) az i változó kisebb mint 1, addig ismételje a ciklusban levő kódot.   i = 1; //Az i változó felveszi az 1-es értéket.}
A ciklus csak egyszer fog lefutni, mivel az első lefutásnál még igaz a feltétel (i, azaz 0 kisebb mint 1), de már a második lefutásnál hamis (i, azaz 1 nem kisebb mint 1), mivel megnöveltük az i változó értékét.
 
 Példa 2:
 
 new i = 2; //Deklarálunk egy i változót, amely felveszi a 2-es értéket.while(i < 1){//Amig (while) az i változó kisebb mint 1, addig ismételje a ciklusban levő kódot.  //Kód}
A ciklus egyszer sem fog lefutni, mivel a feltétel hamis (i, azaz 2 nem kisebb mint 1).
 
 Példa 3:
 
 new i; //Deklarálunk egy i változót, amelynek az alap értéke 0.while(i < 1){//Amig (while) az i változó kisebb mint 1, addig ismételje a ciklusban levő kódot.  //Kód}
Ez egy végtelen ciklus lesz, mivel nem módosítunk az i változón, ezért a feltétel mindig igaz (i, azaz 0 kisebb mint 1).
 
 
 b) Hátultesztelő feltételes ciklus
 A feltételtől függetlenül, legalább egyszer lefut a ciklus.
 
 
 do{    //Kód}while(/* Feltétel */)
 Példa 1:
 
 new i; //Deklarálunk egy i változót, amelynek az alap értéke 0.do{//Ismételd..   i = 1; //Az i változó felveszi az 1-es értéket.}while(i < 1)//..amig az i változó kisebb mint 1.
A ciklus csak egyszer fog lefutni, mivel az első lefutás után megnöveltük az i változó értékét, ezért a feltétel hamis lesz (i, azaz 1 nem kisebb mint 1).
 
 Példa 2:
 
 new i; //Deklarálunk egy i változót, amelynek az alap értéke 0.do{//Ismételd..  //Kód}while(i < 1)//..amig az i változó kisebb mint 1.
Ez egy végtelen ciklus lesz, mivel nem módosítunk az i változón, ezért a feltétel mindig igaz (i, azaz 0 kisebb mint 1).
 
 2. Számlálós ciklus
 A futások száma előre ismert.
 
 
 A For ciklusA feltételtől függően, lehetséges, hogy egyszer sem fut le a ciklus.
 
 
 for(Változó deklarálása; Feltétel; Változó értékének növelése/csökkentése) {    //Kód}
 Példa 1:
 
 new n; //Deklarálunk egy n változót, amelynek az alap értéke 0.for(new i; i < n; i++){ //Kód}
Deklaráltunk a ciklusba egy i változót, amelynek az alap értéke 0. Ezt követöen megadtunk egy feltételt (i kisebb mint n). Ha a feltétel igaz, akkor az i változó értékét növelni fogjuk 1-el (i++) minden lefutás után.
 
 Jelen esetben a ciklus egyszer sem fog lefutni, mivel a feltétel hamis (0 nem kisebb mint 0).
 
 Példa 2:
 
 new n = 5;  //Deklarálunk egy n változót, amely felveszi a 5ös értéket.for(new i; i < n; i++){ //Kód}
A ciklus 5 alkalommal fog lefutni. Minden egyes alkalommal növeljük az i változót értékét 1-el.
 
 Optimalizációs hibák
 Majdnem minden forráskódban találkoztam a következővel:
 
 
 new const Something[][] = { "Thing1", "Thing2", "Thing3"} for(new i; i < sizeof(Something); i++){ //Kód}
Ezzel az a gond, hogy minden lefutásnál lekéri újra a Something méretét.
 Egy ésszerűbb módja ennek az, hogy elmentsük a méretet egy változóba.
 
 
 new const Something[][] = { "Thing1", "Thing2", "Thing3"} new Size = sizeof(Something);for(new i; i < Size; i++){ //Kód}
 Megjegyzés:
 A leírás tartalmazhat helyesírási hibákat vagy elírásokat. Kérlek jelezzétek ezeket felém, hogy javítani tudjam. (Lehetőleg privát üzenetbe)
 Ha szeretnétek egyéb "tutorialokat", akkor szivesen fogadom a javaslatokat privát üzenetbe.
  
 
 A hozzászólást 1 alkalommal szerkesztették, utoljára Dooz 2018.10.03. 18:54-kor.
 
		
			| Ők köszönték meg Dooz nek ezt a hozzászólást (összesen 8):LeX (2018.10.03. 18:10) • [K]eNu* (2018.10.04. 08:14) • jokypapa (2018.10.04. 08:28) • aarpi. (2018.10.04. 09:05) • Tomii (2018.10.04. 19:09) • ✪ BeNiCh' (2020.02.14. 21:49) • DexoN (2020.06.14. 13:16) • exodus (2023.03.07. 23:03)
 |  
 
 |  |