Skip to main content

Featured

C Program to Check Prime Number Using Efficient Logic

  Introduction A prime number is a number that has exactly two distinct positive divisors: 1 and itself. In this program, we check whether a given number is prime or not using a simple and efficient logic. This type of program is commonly used in mathematics, competitive programming, and basic algorithm learning for beginners in C programming. Problem Statement The task is to write a C program that determines whether a given integer is a prime number or not. The program takes a single integer input from the user and analyzes its divisibility. If the number has no divisors other than 1 and itself, it should be identified as a prime number; otherwise, it is not prime. This problem is important in number theory and has practical relevance in areas such as cryptography, data validation, and algorithm design.  Algorithm / Logic Explanation To check whether a number is prime, we need to verify that it is not divisible by any number other than 1 and itself. The algorithm follows a si...

Concentric Square Number Pattern In C

๐Ÿ”ข C Program: Concentric Square Number Pattern

#include <stdio.h>

int main() {
    int n;
    printf("Enter the number of layers: ");
    scanf("%d", &n);

    int size = 2 * n - 1;

    for (int i = 0; i < size; i++) {
        for (int j = 0; j < size; j++) {
            int min = i;
            if (j < min) min = j;
            if (size - 1 - i < min) min = size - 1 - i;
            if (size - 1 - j < min) min = size - 1 - j;

            printf("%d ", n - min);
        }
        printf("\n");
    }

    return 0;
}
  

๐Ÿ“ Explanation:

This C program prints a concentric number pattern in the form of a square matrix. Each layer of the square is filled with a decreasing number from the outermost layer to the center.

  • Input: The user enters the number of layers (n).
  • Matrix size: It is calculated using 2 * n - 1. This ensures we have n layers on each side (top, bottom, left, right).
  • Two nested loops: These go through each cell (i, j) of the matrix.
  • Finding the minimum distance: We calculate the minimum number of steps required to reach the border from cell (i, j). This is done using 4 comparisons:
    • i → distance from top
    • j → distance from left
    • size - 1 - i → distance from bottom
    • size - 1 - j → distance from right
  • Print value: The value to print is n - min which gives the correct number for that concentric layer.

๐Ÿ’ก Sample Output:

Enter the number of layers: 4

4 4 4 4 4 4 4
4 3 3 3 3 3 4
4 3 2 2 2 3 4
4 3 2 1 2 3 4
4 3 2 2 2 3 4
4 3 3 3 3 3 4
4 4 4 4 4 4 4
  

Comments

Popular Posts

๐ŸŒ™