Malliohjelmat sisään JavaTulosta tähti, pyramidi ja numero

⚡ Älykäs yhteenveto

Kuvio-ohjelmat Java tulostaa tähtiä, numeroita tai kirjaimia kiinteässä muodossa, ja jokainen niistä kootaan sisäkkäisistä silmukoista, joissa ulompi silmukka laskee rivejä ja sisempi silmukka sijoittaa välilyönnit ja merkit.

  • 🔘 Määritelmä: Kuvioiden tulostus järjestää symbolit, numerot tai kirjaimet määriteltyyn muotoon konsolissa.
  • ☑️ Luokat: On olemassa kolme ryhmää: tähtikuviot, numerokuviot ja merkkikuviot.
  • Rakenne: Ulompi silmukka ohjaa rivejä, kun taas sisempi silmukka käsittelee välilyöntejä ja tulostettuja merkkejä.
  • 🧪 Esimerkkejä: Puolikolmio-, hiekkalasi-, vinoneliö-, vastakkaiskolmio- ja kirjainpyramidiohjelmat käsitellään.
  • 🛠️ Tekniikka: Hahmomuodot luovat kokonaislukusiemenen char-kirjaimelle alkaen luvusta 65 A-kirjaimelle.
  • 📊 Hyöty: Kuvioiden kirjoittaminen terävöittää silmukoiden hallintaa, indeksien aritmetiikkaa ja harjoitusharjoituksia haastatteluja varten.

Malliohjelmat sisään Java tähti-, pyramidi- ja numeromuotojen tulostamiseen

Kuviotulostusohjelmat ovat kuvioita tai symboleja, jotka sisältävät kirjaimia tai muita merkkejä tietyssä muodossa. Java kuviokoodaus lisää ohjelmoijien logiikkaa, mikä auttaa heitä tulemaan hyviksi ohjelmoijiksi.

Jokainen esimerkki tarvitsee vain sisäkkäisiä silmukoita ja perusasioita Java syntaksi.

Kuvioiden luokat

Voimme piirtää lukemattomia kuvioita Java, ja kaikki kuviot voidaan toteuttaa kolmella eri tavalla.

Tunnistamiseen käytetään kolmea pääluokkaa Java malliohjelmat.

  • Tähtikuvio: In Java tähtikuvion ohjelmia, tähtikuviot ovat sarja tähdet (*) käytetään erilaisten muotojen, kuten pyramiditähtikuvio-ohjelman, tiiviin kolmion, vasemman kolmion, vinoneliön muotoisen, neliön ja monien muiden kuvioiden luomiseen Java.
  • Numeromalli: Virtauksenohjauslausekkeiden harjoitteluun toinen kuviotyyppi on numerokuvio-ohjelmat JavaNumero-ohjelmat koostuvat numeroista/laskennasta. Useimmiten asetamme arvon 'i', joka on silmukkaiteraattori numeroiden luomiseksi kuvio-ohjelmoinnissa. Pienin silmukoiden määrä numero-ohjelmalle on myös kaksi. Numero-ohjelma kohdassa Java toimii myös rivi- ja sarakejärjestelmässä.
  • Hahmomalli: Merkkimalliohjelmointi koostuu merkeistä, jotka ovat Englannin aakkoset. Tämä on toinen tapa parantaa koodaustaitojasi, mutta tässä käsitellään merkkejä, emme numeroita tai tähtiä. Kuviossa voi olla sama merkki koko kuviossa tai siinä voi olla erilaisia ​​merkkejä käyttämäsi logiikan mukaan.

Alla oleva taulukko näyttää, mitä muutoksia luokkien välillä on.

Luokka Painettu yksikkö Mistä tulostettu arvo tulee Näytetulostus
Tähtikuvio tähtimerkki Kiinteä symboli, joten vain silmukan rajat muuttuvat * * *
Numerokuvio Digit Silmukan iteraattori i tai j tulostuu suoraan 1 2 3
Merkkikuvio Kirje Kokonaishyötyinen siemen, joka on valettu hiileksi alkaen 65:stä A:lle ABC

Kaikissa kolmessa tapauksessa ulompi silmukka laskee rivit, sisempi silmukka tulostaa tasaavat välilyönnit ja toinen tulostaa näkyvät merkit. Vain tulostettu yksikkö muuttuu.

Samat silmukkataidot ohjaavat muita klassisia harjoituksia, kuten valintalajittelu, lisäyslaji, ja Armstrongin luku ohjelma.

Tähtikuviot tulevat ensin, koska symboli ei koskaan muutu ja vain silmukan rajat ovat tärkeitä.

Star Patterns -ohjelmat sisään Java

