Pereiti prie turinio

Rekomenduojami pranešimai

Sveiki,

 

mokausi Java, kad ją geriau suprasčiau ir įsisavinčiau pagrindus, pradėjau nuo Karel the robot.

Iškilo klausimas.

 

Ar yra skirtumas jei aš programą rašysiu taip:

 

	while(frontIsClear()) {
		move();
		if(leftIsBlocked()) {
			turnRight();
			putBeeper();
			while(frontIsClear()) {
				move();
				if(noBeepersPresent()) {
					putBeeper();
				}
			}
		}
	}

 

ir jei rašysiu taip:

 

	while(frontIsClear()) {
		move();
               }
	if(leftIsBlocked()) {
		turnRight();
		putBeeper();
               }
	while(frontIsClear()) {
		move();
               }
	if(noBeepersPresent()) {
		putBeeper();
	}

Tiesiog, ar yra skirtumas, ar aš programos tam tikrą funkciją rašysiu su vienu ciklu į kurį dėsiu dar keletą ciklų, ar aš kiekvieną ciklą atskirai rašysiu?

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Taip, yra. Visiškai skirtingi du dalykai. Pirmu atveju visas ciklo kūnas kartojamas kiekviename pasikartojime. Duotas kodo gabalas baigsis vykdyt iškart, kai priekis nebebus laisvas (ir kai vykdymas vėl prieis išorinio ciklo sąlygos tikrinimą).

 

Antru atveju judės, kol priekis tuščias, tada galbūt pasisuks dešinėn, tada vėl judės, kol priekis tuščias, tada galbūt padės beeperį. Ir baigsis, nes nebus cikle (nebent čia ne visas kodas) :)

Redagavo Silke
Nuoroda į pranešimą
Dalintis kituose puslapiuose

Prisijunkite prie diskusijos

Jūs galite rašyti dabar, o registruotis vėliau. Jeigu turite paskyrą, prisijunkite dabar, kad rašytumėte iš savo paskyros.

Svečias
Parašykite atsakymą...

×   Įdėta kaip raiškusis tekstas.   Atkurti formatavimą

  Only 75 emoji are allowed.

×   Nuorodos turinys įdėtas automatiškai.   Rodyti kaip įprastą nuorodą

×   Jūsų anksčiau įrašytas turinys buvo atkurtas.   Išvalyti redaktorių

×   You cannot paste images directly. Upload or insert images from URL.

Įkraunama...
  • Dabar naršo   0 narių

    Nei vienas registruotas narys šiuo metu nežiūri šio puslapio.

×
×
  • Pasirinkite naujai kuriamo turinio tipą...