Mintaprogramok be Java: Csillag, piramis és szám nyomtatása
⚡ Okos összefoglaló
Mintaprogramok Java csillagokat, számokat vagy betűket nyomtathat rögzített alakban, és mindegyik beágyazott ciklusokból épül fel, ahol a külső ciklus sorokat számol, a belső ciklusok pedig szóközöket és karaktereket helyeznek el.

A mintanyomtató programok olyan minták vagy szimbólumok, amelyek betűket vagy más karaktereket tartalmaznak meghatározott formátumban. Java A mintakódolás növeli a programozók logikai felépítését, ami segít nekik jó programozóvá válni.
Minden itt szereplő példa csak beágyazott ciklusokat és alapvető műveleteket igényel Java szintaxis.
A minták kategóriái
Számtalan mintát rajzolhatunk Java, és az összes minta három különböző módon végrehajtható.
Az azonosításhoz három fő kategóriát használnak Java mintaprogramok.
- Csillagminta: In Java csillagmintás programok, a csillagminták sorozata csillagok (*) különböző alakzatok létrehozására használják, mint például piramis csillagminta program, szűk háromszög, bal oldali háromszög, rombusz alakú, négyzet alakú és sok más minta Java.
- Számminta: A folyamatirányítási utasítások gyakorlásához egy másik mintatípus a számmintás programok, JavaA számminta-programok számokból/számlálásból állnak. Legtöbbször az 'i' értékét állítjuk be, amely egy ciklus iterátor számok generálására a mintaprogramozásban. A számminta legkisebb ciklusszáma szintén kettő. A számminta-program a következőben található: Java sorok és oszlopok rendszerében is működik.
- Karakterminta: A karakterminta programozása olyan karakterekből áll, amelyek a Angol ábécé. Ez egy másik módja a kódolási készség fejlesztésének, de itt a karakterekkel foglalkozunk, nem a számokkal vagy a csillagokkal. A mintának lehet ugyanaz a karaktere a teljes mintában, vagy lehetnek különböző karakterek, az alkalmazott logikától függően.
Az alábbi táblázat bemutatja, hogy mi változik a kategóriák között.
| Kategória | Nyomtatott egység | Honnan származik a kinyomtatott érték | Minta kimenet |
|---|---|---|---|
| Csillagminta | Csillag | Fix szimbólum, így csak a ciklushatárok változnak | * * * |
| Számminta | Digit | Az i vagy j ciklus iterátor közvetlenül kiíródik | 1 alkalmazott |
| Karakterminta | Levél | Egy int seed, ami char-ra vált, 65-től kezdődően A esetén | ABC |
Mindhárom esetben a külső ciklus számolja a sorokat, egy belső ciklus kinyomtatja az igazítási szóközöket, a második pedig a látható karaktereket. Csak a kiíratott mértékegység változik.
Ugyanezek a cikluskészségek vezérlik a többi klasszikus gyakorlatot is, mint például a kiválasztási rendezés, beszúrási rendezés, És a Armstrong-szám program.
A csillag minták az elsők, mivel a szimbólum soha nem változik, és csak a ciklushatárok számítanak.
Csillagminta programok itt Java
A csillagminták csillagot nyomtatnak a konzolra, a minta alakja teljes mértékben a beírt kódtól függ.
Fél bal háromszög csillagmintás program:
Az alábbi program kinyomtatja ezt a fél bal oldali háromszöget:
public class LeftStarPattern{ public static void main(String args[]){ int i, j, row = 6; for (i=0; i<row; i++) { for (j=2*(row-i); j>=0; j--) { System.out.print(" "); } for (j=0; j<=i; j++ ) { System.out.print("* "); } System.out.println(); } } }
Code magyarázat:
- Kijelent int i, int j. A sorváltozó deklarálása és inicializálása an int sorban.
- i a külső 'for' ciklus iterátora, j pedig a belső 'for' ciklus iterátora, a 'sor' a piramisnak rendelkeznie kell néhány sorral.
- A beágyazott for esetén a külső „for” a sorokat, a belső „for” pedig az oszlopokat jelöli.
- A külső 'for'-ban inicializálja az 'i' iterátort 0-val, állítsa be az i< feltételt, és növelje az i-t.
- Most a belső 'for' ciklus inicializálva van 2*-vel (i sor) és csökkentésekkel.
- A beágyazott „for” helyet nyomtat a konzol képernyőjén.
- A beágyazott „for” törzsén kívül egy másik „for” hurok kerül elhelyezésre. ez a 'for' nyomtatott csillag a beágyazott „for” végrehajtása után. J<=i-ig hurkol.
Homoküveg csillagmintás program:
Két egymásra rakott piramis hozza létre ezt a homokórát:
public class Main { public static void main(String[] args) { int rows = 5; for (int i= 0; i<= rows-1 ; i++) { for (int j=0; j <i; j++) { System.out.print(" "); } for (int k=i; k<=rows-1; k++) { System.out.print("*" + " "); } System.out.println(""); } for (int i= rows-1; i>= 0; i--) { for (int j=0; j< i ;j++) { System.out.print(" "); } for (int k=i; k<=rows-1; k++) { System.out.print("*" + " "); } System.out.println(""); } } }
Code magyarázat:
- Code -vel kezdődik nyilvános statikus űr fő, int sorokban meghatározza a homoküvegben található sorok számát.
- Két beágyazott „for” van, az első a lefelé mutató piramist, a második pedig a felfelé mutató piramist.
- A beágyazott for esetén a külső „for” a sorokat, a belső „for” pedig az oszlopokat jelöli.
- A külső 'for' ciklusokban i<= sor-1-ig, a belső 'for' ciklusokban i-ig. nyomtatási rendszer kiírja a helyet a konzolon.
- A második belső hurok egy csillagot és egy szóközt nyomtat a konzolon.
- Amikor az első belső hurok teljesen végrehajtódik i=0-nál, akkor a második belső ciklus teljes mértékben végrehajtódik.
- Ezután a külső hurok növekedett. Ez a ciklus addig tart, amíg a feltétel hamissá nem válik.
- A második beágyazott hurok a felfelé irányuló piramist jeleníti meg, éppen csak megváltoztatja az első beágyazott hurok külső hurkának inicializálását és állapotát.
- Megjeleníti a felfelé mutató piramist. Mind a lefelé, mind a felfelé irányuló piramisok teszik a homoküveg csillag minta.
Gyémánt alakú csillagmintás program:
Egy felfelé és lefelé irányuló piramis adja ezt a gyémántot:
public class Main { public static void main(String args[]) { int n, i, j, space_0 = 1; n = 6; space_0 = n - 1; for (j = 1; j<= n; j++) { for (i = 1; i<= space_0; i++) { System.out.print(" "); } space_0--; for (i = 1; i <= 2 * j - 1; i++) { System.out.print("*"); } System.out.println(""); } space_0 = 1; for (j = 1; j<= n - 1; j++) { for (i = 1; i<= space_0; i++) { System.out.print(" "); } space_0++; for (i = 1; i<= 2 * (n - j) - 1; i++) { System.out.print("*"); } System.out.println(""); } } }
Code magyarázat:
- A gyémánt csillag minta, 'n' a sorok száma, n-1 a_0 térben tárolva.
- A beágyazott for esetén a külső „for” a sorokat, a belső „for” pedig az oszlopokat jelöli.
- Az első beágyazott „for” a felfelé mutató piramist jeleníti meg. A külső 'for' ciklusok n-ig és a belső for ciklusok space_0-ig a belső ciklus helyet jelenít meg a konzolon.
- Van egy másik belső „for” is, amely i<= 2 * j – 1-ig hurkol, és egy csillagot jelenít meg a belső „for” nyomtatási rendszeren kívül, és egy sort nyomtat. Ez a beágyazott hurok a felső piramist nyomtatja ki.
- A másik beágyazott „for” egy lefelé mutató piramist jelenít meg. A külső 'for' hurkok i<=n-1-ig, az első belső 'for' szóközt, a második belső pedig csillagot nyomtat.
- A belső „for”-on kívül nyomtasson sorközt. mind a felfelé, mind a lefelé haladó piramis teszi a gyémántmintát.
Derékszögű háromszög csillagminta términta program:
A j és i modulusa a következő hézagokat illeszti be:
public class AsterikProgramJava { public static void main(String[] args) { for(int i=1;i<=10;i++) { for(int j=1;j<=i+i;j++) { int mid; mid=j%i; if(mid==0) System.out.print("* "); else System.out.print("*"); } System.out.print("\n"); } } }
Code magyarázat:
- A fenti minta kódot, a külső „for” gondoskodik a sorok számáról, a belső „for” pedig az oszlopokat.
- Ha a külső „for” 1, ami az első sort jelenti, és amikor a belső „for” értéke 1, az azt jelenti, hogy ez az első oszlop.
- A belső 'for'-ban deklaráljunk egy mid nevű változót, és tároljuk a j/i maradékát. Ez felosztja az i és j értékeket, hogy megkapja a modulust.
- Tehát, ha a modulus 0, akkor jelenítsen meg egy csillagot és szóközt; ellenkező esetben csak egy csillag jelenjen meg. A belső „for”-on kívül nyomtasson egy sort.
Modern Java Megjegyzés: ból ből Java 11 a térhurkok helyettesíthetők a következővel: System.out.print(" ".repeat(n)), és minden sort egy StringBuilder egy előtt println() A hívás gyorsabban fut. Az eredeti kód a leírtak szerint marad meg, mivel explicit módon mutatja a számtani műveleteket.
Csereping A ciklusszámláló csillagja minden csillag alakzatot szám alakzattá alakít.
Numerikus minták programjai Java
A numerikus minták számokból állnak; numerikus mintákból sokféle alakzatot rajzolhatunk.
Szemközti félháromszög mintázatú program:
A lefelé, majd felfelé számolás ezt a számháromszöget eredményezi:
public class Number_p { public static void main(String[] args) { int i, j, rows_0=5; for (i = rows_0; i >= 1; i--) { for (j = 1; j <= i; j++) { System.out.print(j+" "); } System.out.println(); } for (i = 2; i <= rows_0; i++) { for (j = 1; j <= i; j++) { System.out.print(j+" "); } System.out.println(); } } }
Code magyarázat:
- Ennek a mintának a megrajzolásához két egymásba ágyazott „for” hurkot fogunk használni. Az egyik kinyomtatja az első piramist, a másik pedig a második piramist.
- Kijelent int i, int j és int sor_0, és inicializálja a sort a kívánt sorok számával. Itt a sor értéke 5.
- Állítsa be az első beágyazott 'for' külső 'for' ciklusát, inicializálja az i-t a sorok számával, és addig iteráljon, amíg i >=, és csökkentse az iterátort. Ez a külső „for” a sorokkal foglalkozik.
- A belső 'for'-ban állítsa be a j=1 feltételt, és iterálja j<=i-ig. A belső ciklus törzsében jelenítse meg a j változót a szóközzel.
- Most a második beágyazott „for”-ban változtassa meg az első beágyazott „for” külső „for” feltételét. Inicializálja 2-vel, és ismételje meg az i<= sorokig.
- És a belső ciklus addig ismétlődik, amíg el nem éri az i-t. Ezután megjelenik az üzenet a konzolon, ugyanúgy, mint az első beágyazott „for” belső ciklusában, a belső for prints sorköz törzsén kívül.
Ismétlődő szám a derékszögű háromszög oszlopban Mintaprogram:
A számláló visszaállítása minden sorban megismétli a számokat:
public class Number_pattern { public static void main(String args[]) { int i, j,number, n=7; for(i=0; i<n; i++) { number=1; for(j=0; j<=i; j++) { System.out.print(number+ " "); number++; } System.out.println(); } } }
Code magyarázat:
- A példakódban deklarálja int i, int j, int szmber, és int n.
- Ezután inicializálja az n-t a kívánt sorok számának értékével, ez itt 7.
- A külső 'for'-ban indítsa el a ciklust 0 értékről, és addig iterálja, amíg el nem éri az n-t.
- A számot inicializálhatja a hurkon belül vagy kívül.
- A belső 'for'-ban addig iteráljon, amíg j kisebb vagy egyenlő lesz, mint i elérte. És jelenítse meg a számot szóközzel.
- A belső „for” szövegtörzsén kívül nyomtatott sorköz.
- A belső „for” addig ismétlődik, amíg feltétele hamis lesz. Amikor ez a feltétel hamisra változik, a külső ciklus ismét növekszik, és végrehajtja a belső 'for'-t, amíg a feltétel hamisra nem változik.
- Ez az eljárás addig ismétlődik, amíg a külső hurok hamis nem lesz.
Ugyanez a váz betűket nyomtat, miután egy int magot char-rá alakítottunk.
Karaktermintázat programok Java
A karakterminták angol ábécékből állnak. Klassz és klassz karakterminta-programokat készíthetünk velük. Java néhányat az alábbiakban tárgyalunk.
Karakter félpiramis mintás program:
Egy int seed char-ra fordítása a következő betűket írja ki:
public class Character_p{
public static void main(String[] args){
int alphabet = 65;
for (int i = 0; i <= 5; i++){
for (int j = 0; j <= i; j++)
{
System.out.print((char) alphabet + " ");}
alphabet++;
System.out.println();
}
}
}
Code magyarázat:
- Deklarálja az ábécét, és inicializálja 65 értékkel.
- A külső a hurkot 0-tól kezdi, és addig ismétli, amíg i 5 vagy kevesebb lesz.
- A for belsejében a ciklus 0-val kezdődik, és addig ismétlődik, amíg j kisebb vagy egyenlő nem lesz, mint i.
- Ezután nyomtassa ki a karaktert és a szóközt a kimeneti képernyőn.
- Karakterek nyomtatásához az ábécét egész számról karakterre írjuk.
- A törzsén kívül növelje az ábécét, és nyomtassa ki a sort a kimeneti képernyőn. A (char) az ábécé értékét karakterré alakítja.
Piramis/háromszög minta Java:
Egy szóközhurok piramis alakban középre igazítja a betűket:
public class CharacterPattern
{
public static void main(String[] args){
for (int i = 0; i <= 8; i++)
{
int alphabet_0 = 65;
for (int j = 8; j > i; j--)
{
System.out.print(" ");
}
for (int k = 0; k <= i; k++)
{
System.out.print((char) (alphabet_0 + k) + " ");
}
System.out.println();
}
}
}
Code magyarázat:
- Ebben a példakódban három „for” ciklust használtunk, az egyik egy külső ciklus, két hurok pedig a külső „for”-ba van beágyazva.
- A külső 'for' 0-tól kezdődik, és addig ciklusok, amíg az érték 8 vagy kisebb lesz.
- A külső 'for' törzsében az egész típusú ábécé változóját 65-ös értékkel inicializáltuk, a másik 'for'-t pedig a törzsébe ágyaztuk be.
- Az első belső „for” a külső „for” hurok hátoldala, és a törzsében a konzolon található nyomtatási terület. A testén kívül van egy másik „for” is. Úgy iterál, mint a külső hurok.
- A második belső ciklus törzsében írja ki a karaktert az ábécé +k beírásával, és írja ki szóközzel a konzolon. A második belső „for” törzsén kívül nyomtasson egy sort.








