# NPTEL Problem Solving Through Programming In C WEEK 7 Assignment 2022

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

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 C program to find the sum of all elements of each row of a matrix.
Example:
For a matrix
4 5 6
6 7 3
1 2 3

The output will be
15
16
6

```				```
#include <stdio.h>
int main()
{
int matrix[20][20];
int i,j,r,c;

scanf("%d",&r);
scanf("%d",&c);

for(i=0;i< r;i++)
{
for(j=0;j< c;j++)
{
scanf("%d",&matrix[i][j]);
}
}
int sum;
for(i=0;i< r;i++)
{
sum=0;
for(j=0;j< c;j++)
{
sum += matrix[i][j];
}
printf("%d\n",sum);
}

}
```
```

#### Course Name : “Problem Solving through Programming In C”

Question : 2  Write a C program to find subtraction of two matrices i.e, matrix_A – matrix_B=matrix_C.

If the given martix are:
2 3 5 and 1 5 2 Then the output will be 1 -2 3
4 5 6        2 3 4                                          2 2 2
6 5 7        3 3 4                                          3 2 3

```				```
#include <stdio.h>
int main()
{
int matrix_A[20][20], matrix_B[20][20], matrix_C[20][20];
int i,j,row,col;
scanf("%d",&row);
scanf("%d",&col);

for(i=0; i<row; i++)
{
for(j=0; j<col; j++)
{
scanf("%d", &matrix_A[i][j]);
}
}

for(i=0; i<row; i++)
{
for(j=0; j<col; j++)
{
scanf("%d", &matrix_B[i][j]);
}
}
for(i=0; i<row; i++)
{
for(j=0; j<col; j++)
{

matrix_C[i][j] = matrix_A[i][j] - matrix_B[i][j];
}
}

for(i=0; i<row; i++)
{
for(j=0; j<col; j++)
{
printf("%d ", matrix_C[i][j]);
}
printf("\n");
}
return 0;
}
```
```

#### Course Name : “Problem Solving through Programming In C”

Question : 3  Write a C program to print lower triangle of a square matrix.
For example the output of a given matrix
2 3 4 will be 2 0 0
5 6 7             5 6 0
4 5 6             4 5 6

```				```
#include <stdio.h>
int main()
{
int matrix[20][20];
int i,j,r;

scanf("%d", &r);

for(i=0;i< r;i++)
{
for(j=0;j<r; j++)
{
scanf("%d",&matrix[i][j]);
}
}
for(i=0; i<r; i++)
{
for(j=0; j<r; j++)
{
if(i>=j)
printf("%d ", matrix[i][j]);
else
printf("%d ", 0);
}
printf("\n");
}
return 0;
}

```
```

#### Course Name : “Problem Solving through Programming In C”

Question : 4 Write a C program to print Largest and Smallest Word from a given sentence. If there are two or more words of same length, then the first one is considered. A single letter in the sentence is also consider as a word.

```				```
#include<stdio.h>
#include<string.h>
int main()
{
char str[100]={0},substr[100][100]={0};
scanf("%[^\n]s", str);
int i=0,j=0,k=0,a,minIndex=0,maxIndex=0,max=0,min=0;
char c;
while(str[k]!='\0')  //for splitting sentence into words
{
j=0;
while(str[k]!=' '&&str[k]!='\0' && str[k]!='.')
{
substr[i][j]=str[k];
k++;
j++;
}
substr[i][j]='\0';
i++;
if(str[k]!='\0')
{
k++;
}
}
int len=i;
max=strlen(substr[0]);
min=strlen(substr[0]);

for(i=0;i<len;i++)
{
a=strlen(substr[i]);
if(a>max)
{
max=a;
maxIndex=i;
}
if(a<min)
{
min=a;
minIndex=i;
}
}
printf("Largest Word is: %s\nSmallest word is: %s\n",substr[maxIndex],substr[minIndex]);
return 0;
}

```
```