Refer this for preparing yourself on how to write java program to print patterns (Note: NOT Design Patterns)
Start Pattern
Number Pattern
Star Pattern
(max. length is 5)
public class StarPatternApp {
public static void main(String[] args) {
StarPatternApp.printPattern("*", 5);
}
private static void printPattern(String pattern, int size) {
StringBuilder patternBuilder = new StringBuilder();
for (int i = 1; i <= size; i++) {
patternBuilder.append(pattern);
System.out.println(patternBuilder.toString());
}
for (int i = size; i > 1; i--) {
System.out.println(patternBuilder.deleteCharAt(i - 1).toString());
}
}
private static String addSpaceAndPrint(int spaceCount, String printStr) {
StringBuilder sb = new StringBuilder();
for (int i = 0; i < spaceCount; i++) {
sb.append("" + i);
}
sb.append(printStr);
return sb.toString();
}
}
Number Pattern
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class NumberReducingPatternApp {
public static void main(String[] args) {
int n = 5;
int length = 1;
List<Integer> numberPatternItems = new ArrayList<>();
for(int i=n; i>0;i--){
numberPatternItems.add(listRangeInReverse(n,length));
length++;
}
//This line actually reverst the entire list, so that the expected number pattern is printed
Collections.reverse(numberPatternItems);
for(Integer x: numberPatternItems){
System.out.println(x);
}
}
private static Integer listRangeInReverse(int k, int count) {
StringBuilder sb = new StringBuilder();
for (int c = k; c >=count;c--){
sb.append(c);
}
return Integer.parseInt(sb.toString());
}
}
Just a Note
There are N-ways of writing the above codes, please feel free to explore by playing around it.
Please disable your adblocker or whitelist this site! We Provide Free content and in return, all we ask is to allow serving Ads.