NPTEL Problem Solving Through Programming In C WEEK 9 Assignment July 2022

Problem-Solving-through-Programming-In-C-Week9-Programming-Assignment-Solutions

NPTEL Problem solving through Programming In C Week 9 All Programming Assignment Solutions | Swayam 2022. With the growth of Information and Communication Technology, there is a need to develop large and complex software.

ABOUT THE COURSE:

This course is aimed at enabling the students to:
  • Formulate simple algorithms for arithmetic and logical problems
  • Translate the algorithms to programs (in C language)
  • Test and execute the programs and  correct syntax and logical errors
  • Implement conditional branching, iteration and recursion
  • Decompose a problem into functions and synthesize a complete program using divide and conquer approach
  • Use arrays, pointers and structures to formulate algorithms and programs
  • Apply programming to solve matrix addition and multiplication problems and searching and sorting problems 
  • Apply programming to solve simple numerical method problems, namely rot finding of function, differentiation of function and simple integration
COURSE LAYOUT
    • Week 1 : Introduction to Problem Solving through programs, Flowcharts/Pseudo codes, the compilation process, Syntax and Semantic errors, Variables and Data Types
    • Week 2 : Arithmetic expressions, Relational Operations, Logical expressions; Introduction to Conditional Branching
    • Week 3 : Conditional Branching and Iterative Loops
    • Week 4 : Arranging things : Arrays
    • Week 5 : 2-D arrays, Character Arrays and Strings 
    • Week 6 : Basic Algorithms including Numerical Algorithms
    • Week 7 : Functions and Parameter Passing by Value
    • Week 8 : Passing Arrays to Functions, Call by Reference
    • Week 9 : Recursion
    • Week 10 : Structures and Pointers
    • Week 11 : Self-Referential Structures and Introduction to Lists
    • Week 12 : Advanced Topics

Once again, thanks for your interest in our online courses and certification. Happy learning!

Course Name : “Problem Solving through Programming In C 2022

Question : 1  Write a program to print all the locations at which a particular element (taken as input) is found in a list and also print the total number of times it occurs in the list. The location starts from 1.
For example if there are 4 elements in the array
5
6
5
7
If the element to search is 5,  then the output will be:
5 is present at location 1
5 is present at location 3
5 is present 2 times in the array.

				
					#include <stdio.h>
int main()
{
   int array[100], search, n, count = 0;
   scanf("%d", &n); 
   int c;
   for (c = 0; c < n; c++)
      scanf("%d", &array[c]);

   scanf("%d", &search);
   for (c = 0; c < n; c++)
    {
      if (array[c] == search)
      {
         printf("%d is present at location %d.\n", search, c+1);
         count++;
      }
    }
    if (count == 0)
      printf("%d is not present in the array.\n", search);
    else
      printf("%d is present %d times in the array.\n", search, count);

    return 0;
}
				
			

Course Name : “Problem Solving through Programming In C 2022

Question : 2  Write a C program to search a given element from a 1D array and display the position at which it is found by using linear search function. The index location starts from 1.

				
					#include <stdio.h>
int linear_search(int[], int, int);
int main()
{
    int array[100], search, c, n, position;

    scanf("%d", &n);
    for (c = 0; c < n; c++)
        scanf("%d", &array[c]);

    scanf("%d", &search);
    position = linear_search(array, n, search);

    if(position == -1)
    	printf("%d is not present in the array.\n", search);
	else
    	printf("%d is present at location %d.\n", search, position+1);
    return 0;
}

int linear_search(int a[], int n, int find)
{
    int c;
    for(c = 0; c<n; c++)
    {
    	if(a[c] == find)
        return c;
    }
    return -1;
}
				
			

Course Name : “Problem Solving through Programming In C 2022

Question : 3  Write a C program to search a given number from a sorted 1D array and display the position at which it is found using binary search algorithm.
The index location starts from 1.

				
					#include <stdio.h>
int main()
{
   int c, n, search,array[100];
   scanf("%d",&n); 

   for (c = 0; c < n; c++)
    scanf("%d",&array[c]);

   scanf("%d", &search);
   int first, last, middle;
   first = 0;
   last = n - 1;
   middle = (first+last)/2;

   while(first <= last) 
   {
      if(array[middle] < search)
         first = middle + 1;
      else if(array[middle] == search)
      {
         printf("%d found at location %d.\n", search, middle+1);
      	 break;
      }
      else
         last = middle - 1;

      middle = (first + last)/2;
   }
   if(first > last)
   	  printf("Not found! %d isn't present in the list.\n", search);

   return 0;
}

				
			

Course Name : “Problem Solving through Programming In C 2022

Question : 4  Write a C program to reverse an array by swapping the elements and without using any new array.

				
					#include <stdio.h>
int main() {
  int array[100], n, c;
  scanf("%d", &n); // n is number of elements in the array.
  for (c = 0; c < n; c++) 
  {
    scanf("%d", &array[c]);
  }
  int temp, end;
  end = n - 1;
  for(c = 0; c < n/2; c++)
  {
    temp = array[c];
    array[c] = array[end];
    array[end] = temp;
    end--;
  }
  printf("Reversed array elements are:\n");

  for (c = 0; c < n; c++) 
  {
    printf("%d\n", array[c]);
  }
  return 0;
}