Увод у обрасце у Јави

У чланку Обрасци у Јави, пре него што научите било који програмски језик на Јави и зароните дубоко у напредне концепте, врло је важно и најважније да разумете рад петље. Иако постоје 3 врсте петљи које су за, док и петље. Свака петља се користи у складу са одређеном ситуацијом програма, јер се мало разликују једна од друге. Да би се користиле различите петље потребна је одређена логика програмирања и у ту сврху се програмерима даје пракса узорака јер укључује употребу логичке и закључне моћи. То може бити штампање геометријских фигура (попут троугла, квадрата итд.), Пирамида, кутија у различитим узорцима звезда, бројева, стилова знакова на екрану конзоле. Формат или основна синтакса петље могу се разликовати од једног програмског језика до другог, али општа логика за штампање ових образаца остаје иста.

Пример обрасца у Јави

Да разумемо како цртати узорке на Јави кроз неке примере

Пример 1: Штампање половине пирамиде помоћу бројева.

Шифра:

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();
)
)
)

Излаз:

У горњем примеру, за штампање узорка потребне су само 2 основне петље, прва за петљу је број редова. У нашем случају дефинисали смо редове, тј. 5, у супротном такође можемо узети корисников унос и спремити га у променљиву. Унутрашња петља је да се бројеви исписују у одређеном реду. Након довршетка 1 реда или краја 'ј' петље, линија се мења помоћу принтлн ().

Пример 2: Штампање стрелице бројева.

Шифра:

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();
)
)
)

Излаз:

У горњем примеру морамо стрелицу поделити на две половине и употријебити 2 петље за сваку половину. У првој половини броја редова била би почетна вредност задата за редове, док је за доњи део реда број 1 мањи од почетне вредности. Унутрашње петље за обе половине користе се за понављање кроз сваки ред према спољној петљи.

Пример 3: Штампање пуне пирамиде помоћу звезда (*).

Шифра:

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();
)
)
)

Излаз:

У горњем примеру треба да урадимо 3 ствари, тј. Имајући на уму укупан број редова за штампање пирамиде за коју прва петља ради од променљиве од 1 до реда. Друго, прво морамо исписати размаке у пирамиди, а затим образац (*) после размака. За ову другу и трећу се користе петље које се налазе унутар спољне петље 'и'.

Пример 4: Штампање половине обрнуте пирамиде коришћењем бројева.

Шифра:

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();
)
)
)

Излаз:

Једноставна половина пирамида је једноставна јер требамо обрадити бројеве, * или знакове које исписујемо, али за обрнуту пирамиду прво морамо исписати размаке, а након тога узорак који је (*) у нашем случају. Тако се 3 за петље користе слично као у случају пуне пирамиде.

Пример 5: Штампање половних пирамида помоћу абецеде.

Шифра:

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();
)
)
)

Излаз:

Пирамида се штампа истом логиком као и горњи пример користећи 2 за петље, један за број редова и други за штампање знакова у одређеном реду. Али главна ствар коју треба напоменути је руковање подацима са знаковима. 'А' у Јави има нумеричку вредност 65, тако да се сва математичка логика изводи помоћу нумеричке вредности абецеде и на крају се штампа у облику слова.

Пример 6: Образац штампања алфабета.

Шифра:

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();
)
)
)

Излаз:

Основни образац који слиједи да се бави знаковном вриједношћу и 2 за петље у горњем примјеру сличан је примјеру 5, а разлика је у томе што је једноставна логика која се користи за испис жељеног узорка.

Пример 7: Штампање квадрата помоћу звезда (*).

Шифра:

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();
)
)
)

Излаз:

За штампање квадрата потребна нам је дужина и ширина, тј. Обе стране квадрата треба да буду исте, што је у нашем случају 5. Дакле, први за петљу користи се за дужину или број редова у квадрату, а унутрашњи за петљу се користи за ширину квадрата, тј. 5 звездица у једном реду.

Пример 8: Штампање правоугаоника помоћу звезда (*).

Шифра:

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();
)
)
)

Излаз:

Основна логика штампања правоугаоника (*) иста је као и штампање квадрата, једина разлика је различита дужина и ширина правоугаоника. Овде је 'и' петља за дужину правоугаоника, а унутрашња 'ј' петља је за ширину петље. У нашем програму се узима као константна вредност, можемо тражити од корисника и сместити их у засебне променљиве.

Пример 9: Штампање дијаманта помоћу звезда.

Штампање дијаманта на Јави је врло једноставан процес. То укључује штампање 2 пирамиде, једну у смеру према горе и другу у обрнутом смеру. У основи, петље морамо да користимо на исти начин на који радимо кодирање за штампање две одвојене пирамиде.

Шифра:

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();
)
)
)

У горњем примјеру примјењује се готово иста логика за стварање обје пирамиде, једне у смјеру према горе, а друге у обрнутом смјеру. Прво за петљу је број линија или редова у узорку, а друге две петље су за размаке и звезде (*) у обрасцу.

Излаз:

Пример 10: Штампање бинарних бројева у формату степеница.

Шифра:

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();
)
)
)

Излаз:

У горњем примеру, за штампање бинарног узорка, спољни за петљу 'и' користи се за укупан број редова, а унутрашњи за петљу 'ј' да се пребаци до спољне петље 'и', јер за за први ред треба нам 1 вредност, за други ред су нам потребне 2 вредности и тако даље. Ако се и други искази користе за испис алтернативне вредности 0 и 1. Претпоставимо да први пут и = 1, ј = 1 и 1% 2! = 0, тада се штампа 1 и извршење ће се померити ван унутрашња петља.

Пример 11: Програм за штампање понављајућег узорка абецеде.

Шифра:

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();
)
)
)

Излаз:

У горњем примјеру, ако посматрамо сваки ред узорка, прво морамо штампати абецеду у растућем редоследу, тј. АБ, а затим обрнутим редоследом, тј. АБ А. За то су нам потребне 3 петље, прва за петље за укупни број редова. Друго за петљу за штампање абецеда у све већем редоследу, а затим трећа за петљу која остаје унутар спољне петље „и“ и штампа абецеде у истој линији, али обрнутим редоследом „ј“ петље.

Закључак

Горњи пример и њихова објашњења јасно показују како направити такве обрасце у Јави. Иако су ови обрасци у старту тешки, али их посматрамо дубоко како се понавља понављање узорка у једном реду и према томе колико петљи треба да се користи, лако је поступити по том питању. Данас, такође у интервјуима великих компанија, кандидати се траже да напишу логику образаца различитих нивоа тежине. Због тога што ова обрада показује основна логичка и програмска знања појединца.

Препоручени чланак

Ово је водич за обрасце у Јави. Овде смо расправљали о Уводу у узорке на Јави и примерима различитих образаца заједно са резултатима. Можете и да прођете кроз друге наше предложене чланке да бисте сазнали више -

  1. Стар Паттернс на Јави
  2. Оквири у Јави
  3. Изглед у Јави
  4. Увод у обрасце у ПХП-у
  5. Обрасци у ЈаваСцрипт-у са примерима

Категорија: