Kezdőoldal » Számítástechnika » Programozás » Java programozás megértésében...

Java programozás megértésében segítene valaki?

Figyelt kérdés

1. feladat


for (int sor = 0; sor < 5; sor++) {

for (int oszlop = 0; oszlop < 5; oszlop++) {

out.print("*");

}

out.println();

}


2. feladat


for (int sor = 0; sor < 5; sor++) {

for (int oszlop = 0; oszlop < sor; oszlop++) {

out.print("*");

}

out.println();

}


A könyvben annyi az utasítás, hogy próbáld megjósolni a kimenetelét mindkettőnek.

Egyik sem sikerült..


Szeretném, ha elmagyaráznátok nekem, hogy a ciklusok lefutása közben mi történik a programban, mi a logikája, miért írja ki azt amit..


Nagy segítség lenne, köszönöm előre is!


2017. nov. 22. 13:51
 1/3 anonim ***** válasza:

Ha egy ciklus működésével van gondod, akkor nem biztos, hogy egymásba ágyazott ciklusokon kellene a működést megértened. Mindkét feladatban ciklus van a cikluson belül.


Egyszerűbb feladaton próbáld megérteni, hogyan működik egy ciklus.

Egy ciklus egyébként semmi mást nem csinál, csak az utasítás blokkban {...} található utasításokat sorrendben egymás után végrehajtja, mindaddig elölről a végéig, amíg a ciklus feltételek érvényesek.


Utasítás blokk a zárójelek közötti utasítások összessége: { ... }


Ha csak egy utasítás van, akkor elhagyhatók a zárójelek.


A feltételeket, amíg a for ciklus fut, a () zárójelek között adod meg. Kell egy ciklus változó, aminek az értékét növeled, vagy csökkented minden egyes ciklus lépéssel. Ez a ciklus működéséhez mindenképpen kell, ezt figyeli a ciklus.


A zárójelen belül három dolgot kell megadnod, pontosvesszővel elválasztva:

1: a ciklusváltozó kezdő értéke (1. példában: int sor=0)

2: a feltétel, amíg a ciklus fut (sor < 5)

3: a ciklusváltozó léptetése (többnyire ++, vagy --)


Egyszerűbb ciklusokkal kezdd, ha szeretnéd megérteni.

2017. nov. 22. 14:08
Hasznos számodra ez a válasz?
 2/3 anonim ***** válasza:

"for (int sor = 0; sor < 5; sor++) { "


sor változón lépked 0-tól 4-ig


"for (int oszlop = 0; oszlop < 5; oszlop++) { "


Mivel a cikluson belül vagyunk, ezért a sor végig állandó, az oszlopon lépked 0-tól 4-ig.


out.print("*");


Kiír egy *-ot. Ezt minden oszlop lépkedésnél kiírja, tehát 5-öt fog kiírni.


}

out.println();


Kiléptünk az oszlop ciklusból, a sor ciklusban járunk, berak egy sortörést.

}



Tehát sor=0, a belső ciklus kiír 5db *-ot, utána jön egy sortörés.

sor = 1-nél lejátszódik ugyanez.


Az eredmény 5*5 csillag lesz.



A másik annyiban tér el, hogy a belső ciklusban:

"oszlop < sor" szerepel.

Tehát az első sorba 0 csillagot fog kiírni, aztán 1-et aztán 2-őt. Az utolsóba 4-et.


A sor legnagyobb értéke 4, ezért az oszlop értéke 0-tól 3-ig fog menni, tehát 4 csillagot ír ki az utolsó sorba.

2017. nov. 22. 14:48
Hasznos számodra ez a válasz?
 3/3 A kérdező kommentje:
Köszönöm mindkettőtöknek, nagyok vagytok!
2017. nov. 23. 13:14

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!