JAVA program megértésében segítenél? Többi lent.
package alapok;
public class Eldontes {
public static void main(String[] args) {
int[] szamok=new int[10]; // 10es tomb letrehozasa
for ( int i = 0; i < szamok.length; i++ ) {
szamok[i] = (int) (Math.random() * 100 );
System.out.print(szamok[i] + ", " );
}
int i=0;
boolean van=false;
while( (i<=9) && (van==false) ) {
if ( szamok[i] < 5 ) van=true;
i++;
}
if ( i<=9 ) {
System.out.println("Van ilyen elem");
} else {
System.out.println("Nincs ilyen elem");
}
}
}
Ez volna a program. Nem egy túl bonyolult, viszont sikerült elkapkodni az oktatáson és nem igazán értem, hogy miért működik.
Odáig vagyok meg, ahol kommenteltem, hogy ott létrehozunk egy 10 elemből álló üres tömböt.
A továbbiakban, hogy mi és miért történik a programban szeretném, hogy elmagyaráznátok nekem! Hálás lennék.
Köszönöm előre is,
B.
Hol akadtál el mert nem bonyolult.
szamok -ba definiálsz egy 10 -es tömböt,
ezt feltöltöd random számokkal.
majd while ciklussal végig mész
és megnézed van -e kisebb mint 5.
a végén pedig ki írod hogy van / nincs.
Amúgy fura módon az IF -ben a végén az "i" -t index sorszámát nézed nem azt hogy "van".
illetve már random szám generálásánál meg lehetne állapítani.
A problémám ott van, hogy például ezt..
for ( int i = 0; i < szamok.length; i++ ) {
szamok[i] = (int) (Math.random() * 100 );
System.out.print(szamok[i] + ", " );
..nem tudom értelmezni/olvasni. Tudom mi az a for ciklus, csupán így ez a három sor így együtt egyelőre értelmezhetetlen számomra.
Tanulom tanulom, de ez az egy feladat, most idegesít is már, mert jó ideje próbálom megérteni.
Ha úgy letudnád nekem vezetni, mintha egy buta parasztnak mondanád azt megköszönném.
Idővel majd menni fog nekem is! Addig is nagyon elemi szinten próbálom egyáltalán a programozói gondolkodásmódot elsajátítani.
Köszönöm,
B.
Ha valaki ilyen kódot hozna nekem én megbuktatnám(java-t tanítok egyetemen)
Létrehozol ugye egy int tömböt
A for ciklusban értéket adsz neki, minden elemnek egy random számot. A math.rand 0 és 1 közötti valós számot ad vissza, ezt megszorzod 100al, majd veszed az egész részéd az (int) segítségével(típuskonverzió)
A print segítségével meg kiírod a számokat
Létrehozol két változót, egy ciklusváltozót és egy logikai értéket.
While ciklus segítségével megnézed minden elemen, hogy kisebb-e mint 5. Ha igen kilépsz a ciklusból(van true lesz), ha nem akkor mész tovább.
Ha nincs egy ilyen elem sem akkor i 10 lesz
Ha i 10, akkor kiírod, hogy nincs ilyen szám
Már csak azt kéne tisztázni, hogy ez a program mit próbál megvalósítani.
Mármint oké, ez a program eke egyszerű, 5 másodperc megérteni mit csinál.
Na de általánosságban úgy, hogy egy programról nem tudod, hogy milyen feladatot old meg, úgy a büdös életben nem fogod megérteni, hogy mit miért úgy csinál, ahogy.
public static void main(String[] args) {
int[] szamok10 = new int[10]; // 10 elemu tomb deklaralasa
int z = 0;
int van = 0;
for ( int y = 0; y < szamok10.length; y++ ) {
szamok10[y] = (int) (Math.random() * 100);
System.out.print( szamok10[y] + ", " ); // 12-13-14 sor: 10 darab random szam generalasa es kiirasa egy sorba vesszovel es szokozzel elvalasztva
z = szamok10[y]; // minden a 10 alkalommal a z-t a szamok10[y] aktualis ertekevel teszem egyenlove
if ( z < 10 ) { // feltetel vizsgalat: Ha z kisebb, mint 10 akkor a "van" erteket megnoveljuk 1el.
van += 1;
}
}
System.out.println();
System.out.println();
System.out.print("Sikerult random generalnunk legalabb 1 darab 10-nel kisebb pozitiv egesz szamot? - ");
if ( van > 0 ) {
System.out.print("Igen!");
} else {
System.out.print("Nem."); // 22-23-24-25 sor: Kileptunk a for ciklusbol es megvizsgaljuk, hogy a vegen a "van" nagyobb e mint 1.
}
}
}
//mukodik ugyis, ha ket sort atirunk az alabbira --> 18.ik sorba azt, hogy "van = 1;" es a 27.ik sorba meg "if ( van == 1 ) {"
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
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!