Tähtikuviot tulostavat konsoliin tähden, kuvion muoto riippuu täysin kirjoittamastasi koodista.

Puolivasemman kolmion tähtikuvioohjelma:

Alla oleva ohjelma tulostaa tämän puolikkaan vasemman kolmion:

Konsolin tuloste, jossa näkyy kuuden rivin yli puolikas vasemmalle päin oleva tähtikolmio

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 selitys:

  • Julistaa int i, int j. Ilmoita ja alusta rivimuuttuja an rivissä.
  • i on iteraattori ulommalle "for"-silmukalle ja j on iteraattori sisäiselle "for"-silmukalle, "rivi" sisältää joukon rivejä, jotka pyramidissa tulisi olla.
  • Sisäkkäisissä forissa ulompi "for" edustaa rivejä ja sisempi "for" edustaa sarakkeita.
  • Alusta ulommassa 'for':ssa iteraattori 'i' 0:lla, aseta ehto i< riville ja lisää i:tä.
  • Nyt sisempi 'for'-silmukka alustetaan 2*:lla (rivi-i) ja dekrementeillä.
  • Sisäkkäinen "for" tulostaa tilaa konsolin näytölle.
  • Sisäkkäisen 'for':n rungon ulkopuolelle sijoitetaan toinen 'for'-silmukka. tämä "sitä varten" tulostaa tähti sen jälkeen, kun sisäkkäinen "for" on suoritettu. Se kiertää kunnes j<=i.

Hiekkalasitähtikuvioohjelma:

Kaksi päällekkäin asetettua pyramidia tuottaa tämän hiekkalasin:

Konsolin tuloste, jossa näkyy kahdesta tähtipyramidista rakennettu hiekkalasi

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 selitys:

  • Code alkaa julkinen staattinen tyhjyys tärkein, int rivit määrittää hiekkalasin sisältämien rivien määrän.
  • On olemassa kaksi sisäkkäistä "for" -merkkiä, joista ensimmäinen näyttää alaspäin suuntautuvan pyramidin ja toinen ylöspäin suuntautuvan pyramidin.
  • Sisäkkäisissä forissa ulompi "for" edustaa rivejä ja sisempi "for" edustaa sarakkeita.
  • Uloimmissa 'for'-silmukaissa i<= riviin 1 asti, sisempi 'for'-silmukoissa i asti. tulostusjärjestelmä tulostaa tilan konsoliin.
  • Toinen sisäsilmukka tulostaa konsoliin tähden ja välilyönnin.
  • Kun ensimmäinen sisäsilmukka suoritetaan kokonaan kohdassa i = 0, sen jälkeen toinen sisäsilmukka suoritetaan kokonaan.
  • Sitten ulompi silmukka kasvoi. Tämä sykli jatkuu, kunnes tila muuttuu vääräksi.
  • Toinen sisäkkäinen silmukka näyttää ylöspäin suuntautuvan pyramidin muuttaen vain ensimmäisen sisäkkäisen silmukan ulomman silmukan alustusta ja tilaa.
  • Se näyttää ylöspäin suuntautuvan pyramidin. Sekä alas- että ylöspäin suuntautuvat pyramidit tekevät hiekkalasinen tähtikuvio.

Timantin muotoinen tähtikuvioohjelma:

Ylöspäin ja alaspäin suuntautuva pyramidi antavat tälle timantille:

Konsolin tuloste, jossa näkyy kahden pyramidin muodostama tähtien timantti

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 selitys:

  • In timanttitähtikuvio, 'n' on rivien lukumäärä, jotka on tallennettu n-1 tilaan_0.
  • Sisäkkäisissä forissa ulompi "for" edustaa rivejä ja sisempi "for" edustaa sarakkeita.
  • Ensimmäinen sisäkkäinen "for" näyttää ylöspäin suuntautuvan pyramidin. Ulompi 'for'-silmukat n asti ja sisempi for-silmukat till space_0 sisempi silmukka näyttää tilaa konsolissa.
  • On toinenkin sisäinen "for" joka kiertää kunnes i<= 2 * j - 1 ja näyttää tämän sisäisen "for" -tulostusjärjestelmän ulkopuolella olevan tähden. Tämä sisäkkäinen silmukka tulostaa ylemmän pyramidin.
  • Toinen sisäkkäinen "for" näyttää alaspäin suuntautuvan pyramidin. Ulommat "for" -silmukat kunnes i<=n-1, ensimmäinen sisäinen "for" tulostaa tilaa ja toinen sisempi tulostaa tähden.
  • Tulosta sisemmän "for" -kohdan ulkopuolella. sekä ylöspäin että alaspäin suuntautuva pyramidi tekee timanttikuvion.

