CSE 1002 PPS1 (Skill Rack )

CSE 1002 PPS1 new Winter ’16 (Id=2228)
13-Jan-2017 00:00 to  29-Jan-2017 00:00
Total time : 500 mins
Challenges : 5

Question 1 (Second Smallest Number)

Given a set of elements, design an Algorithm and write the subsequent C program to determine the second smallest number in that set.
Input Format
Number of elements in ‘n’
element-1
element-2
element-n
Output Format
Second smallest element in the set

Solution

C CODE
#include< stdio.h >
void main()
{
    int n,i,num,small=999,sec=999;
    scanf("%d",&n);
    for(i=0;i < n;i++)
    {
        scanf("%d",&num);
        if(num < =small)
        {
            sec=small;
            small=num;
        }
        else if(num < =sec)
        sec=num;
    }
    printf("%d",sec);
}
c++ code(updated later)
#include <iostream>
using namespace std;

int main() {
	int n;
	cin>>n;
	int num,min,min2;
	for(int i=0;i<n;i++)
	{
	    cin>>num;
	    if(num<=min)
	    {
	        min2=min;
	        min=num;
	    }
	    else if(num<=min2)
	    min2=num;
	    	}
	cout<<min2;
	return 0;
}

Input

INPUT:

n - number of elements

Output

OUTPUT:

printf("%d",sec);

Processing

for(i=0;i < n;i++)
    {
        scanf("%d",&num);
        if(num < =small)
        {
            sec=small;
            small=num;
        }
        else if(num < =sec)
        sec=num;
    }

Pseudocode

BEGIN

Read n
for(i=0;i < n;i++)
    {
        scanf("%d",&num);
        if(num < =small)
        {
            sec=small;
            small=num;
        }
        else if(num < =sec)
        sec=num;
    }
printf("%d",sec);

END

Question 2 (Recursive Fibonacci)

Given the value of ‘n’, write a recursive routine in C to print the first ‘n’ elements of the Fibonacci series.
Input Format
Value of ‘n’
Output Format
Fibonacci series of ‘n’ terms, each term separated by a space

Solution

#include< stdio.h >
void main()
{
    int i,n,f=0,sum=0,num=1;
    scanf("%d",&n);
    printf("0 1");
    for(i=0;i < n-2;i++)
    {
        sum=f+num;
        f=num;
        num=sum;
        printf(" %d",sum);
    }
}

Input

INPUT:

n - number of terms

Output

OUTPUT:

printf("0 1");
printf(" %d",sum);

Processing

for(i=0;i < n-2;i++)
    {
        sum=f+num;
        f=num;
        num=sum;
    }

Pseudocode

BEGIN

Read n
printf("0 1");
for(i=0;i < n-2;i++)
    {
        sum=f+num;
        f=num;
        num=sum;
        printf(" %d",sum);
    }

END

Question 3 (Cyclic Right shift of Elements)

Given a set of elements stored in an array and a number ‘m’, design an Algorithm and write the subsequent C program to perform cyclic right shift of the array by ‘m’ places. For example, if the elements are 12, 13, 16, 7, 10 and m =2 then the resultant set will be 7, 10, 12, 13, 16.
Input Format
Number of elements in the set: ‘n’
element-1
element-2
element-n
value of ‘m’
Output Format
Elements in the set after right shift by ‘m’ places

Solution

#include< stdio.h >
void main()
{
    int a[20],n,i,m,t,j;
    scanf("%d",&n);
    for(i=0;i < n;i++)
    scanf("%d",&a[i]);
    scanf("%d",&m);
    for(j=0;j < m;j++) 
    { 
        t=a[n-1];  
        for(i=n-1;i > 0;i--)
        a[i]=a[i-1];
        a[0]=t;
    }
    for(i=0;i < n;i++)
    printf("%d\n",a[i]);
}

Input

INPUT:

n - number of terms
for(i=0;i < n;i++)
scanf("%d",&a[i]);
m - number of shifts

Output

OUTPUT:

for(i=0;i < n;i++)
printf("%d\n",a[i]);

Processing

for(j=0;j < m;j++)  
{       t=a[n-1];  
        for(i=n-1;i > 0;i--)
        a[i]=a[i-1];
        a[0]=t;
}

Pseudocode

BEGIN

Read n, array and m
for(j=0;j < m;j++)
{       t=a[n-1];  
        for(i=n-1;i > 0;i--)
        a[i]=a[i-1];
        a[0]=t;
}
for(i=0;i < n;i++)
    printf("%d\n",a[i]);

END

Qestion 4 (Leaders of Elements)

Given a set of ‘n’ elements in an order, identify all the leaders and print them. An element is said to be a leader if all the elements to its right are smaller than it. For example, if the elements are 12, 13, 16, 7, 10 then there is only one leader element 16. If there are no leaders in the given set of elements then print ‘No leaders’.
Input Format
Number of elements in the given set: ‘n’
element-1
element-2
element-n
Output Format
Elements that are leaders. Else, print ‘No leaders’ when there is no leader.

Solution

#include< stdio.h >
void main()
{
    int a[20],f=1,flag=0,i,j,n;
    scanf("%d",&n);
    for(i=0;i < n;i++)
    scanf("%d",&a[i]);
    for(i=0;i < n-1;i++)
    {
        for(j=i+1;j < n;j++) 
        if(a[i] > a[j])
        f=1;
        else
        {
            f=0;
            break;
        }
        if(f==1)
        {
            printf("%d\n",a[i]);
            flag=1;
        }
        f=0;
    }
    if(flag==0)
    printf("No leaders");
}

Input

INPUT:

n - number of elements
for(i=0;i < n;i++)
scanf("%d",&a[i]);

Output

OUTPUT:
if(f==1)
printf("%d\n",a[i]);
if(flag==0)
printf("No leaders");

Processing

for(i=0;i < n-1;i++)
    {
        for(j=i+1;j < n;j++) 
        if(a[i] > a[j])
        f=1;
        else
        {
            f=0;
            break;
        }
        if(f==1)
        flag=1;
        f=0;
    }

Pseudocode

BEGIN

Read n
for(i=0;i < n-1;i++)
    {
        for(j=i+1;j < n;j++) 
        if(a[i] > a[j])
        f=1;
        else
        {
            f=0;
            break;
        }
        if(f==1)
        {
            printf("%d\n",a[i]);
            flag=1;
        }
        f=0;
    }

END

Question 5 (Recursive reverse)

Given a string, write a recursive routine to reverse it. For example, given the string ‘and, the reversal of the string is ‘dna’.
Input Format
A string
Output Format
Reverse of the string

Solution

#include< stdio.h >
#include< string.h >
void main()
{
    char s[20],ch;
    int i,len;
    scanf("%s",s);
    len=strlen(s);
    for(i=0;i < (len/2);i++)
    {
        ch=s[i];
        s[i]=s[len-1-i];
        s[len-1-i]=ch;
    }
    puts(s);
}

Input

INPUT:

s - string

Output

OUTPUT:

puts(s);

Processing

for(i=0;i < (len/2);i++)
    {
        ch=s[i];
        s[i]=s[len-1-i];
        s[len-1-i]=ch;
    }

Pseudocode

BEGIN

Read s
for(i=0;i < (len/2);i++)
    {
        ch=s[i];
        s[i]=s[len-1-i];
        s[len-1-i]=ch;
    }
puts(s);

END
Share on Google Plus

About Unknown

This blog is exclusively for VITIAN'S TO fulfill their needs. Also you can tell our team your need and we will assist you as soon as possible. For any quaries send your emails to "everything4vitians@gmail.com". Thank you
    Blogger Comment

0 comments:

Post a Comment