0% found this document useful (0 votes)
5 views22 pages

Computer Application Assignment

The document contains multiple C programs that demonstrate various algorithms and functionalities, including finding the sum of prime numbers, merging sorted arrays, finding the maximum and second largest elements in an array, reversing a number, performing matrix multiplication, implementing binary search, calculating the sum of digits, generating Floyd's triangle, rotating an array, finding common elements between arrays, checking for palindromes, determining Fibonacci numbers, and finding the greatest common divisor using the Euclidean algorithm.

Uploaded by

hamidhrizvi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views22 pages

Computer Application Assignment

The document contains multiple C programs that demonstrate various algorithms and functionalities, including finding the sum of prime numbers, merging sorted arrays, finding the maximum and second largest elements in an array, reversing a number, performing matrix multiplication, implementing binary search, calculating the sum of digits, generating Floyd's triangle, rotating an array, finding common elements between arrays, checking for palindromes, determining Fibonacci numbers, and finding the greatest common divisor using the Euclidean algorithm.

Uploaded by

hamidhrizvi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 22

Write a program to find the sum of prime numbers with in a range C program

INPUT:
#include <stdio.h>
#include <stdbool.h>

// Function to check if a number is prime


bool isPrime(int num) {
if (num <= 1)
return false;
for (int i = 2; i * i <= num; i++) {
if (num % i == 0)
return false;
}
return true;
}

// Main function
int main() {
int lower, upper, sum = 0;

// Input the range


printf("Enter the lower limit of the range: ");
scanf("%d", &lower);
printf("Enter the upper limit of the range: ");
scanf("%d", &upper);

// Find and sum the prime numbers


for (int i = lower; i <= upper; i++) {
if (isPrime(i)) {
sum += i;
}
}

// Output the result


printf("Sum of prime numbers between %d and %d is: %d\n", lower, upper, sum);

return 0;
}
OUTPUT:
Create a program to merge two sorted arrays into one sorted array

INPUT:

#include <stdio.h>

void mergeSortedArrays(int a[], int n, int b[], int m, int result[]) {


int i = 0, j = 0, k = 0;

// Merge elements until one array is finished


while (i < n && j < m) {
if (a[i] < b[j]) {
result[k++] = a[i++];
} else {
result[k++] = b[j++];
}
}

// Copy remaining elements from array a


while (i < n) {
result[k++] = a[i++];
}

// Copy remaining elements from array b


while (j < m) {
result[k++] = b[j++];
}
}

int main() {
int a[100], b[100], result[200];
int n, m;

// Input first sorted array


printf("Enter number of elements in first sorted array: ");
scanf("%d", &n);
printf("Enter %d sorted elements:\n", n);
for (int i = 0; i < n; i++) {
scanf("%d", &a[i]);
}

// Input second sorted array


printf("Enter number of elements in second sorted array: ");
scanf("%d", &m);
printf("Enter %d sorted elements:\n", m);
for (int i = 0; i < m; i++) {
scanf("%d", &b[i]);
}

// Merge arrays
mergeSortedArrays(a, n, b, m, result);

// Output merged sorted array


printf("Merged sorted array:\n");
for (int i = 0; i < n + m; i++) {
printf("%d ", result[i]);
}
printf("\n");

return 0;
}
OUTPUT:
Write a program to find the maximum element as an array without using the
built-in function
INPUT:
#include <stdio.h>

int main() {
int arr[100], n, max;

// Input array size


printf("Enter number of elements in the array: ");
scanf("%d", &n);

// Input array elements


printf("Enter %d elements:\n", n);
for (int i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}

// Assume first element is the maximum


max = arr[0];

// Loop through the array to find the maximum


for (int i = 1; i < n; i++) {
if (arr[i] > max) {
max = arr[i];
}
}

// Output the maximum element


printf("The maximum element in the array is: %d\n", max);

return 0;
}
OUTPUT:
Draw a program to find the second largest number in an array of integers
INPUT:
#include <stdio.h>

int main() {
int arr[100], n;
int first, second;

// Input size
printf("Enter number of elements in the array: ");
scanf("%d", &n);

// At least two elements required


if (n < 2) {
printf("Array must contain at least two elements.\n");
return 1;
}

// Input elements
printf("Enter %d elements:\n", n);
for (int i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}

// Initialize first and second


first = second = -2147483648; // Minimum possible int

for (int i = 0; i < n; i++) {


if (arr[i] > first) {
second = first;
first = arr[i];
} else if (arr[i] > second && arr[i] != first) {
second = arr[i];
}
}

// Check if second largest was found


if (second == -2147483648) {
printf("There is no second largest element (all elements may be equal).\n");
} else {
printf("The second largest element is: %d\n", second);
}

return 0;
}
OUTPUT:
Create a program to find the reverse of a number using a while loop
INPUT:
#include <stdio.h>

int main() {
int num, reversed = 0, remainder;

// Input number
printf("Enter an integer: ");
scanf("%d", &num);

// Reverse the number using while loop


while (num != 0) {
remainder = num % 10; // Get last digit
reversed = reversed * 10 + remainder; // Append digit
num = num / 10; // Remove last digit
}

// Output the result


printf("Reversed number is: %d\n", reversed);

return 0;
}
OUTPUT:
Write a program to implement matrix multiplication for two 3×3 matrices

INPUT:
#include <stdio.h>

int main() {
int A[3][3], B[3][3], result[3][3];
int i, j, k;

// Input first matrix A


printf("Enter elements of first 3x3 matrix (A):\n");
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
printf("A[%d][%d]: ", i, j);
scanf("%d", &A[i][j]);
}
}

// Input second matrix B


printf("\nEnter elements of second 3x3 matrix (B):\n");
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
printf("B[%d][%d]: ", i, j);
scanf("%d", &B[i][j]);
}
}

// Initialize result matrix to 0


for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
result[i][j] = 0;
}
}

// Perform matrix multiplication: result = A * B


for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
for (k = 0; k < 3; k++) {
result[i][j] += A[i][k] * B[k][j];
}
}
}

// Display result matrix


printf("\nResultant Matrix (A × B):\n");
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
printf("%5d", result[i][j]);
}
printf("\n");
}

return 0;
}
OUTPUT:
Create a program to implement binary search on a sorted array

INPUT:
#include <stdio.h>

int binarySearch(int arr[], int size, int target) {


int low = 0, high = size - 1, mid;

while (low <= high) {


mid = (low + high) / 2;

if (arr[mid] == target)
return mid; // Target found at index mid
else if (arr[mid] < target)
low = mid + 1; // Search right half
else
high = mid - 1; // Search left half
}

return -1; // Target not found


}

int main() {
int arr[100], n, target, result;

// Input size of array


printf("Enter number of elements in the sorted array: ");
scanf("%d", &n);

// Input sorted array elements


printf("Enter %d sorted elements:\n", n);
for (int i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}

// Input target to search


printf("Enter the number to search: ");
scanf("%d", &target);

// Perform binary search


result = binarySearch(arr, n, target);

// Output result
if (result != -1)
printf("Element %d found at index %d (position %d).\n", target, result, result + 1);
else
printf("Element %d not found in the array.\n", target);

return 0;
}
OUTPUT:
Write a program to calculate the sum of digits of a number using a
function C language
INPUT:
#include <stdio.h>

// Function to calculate sum of digits


int sumOfDigits(int num) {
int sum = 0;

while (num != 0) {
sum += num % 10; // Get last digit and add to sum
num /= 10; // Remove last digit
}

return sum;
}

int main() {
int number;

// Input from user


printf("Enter a number: ");
scanf("%d", &number);

// Call the function and print the result


int result = sumOfDigits(number);
printf("Sum of digits: %d\n", result);

return 0;
}
OUTPUT:
Develop a program to print a floyd triangle pattern
INPUT:
#include <stdio.h>

int main() {
int rows, number = 1;

// Input number of rows


printf("Enter the number of rows: ");
scanf("%d", &rows);

// Generate Floyd's Triangle


for (int i = 1; i <= rows; i++) {
for (int j = 1; j <= i; j++) {
printf("%d ", number);
number++;
}
printf("\n"); // Move to next line after each row
}

return 0;
}
OUTPUT:
Write a program to rotate element of an array to the left by N position C
language
INPUT:
#include <stdio.h>

// Function to rotate array to the left by n positions


void rotateLeft(int arr[], int size, int n) {
n = n % size; // Handle cases when n > size
int temp[n];

// Step 1: Store first n elements in temp


for (int i = 0; i < n; i++) {
temp[i] = arr[i];
}

// Step 2: Shift remaining elements to the left


for (int i = 0; i < size - n; i++) {
arr[i] = arr[i + n];
}

// Step 3: Copy temp elements to the end


for (int i = 0; i < n; i++) {
arr[size - n + i] = temp[i];
}
}

// Function to print the array


void printArray(int arr[], int size) {
for (int i = 0; i < size; i++) {
printf("%d ", arr[i]);
}
printf("\n");
}

// Main function
int main() {
int arr[100], size, n;

// Input array size


printf("Enter the size of the array: ");
scanf("%d", &size);

// Input array elements


printf("Enter %d elements: ", size);
for (int i = 0; i < size; i++) {
scanf("%d", &arr[i]);
}
// Input number of positions to rotate
printf("Enter the number of positions to rotate left: ");
scanf("%d", &n);

// Rotate and print


rotateLeft(arr, size, n);

printf("Array after left rotation: ");


printArray(arr, size);

return 0;
}
OUTPUT:
Create a program to find a common element between two arra

INPUT:

#include <stdio.h>

int main() {

int a[100], b[100], sizeA, sizeB;

int i, j, found;

// Input first array

printf("Enter size of first array: ");

scanf("%d", &sizeA);

printf("Enter %d elements for first array: ", sizeA);

for (i = 0; i < sizeA; i++) {

scanf("%d", &a[i]);

// Input second array

printf("Enter size of second array: ");

scanf("%d", &sizeB);

printf("Enter %d elements for second array: ", sizeB);

for (i = 0; i < sizeB; i++) {

scanf("%d", &b[i]);

printf("Common elements: ");


for (i = 0; i < sizeA; i++) {

for (j = 0; j < sizeB; j++) {

if (a[i] == b[j]) {

// Check if this common element was already printed

found = 0;

for (int k = 0; k < i; k++) {

if (a[k] == a[i]) {

found = 1;

break;

if (!found) {

printf("%d ", a[i]);

break;

return 0;

OUTPUT:
Write a program to check if a string is a valid palindrome without using extra
space

INPUT:

#include <stdio.h>

int main() {

char str[100];

int start = 0, end, isPalindrome = 1;

// Input string

printf("Enter a string: ");

scanf("%s", str);

// Find the length manually

for (end = 0; str[end] != '\0'; end++);

end = end - 1; // Adjust to last character index

// Compare characters from both ends

while (start < end) {

if (str[start] != str[end]) {

isPalindrome = 0;

break;

start++;

end--;

}
// Output result

if (isPalindrome) {

printf("The string is a palindrome.\n");

} else {

printf("The string is not a palindrome.\n");

return 0;

OUTPUT:
Develop a program to check if a number is Fibonacci using recursion

INPUT:
#include <stdio.h>

// Recursive function to get the nth Fibonacci number


int fibonacci(int n) {
if (n == 0) return 0;
if (n == 1) return 1;
return fibonacci(n - 1) + fibonacci(n - 2);
}

// Function to check if a number is in the Fibonacci sequence


int isFibonacci(int num, int i) {
int fib = fibonacci(i);
if (fib == num)
return 1; // Number found in Fibonacci sequence
else if (fib > num)
return 0; // Number not found
else
return isFibonacci(num, i + 1); // Check next Fibonacci number
}

int main() {
int num;

printf("Enter a number: ");


scanf("%d", &num);

if (isFibonacci(num, 0))
printf("%d is a Fibonacci number.\n", num);
else
printf("%d is not a Fibonacci number.\n", num);

return 0;
}
OUTPUT:
Write a program to find the largest common divisor using the Euclidean
algorithm
INPUT:
#include <stdio.h>

// Recursive function to find GCD using Euclidean algorithm


int gcd(int a, int b) {
if (b == 0)
return a;
else
return gcd(b, a % b);
}

int main() {
int num1, num2;

// Input two numbers


printf("Enter two integers: ");
scanf("%d %d", &num1, &num2);

// Compute and print GCD


int result = gcd(num1, num2);
printf("Greatest Common Divisor (GCD) of %d and %d is: %d\n", num1, num2, result);

return 0;
}
OUTPUT:
Write a program to convert decimal number to binary using recursion
INPUT:
#include <stdio.h>

// Recursive function to print binary representation


void decimalToBinary(int n) {
if (n == 0)
return;

decimalToBinary(n / 2); // Recursive call


printf("%d", n % 2); // Print remainder
}

int main() {
int num;

// Input decimal number


printf("Enter a decimal number: ");
scanf("%d", &num);

if (num == 0) {
printf("Binary: 0\n");
} else {
printf("Binary: ");
decimalToBinary(num);
printf("\n");
}

return 0;
}
OUTPUT:

You might also like