Johdanto Java-malleihin

Java-artikkelissa, ennen minkä tahansa Java-ohjelmointikielen oppimista ja syventämistä edistyneisiin käsitteisiin, on erittäin tärkeätä ja ennen kaikkea ymmärtää silmukoiden toiminta. Vaikka on olemassa 3 tyyppisiä silmukoita, jotka ovat silmukkailla silmukkailla, mutta silloin. Jokaista silmukkaa käytetään ohjelman erityistilanteen mukaan, koska ne eroavat hiukan toisistaan. Eri silmukoiden käyttäminen vaatii jonkin verran ohjelmointilogiikkaa ja tätä tarkoitusta varten ohjelmoijille annetaan malliharjoittelu, koska siihen sisältyy loogisen ja päättelyvoiman käyttö. Se voi olla geometristen hahmojen (kuten kolmion, neliön jne.) Tulostaminen, pyramidi, laatikot erilaisilla tähtikuvioilla, numeroilla, merkityylillä konsolinäytöllä. Silmukoiden muoto tai perussintaksi voi vaihdella ohjelmointikielellä, mutta yleinen logiikka näiden kuvioiden tulostamiseksi pysyy samana.

Esimerkki Java-malleista

Ymmärretään kuinka piirtää Java-malleja muutamien esimerkkien avulla

Esimerkki 1: Puolipyramidin tulostaminen numeroilla.

Koodi:

public class Pyramid
(
public static void main(String() args)
(
int i, j;
​//outermost loop to represent the number of rows which is 5 in this case for(i= 1; i<= 5; i++)
(
​//innermost loop is to print the numbers in the specific rows for (j=1; j<=i; j++)
(
System.out.print(j +" " );
)
System.out.println();
)
)
)

lähtö:

Yllä olevassa esimerkissä vaaditaan vain kaksi perussilmukkaa kuvion tulostamiseksi, silmukan ensimmäinen on rivien lukumäärä. Olemme tapauksessamme määritellyt rivit eli 5, muuten voimme myös ottaa käyttäjän syötteen ja tallentaa sen muuttujaan. Sisäisen silmukan on tarkoitus tulostaa tietyn rivin numerot. Kun 1 rivi tai 'j' -silmukka on valmis, rivi vaihdetaan painikkeella println ().

Esimerkki 2: Numeroiden tulostaminen.

Koodi:

public class NumberTriangle
(
public static void main(String() args)
(
int i, j;
int rows =7;
​//outermost loop to represent the number of rows which is 7 in this case
//for the upper half of arrow
for (i=1; i<= rows; i++)
(
​//innermost loop is to print the numbers in the specific rows
//for the upper half of arrow
for (j=1; j<=i; j++)
(
System.out.print(j + " ");
)
System.out.println();
)
​//outermost loop to represent the number of rows which is 6 in this case
//for the lower half of arrow
for (i=rows-1; i>=1; i--)
(
​//innermost loop is to print the numbers in the specific rows
//for the lower half of arrow
for (j=1; j<=i; j++)
(
System.out.print(j + " ");
)
System.out.println();
)
)
)

lähtö:

Yllä olevassa esimerkissä meidän täytyy jakaa nuoli kahteen puolikkaaseen ja käyttää 2 silmukkaa kumpaankin puolikkaaseen. Rivien lukumäärän ensimmäisellä puoliskolla olisi riveille asetettu alkuperäinen arvo, kun taas alemman puolikkaan rivimäärä on 1 pienempi kuin alkuperäinen arvo. Molempien puoliskojen sisäsilmukoita käytetään iteroimaan kunkin rivin läpi ulomman silmukan mukaisesti.

Esimerkki3: Koko pyramidin tulostaminen tähdellä (*).

Koodi:

public class FullPyramid
(
public static void main(String() args)
(
int i, j, k;
int rows = 5;
//outermost loop to represent the number of rows which is 5 in this case for(i= 1; i<= rows; i++)
(
//innermost loop to represent the spaces in pyramid for (j= 1; j<= rows-i; j++)
(
System.out.print(" ");
)
​//innermost loop to represent the stars (*) in pyramid for (k= 1; k<= 2*i-1; k++)
(
System.out.print("* ");
)
System.out.println();
)
)
)

lähtö:

Yllä olevassa esimerkissä meidän on tehtävä 3 asiaa, ts. Pitämällä mielessä niiden pyramidien tulostamiseen tarkoitettujen rivien kokonaismäärä, joiden ensimmäinen silmukka toimii yhdestä riviin -muuttujaksi. Toiseksi meidän on ensin tulostettava välilyönnit pyramidissa ja sitten kuvio (*) välin jälkeen. Tässä toisessa ja kolmannessa käytetään silmukoita, jotka ovat ulomman silmukan 'i' sisällä.

Esimerkki 4: Puoli käänteisen pyramidin tulostaminen numeroilla.

Koodi:

public class ReversePyramid
(
public static void main(String() args)
(
int i, j, k;
int rows = 5;
​//outermost loop to represent the number of rows which is 5 in this case for(i= 1; i<= rows; i++)
(
//innermost loop to represent the spaces
for (j= 1; j<= rows-1; j++)
(
System.out.print(" ");
)
​//innermost loop to represent the stars (*) in pyramid for (k= 1; k<= i; k++)
(
System.out.print("* ");
)
System.out.println();
)
)
)

lähtö:

Yksinkertainen puolipyramidi on helppoa, koska joudumme käsittelemään numeroita, * tai merkkejä, joita tulostamme, mutta käänteisessä pyramidissa on ensin tulostettava välilyönnit ja sen jälkeen kuvio, joka on tapauksessamme (*). Joten silmukoille 3 käytetään toimimaan samalla tavalla kuin täyden pyramidin tapauksessa.

Esimerkki 5: Puolipyramidin tulostaminen aakkosten avulla.

Koodi:

public class AlphabetPyramid
(
public static void main(String() args)
(
int i, j;
​//outermost loop to represent the number of rows which is 5 in this case for(i= 1; i<= 5; i++)
(
int ch = 65;
​//innermost loop to represent the alphabets in a pyramid in particular row for (j= 1; j<= i; j++)
(
System.out.print((char)(ch + i - 1) + " ");
)
System.out.println();
)
)
)

lähtö:

Pyramidi on painettu samalla logiikalla kuin yllä olevassa esimerkissä, käyttämällä silmukoille 2, yksi rivien lukumäärälle ja muut tietyssä rivissä olevalle merkkien tulostamiselle. Mutta tärkein asia, joka tulisi huomata, on merkkitietojen käsittely. 'A': lla on Java-merkinnässä numeerinen arvo 65, joten kaikki matemaattinen logiikka suoritetaan käyttämällä aakkosten numeerista arvoa ja lopulta se tulostetaan merkkimuodossa.

Esimerkki 6: Aakkosten tulostuskuvio.

Koodi:

public class AlphabetPattern
(
public static void main(String() args)
(
int i, j;
//outermost loop to represent the number of rows which is 5 in this case for(i= 1; i<= 5; i++)
(
int ch = 65;
​//innermost loop to represent the alphabets for (j= 1; j<= i; j++)
(
System.out.print((char)(ch - 1 + j) + " ");
)
System.out.println();
)
)
)

lähtö:

Peruskuvio, jota seurataan merkkiarvon ja silmukoiden 2 käsittelyä varten yllä olevassa esimerkissä, on samanlainen kuin esimerkki 5, ero on vain yksinkertainen logiikka, jota käytetään halutun kuvion tulostamiseen.

Esimerkki 7: neliön tulostaminen tähdellä (*).

Koodi:

public class SquarePattern
(
public static void main(String() args)
(
int i, j;
​//outermost loop to represent the number of rows which is 5 in this case for(i= 1; i<= 5; i++)
(
int ch = 65;
//innermost loop to represent the stars (*) for (j= 1; j<= 5; j++)
(
System.out.print(" * " + " ");
)
System.out.println();
)
)
)

lähtö:

Neliön tulostamiseen tarvitaan pituus ja leveys, ts. Neliön molemmin puolin tulee olla samat, mikä meidän tapauksessamme on 5. Joten ensimmäistä silmukkaa varten käytetään neliöiden rivien pituutta tai lukumäärää ja silmukan sisäosaa käytetään neliön leveyteen eli 5 tähteä yhdellä rivillä.

Esimerkki 8: Suorakulmion tulostaminen tähdellä (*).

Koodi:

public class RectanglePattern
(
public static void main(String() args)
(
int i, j;
​//outermost loop to represent the number of rows which is 5 in this case for(i= 1; i<= 5; i++)
(
int ch = 65;
​//innermost loop to represent columns the stars (*) for (j= 1; j<= 9; j++)
(
System.out.print(" * " + " " );
)
System.out.println();
)
)
)

lähtö:

(*): N suorakulmion tulostamisen peruslogiikka on sama kuin neliöiden tulostaminen, ainoa ero on suorakaiteen erilaisessa pituudessa ja leveydessä. Tässä 'i' -silmukka on suorakulmion pituudelle ja sisäinen 'j' -silmukka on silmukan leveydelle. Ohjelmassamme sitä pidetään vakiona arvona, voimme myös kysyä käyttäjältä ja tallentaa ne erillisiin muuttujiin.

Esimerkki 9: Timanttien tulostaminen tähdellä.

Timanttien tulostaminen Java: lla on hyvin yksinkertainen prosessi. Siihen sisältyy 2 pyramidin tulostaminen, 1 ylöspäin ja toinen käänteiseen suuntaan. Joten periaatteessa meidän on käytettävä silmukoita samalla tavalla kuin koodaamme kahden erillisen pyramidin tulostamiseksi.

Koodi:

public class Diamond
(
public static void main(String() args)
(
int i, j, k;
int rows = 5;
​//outermost loop to represent the number of rows which is 5 in this case.
// Creating upper pyramid
for(i= 1; i<= rows; i++)
(
//innermost loop to represent the spaces in upper pyramid for (j= 1; j<= rows-i; j++)
(
System.out.print(" ");
)
​//innermost loop to represent the stars (*) in upper pyramid for (k= 1; k<= 2*i-1; k++)
(
System.out.print("* ");
)
System.out.println();
)
​//outermost loop for the rows in the inverted pyramid for (i = rows-1; i>0; i--)
(
​//innermost loop for the space present in the inverted pyramid for (j=1; j<= rows - i; j++)
(
System.out.print(" ");
)
​//innermost loop inside the outer loop to print the ( * ) pattern in inverted pyramid for (k = 1; k<= 2*i-1; k++)
(
System.out.print("* ");
)
System.out.println();
)
)
)

Yllä olevassa esimerkissä käytetään melkein samaa logiikkaa sekä pyramidien luomiseen, yksi ylöspäin että toinen käänteiseen suuntaan. Aivan ensimmäinen silmukalla on rivien tai rivien lukumäärä kuviossa ja kaksi muuta silmukoita ovat välilyöntejä ja tähti (*) -kuvio kuviossa.

lähtö:

Esimerkki 10: Binaarinumeroiden tulostaminen portaiden muodossa.

Koodi:

public class BinaryStair
(
public static void main(String() args)
(
int i, j;
//outer loop for the total rows which is 5 in this case for (i = 1; i <= 5; i++)
(
​//inner loop for the pattern of 0 and 1 in each row for (j = 1; j<= i ; j++)
(
if (j % 2 ==0)
(
System.out.print(0);
)
else
(
System.out.print(1);
)
)
System.out.println();
)
)
)

lähtö:

Yllä olevassa esimerkissä binaarikuvion tulostamiseksi silmukan 'i' ulkoista käytetään rivien kokonaismäärään ja silmukan 'j' sisäistä käytetään iteroimaan ulompaan silmukkaan 'i', koska 1. rivillä tarvitsemme 1 arvon, 2. rivillä tarvitsemme 2 arvoa ja niin edelleen. Jos ja muita lauseita käytetään vaihtoehtoisten arvojen 0 ja 1 tulostamiseen, oletetaan, että ensimmäistä kertaa i = 1, j = 1 ja 1% 2! = 0, sitten 1 tulostetaan ja suorittaminen siirtyy sisäsilmukka.

Esimerkki 11: Ohjelma toistuvien aakkoskuvioiden tulostamiseksi.

Koodi:

public class AlphabetReverseOrder
(
public static void main(String() args)
(
int i, j, k;
//outer loop for the total rows which is 5 in this case for (i = 0 ; i<=5; i++)
(
int ch= 65;
//inner loop for the pattern of alphabets in till 'i' loop for (j = 0; j <=i ; j++)
(
System.out.print((char) (ch+j) + " ");
)
//inner loop for the pattern of alphabets in reverse order from 'i' loop for (k= i-1; k >=0; k--)
(
System.out.print((char) (ch+k) + " ");
)
System.out.println();
)
)
)

lähtö:

Yllä olevassa esimerkissä, jos tarkkailemme kutakin kuvio riviä, meidän on tulostettava aakkoset ensin kasvavassa järjestyksessä, ts. AB ja sitten käänteisessä järjestyksessä, ts. AB A. Tätä varten tarvitsemme 3 silmukkaa, ensimmäinen silmukka rivien kokonaismäärälle. 2. silmukka tulostaa aakkoset kasvavassa järjestyksessä, sitten kolmas silmukalle, joka pysyy ulkoisen 'i' -silmukan sisällä ja tulostaa aakkoset samalla rivillä, mutta käänteisessä järjestyksessä 'j' -silmukkaan.

johtopäätös

Yllä oleva esimerkki ja niiden selitykset osoittavat selvästi, kuinka sellaiset kuviot tehdään Java-ohjelmassa. Vaikka nämä kuviot näyttävät olevan vaikeita alussa, mutta tarkkailemalla niitä syvästi siitä, kuinka kuvion toisto tapahtuu yhdessä rivissä ja kuinka monta silmukkaa tulisi käyttää, on helppo tehdä tämä käytännössä. Nykyään myös suurten yritysten haastatteluissa ehdokkaita pyydetään kirjoittamaan eri vaikeustasoisten mallien logiikka. Koska tämä kuvion teko näyttää yksilön loogisen ja ohjelmoinnin perustiedot.

Suositeltava artikkeli

Tämä on opas Java-malleihin. Tässä keskustellaan Java-mallien johdannosta ja esimerkkeistä erilaisista kuvioista sekä tuotosta. Voit myös käydä läpi muiden ehdotettujen artikkeleidemme saadaksesi lisätietoja -

  1. Tähtikuviot Java
  2. Kehykset Java
  3. Asettelu Java-tilassa
  4. Johdatus PHP: n malleihin
  5. Kuviot JavaScript-esimerkissä