Suorakulmaisen kolmion tähtikuvion tilakuvioohjelma:

j:n ja i:n moduuli lisää nämä aukot:

Konsolin tuloste, joka näyttää tähtien muodostaman suorakulmaisen kolmion, jonka välistys perustuu moduuliin

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 selitys:

  • In yläpuolella oleva malli koodi, ulompi "for" huolehtii rivien lukumäärästä ja sisempi "for" ylläpitää sarakkeita.
  • Kun ulompi "for" on 1, mikä tarkoittaa ensimmäistä riviä, ja kun sisempi "for" on 1, se tarkoittaa, että se on ensimmäinen sarake.
  • Ilmoita sisäisen 'for':n sisällä muuttuja nimeltä mid ja tallenna j/i:n loppuosa. Tämä jakaa i- ja j-arvot moduulin saamiseksi.
  • Joten, jos moduuli on 0, näytä tähti ja välilyönti; muussa tapauksessa näytä vain tähti. Tulosta viiva sisemmän for-merkin ulkopuolelle.

Moderni Java toteaa: alkaen Java 11 avaruussilmukat voidaan korvata System.out.print(" ".repeat(n))ja jokaisen rivin rakentaminen a:han StringBuilder ennen yhtä println() kutsu toimii nopeammin. Alkuperäinen koodi säilytetään kirjoitetun kaltaisena, koska se näyttää aritmeettiset laskutoimitukset eksplisiittisesti.

Vaihtaaping Silmukkalaskurin tähti muuttaa jokaisen tähtimuodon numeromuodoksi.

Numeeriset kuviot -ohjelmat sisään Java

Numeeriset kuviot koostuvat numeroista; voimme piirtää monia erilaisia ​​muotoja numeerisista kuvioista.

Vastakkainen puolikolmiomalliohjelma:

Alaspäin ja sitten ylös laskeminen antaa tämän numerokolmion:

Konsolin tuloste, jossa näkyy vastakkainen puolikolmio numeroista

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 selitys:

  • Tämän kuvion piirtämiseksi käytämme kahta sisäkkäistä "for"-silmukkaa. Toinen tulostaa ensimmäisen pyramidin ja toinen näyttää toisen pyramidin.
  • Julistaa int i, int j ja int rivi_0 ja alusta rivi haluamallasi määrällä riviä. Tässä rivin arvo on 5.
  • Aseta ensimmäisen sisäkkäisen for-silmukan ulompi 'for'-silmukka, alusta i rivien lukumäärällä ja iteroi kunnes i >= ja pienennä iteraattoria. Tämä ulompi "for" käsittelee rivejä.
  • Aseta sisäiseen 'for' -ehtoon j=1 ja toista kunnes j<=i. Näytä sisemmän silmukan rungossa j-muuttuja ja välilyönti.
  • Muuta nyt toisessa sisäkkäisessä "for" -kohdassa ensimmäisen sisäkkäisen "for" -kohdan ulompi ehto. Alusta se numerolla 2 ja silmukoi kunnes rivit i<=.
  • Ja sisäsilmukka toistuu, kunnes i saavutetaan. Näyttää sitten viestin konsolissa, sama kuin ensimmäisen sisäkkäisen for-tekstin sisäsilmukassa sisäisen for prints -rivitilan rungon ulkopuolella.

Toistuva numero sarakkeessa suorakulmaisessa kolmiossa Kuvioohjelma:

Laskurin nollaaminen jokaisella rivillä toistaa numerot:

Konsolin tuloste, jossa näkyy suorakulmainen kolmio numeroista, jotka alkavat alusta kohdasta yksi jokaisella rivillä

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 selitys:

  • Ilmoita esimerkkikoodissa int i, int j, int number ja int n.
  • Alusta sitten n haluamasi rivimäärän arvolla, tässä se on 7.
  • Aloita ulomman 'for':n silmukka arvosta 0 ja toista, kunnes n saavutetaan.
  • Voit alustaa numeron silmukan sisällä tai sen ulkopuolella.
  • Toista sisäisessä 'for':ssa, kunnes j on pienempi tai yhtä suuri kuin i saavutettu. Ja näytä numero välilyönnillä.
  • Sisäisen for-tekstin rungon ulkopuolella tulosta rivitila.
  • Sisäinen "for" toistuu, kunnes sen ehto muuttuu epätosi. Kun tämä ehto muuttuu epätosi, ulompi silmukka kasvaa uudelleen ja suorittaa sisäisen 'for', kunnes ehto muuttuu epätosi.
  • Tämä menettely toistaa itseään, kunnes ulompi silmukka muuttuu epätosi.

Sama runko tulostaa kirjaimia, kun kokonaislukuinen siemen on muunnettu hiileksi.

