Skip to main content

πŸ“‰ Printing Patterns

One-line summary: Master nested loops and logical thinking through visual pattern printing β€” the foundation for understanding 2D array manipulation and algorithmic problem-solving.


Concept​

Pattern printing problems help develop:

  • Nested loop control β€” understanding row-column relationships
  • Mathematical thinking β€” finding formulas for positions and values
  • Logical reasoning β€” breaking complex patterns into simple rules
  • 2D visualization β€” essential for matrix and grid problems

Common patterns: stars, numbers, alphabets, geometric shapes, mathematical sequences.


Common Techniques​

Basic Triangle Pattern​

function printTriangle(n) {
for (let i = 1; i <= n; i++) {
let row = '';
for (let j = 1; j <= i; j++) {
row += '* ';
}
console.log(row);
}
}

Number Pyramid​

function numberPyramid(n) {
for (let i = 1; i <= n; i++) {
let spaces = ' '.repeat(n - i);
let numbers = '';
for (let j = 1; j <= i; j++) {
numbers += j + ' ';
}
console.log(spaces + numbers);
}
}

Diamond Pattern​

function diamond(n) {
// Upper half
for (let i = 1; i <= n; i++) {
console.log(' '.repeat(n - i) + '*'.repeat(2 * i - 1));
}
// Lower half
for (let i = n - 1; i >= 1; i--) {
console.log(' '.repeat(n - i) + '*'.repeat(2 * i - 1));
}
}

Practice Problems​

Basic Patterns (Easy)​

ProblemDifficultySolution

| Concentric Rectangle | Easy | View Solution | | Print Floyd's Triangle | Easy | View Solution | | Print Matrix Diagonal | Easy | View Solution | | Print Rectangle Pattern | Easy | View Solution | | Print X in Box | Easy | View Solution | | Star Triangle Pattern | Easy | | | Right Triangle Pattern | Easy | | | Inverted Triangle | Easy | | | Hollow Rectangle | Easy | | | Square Pattern | Easy | | | Number Triangle | Easy | | | Alphabet Triangle | Easy | | | Plus Pattern | Easy | | | Cross Pattern | Easy | | | Simple Diamond | Easy | | | Arrow Pattern | Easy | | | Checkerboard Pattern | Easy | | | Binary Pattern | Easy | | | Multiplication Table Pattern | Easy | | | Even-Odd Pattern | Easy | |

Intermediate Patterns (Medium)​

ProblemDifficultySolution
Number PyramidMedium
Diamond PatternMedium
Pascal's TriangleMedium
Butterfly PatternMedium
Zigzag PatternMedium
Spiral MatrixMedium
Heart PatternMedium
Number DiamondMedium
Alphabet PatternMedium
Hourglass PatternMedium
Rhombus PatternMedium
Wave PatternMedium
Hollow DiamondMedium
Fibonacci TriangleMedium
Prime Number PatternMedium
Matrix SpiralMedium
Sandglass PatternMedium
Hexagon PatternMedium
Star DiamondMedium
Number SpiralMedium

Advanced Patterns (Hard)​

ProblemDifficultySolution
Complex Fractal PatternHard
Sierpinski TriangleHard
Matrix Rotation PatternHard
Multi-layer DiamondHard
3D Cube PatternHard
Mandala PatternHard
Celtic Knot PatternHard
Maze PatternHard
Tessellation PatternHard
Golden Ratio SpiralHard

CodeChef Pattern Problems​

ProblemDifficultySolution
CC β€” Pattern Printing (PATTERN)Easy
CC β€” Star Pattern (STARPTR)Easy
CC β€” Number Pattern (NUMPTR)Medium
CC β€” Triangle Pattern (TRIPTR)Medium
CC β€” Diamond Design (DIAMPTR)Medium
CC β€” Complex Pattern (COMPLXPTR)Hard

Tips for Pattern Problems​

  1. Analyze the pattern first β€” identify rows, columns, and relationships
  2. Find the mathematical formula β€” express position in terms of row/column indices
  3. Handle spaces carefully β€” leading spaces often determine alignment
  4. Test with small inputs β€” verify logic with n=3 or n=4 before scaling
  5. Break complex patterns β€” divide into simpler sub-patterns

  • Matrix β€” 2D array manipulation
  • Math β€” mathematical sequences and formulas
  • Recursion β€” recursive pattern generation
  • School Basics β€” fundamental programming concepts

← Back to Home Β· Β© sparshjaswal