Hahmomalliohjelmat sisään Java

Merkkikuviot koostuvat englannin aakkosista. Voimme tehdä hienoja ja mahtavia merkkikuvio-ohjelmia Java muutamia käsitellään alla.

Hahmon puolipyramidikuvioohjelma:

Kokonaislukumäärän siemenen heittäminen chariksi tulostaa seuraavat kirjaimet:

Konsolin tuloste, jossa näkyy puolipyramidi isoista kirjaimista A:sta F:ään

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 selitys:

  • Ilmoita aakkoset ja alusta se arvolla 65.
  • Ulompi aloittaa silmukan nollasta ja toistaa, kunnes i on 0 tai vähemmän.
  • For:n sisällä silmukka alkaa 0:sta ja toistuu, kunnes j on pienempi tai yhtä suuri kuin i.
  • Tulosta sitten merkki ja välilyönti tulostenäytölle.
  • Merkkien tulostamiseksi kirjoitamme aakkoset kokonaisluvusta merkkiin.
  • Kasvata aakkosia sen rungon ulkopuolella ja tulosta viiva tulosteen näytölle. (merkki) muuntaa aakkosten arvon merkiksi.

Pyramidi-/kolmiokuvio Java:

Välilyönti silmukka keskittää kirjaimet pyramidiksi:

Konsolin tuloste, jossa näkyy keskitetty isojen kirjainten pyramidi

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 selitys:

  • Tässä esimerkkikoodissa käytimme kolmea "for"-silmukkaa, joista yksi on ulompi silmukka ja kaksi silmukkaa on sisäkkäin ulomman "for"-silmukan sisällä.
  • Ulompi 'for' alkaa 0:sta ja kiertää, kunnes arvo on 8 tai pienempi.
  • Ulomman 'for':n rungossa alustimme kokonaislukutyyppisen aakkosmuuttujan arvolla 65 ja sisäkkäsimme toisen 'for'-muuttujan sen runkoon.
  • Ensimmäinen sisäinen "for" on ulomman "for"-silmukan kääntöpuoli ja sen rungossa konsolin tulostustila. Sen kehon ulkopuolella on toinen "for". Se toistuu kuin ulompi silmukka.
  • Tulosta merkki toisen sisäisen silmukan rungossa kirjoittamalla aakkoset +k ja tulosta se välilyönnillä konsoliin. Tulosta viiva toisen sisäisen 'for':n rungon ulkopuolelle.

UKK

Laske taaksepäin rivien kokonaismäärästä. Vasemmalle tasattu muoto ei tarvitse yhtään riviä, keskitetty pyramidi tarvitsee rivit vähennettynä nykyisellä rivi-indeksillä ja yllä olevassa esimerkissä käytetään 2*(rivi-i).

Tekoälyavustajat voivat verrata odotettua ja todellista konsolitekstiä rivi riviltä ja nimetä silmukan, joka on yhden virheen verran rajattu. Suorita korjattu ohjelma uudelleen itse ennen kuin luotat korjaukseen.

Kyllä. GitHub Copilot tuottaa toimivan muodon yksirivisestä kuvauksesta. Tarkista välilyöntisilmukka, koska luotu koodi usein keskittää kuvan yhden sarakkeen päähän.

Lisää reunaviivatesti sisimmän silmukan sisään. Tulosta symboli vain ensimmäiselle riville, viimeiselle riville tai ensimmäiselle ja viimeiselle sarakkeelle; tulosta välilyönnit muualle.

Kyllä. Yksi rekursiivinen metodi tulostaa rivin ja kutsuu itseään suuremmalla laskurilla, kun taas toinen hallinnoi sekvenssiä. Tuloste on identtinen, mutta silmukat välttävät ylimääräisiä pino-kehyksiä.

n-rivisen kolmion tulostaminen suorittaa karkeasti n²/2 merkkiä, joten kustannukset ovat O(n²). Tuloste itsessään kasvaa neliöllisesti, joten mikään algoritmi ei tulosta samaa lukua nopeammin.

65 on ison A:n ASCII- ja Unicode-koodin piste. 65:n muuntaminen char-muotoon antaa A:n ja 66:n muuntaminen B:ksi, joten kokonaisluvun kasvattaminen ja muuntaminen kulkevat aakkoston läpi järjestyksessä.

Ne esittelevät silmukoiden hallinnan, indeksien aritmetiikan ja kyvyn suorittaa koodia paperilla ilman erillistä kirjastoa. Hakija, joka tracYhden rivin oikein kirjoittaminen ymmärtää yleensä sisäkkäisen iteraation.

Tiivistä tämä viesti seuraavasti: